av
@@ -265,142 +267,95 @@
tmean
totsn
tp120hr
- tp12c1
- tp12c2
- tp12c3
- tp12c4
- tp12c5
- tp12c6
- tp12c7
- tp12c8
+ tp12c1
+ tp12c2
+ tp12c3
+ tp12c4
+ tp12c5
+ tp12c6
+ tp12c7
+ tp12c8
tpmean12
tpsprd12
- tp24c1
- tp24c2
- tp24c3
- tp24c4
- tp24c5
- tp24c6
- tp24c7
- tp24c8
+ tp24c1
+ tp24c2
+ tp24c3
+ tp24c4
+ tp24c5
+ tp24c6
+ tp24c7
+ tp24c8
tpmean24
tpsprd24
- tp3c1
- tp3c2
- tp3c3
- tp3c4
- tp3c5
- tp3c6
- tp3c7
- tp3c8
+ tp3c1
+ tp3c2
+ tp3c3
+ tp3c4
+ tp3c5
+ tp3c6
+ tp3c7
+ tp3c8
tpmean3
tpsprd3
- tp6c1
- tp6c2
- tp6c3
- tp6c4
- tp6c5
- tp6c6
- tp6c7
- tp6c8
+ tp6c1
+ tp6c2
+ tp6c3
+ tp6c4
+ tp6c5
+ tp6c6
+ tp6c7
+ tp6c8
tpmean6
tpsprd6
- tp_ACR
- tp_ACR
- tp_ALR
- tp_ALR
- PSurge4Ft
+ tp_ACR
+ tp_ALR
PSurge4Ft
- PSurge5Ft
PSurge5Ft
- PSurge6Ft
PSurge6Ft
- Surge20Pct
Surge20Pct
- PSurge7Ft
PSurge7Ft
- PSurge8Ft
PSurge8Ft
- PSurge9Ft
PSurge9Ft
- PSurge10Ft
PSurge10Ft
- Surge30Pct
Surge30Pct
- PSurge11Ft
PSurge11Ft
- PSurge12Ft
PSurge12Ft
- PSurge13Ft
PSurge13Ft
- Surge40Pct
Surge40Pct
- PSurge14Ft
PSurge14Ft
- PSurge15Ft
PSurge15Ft
- PSurge16Ft
PSurge16Ft
- Surge50Pct
Surge50Pct
- PSurge17Ft
PSurge17Ft
- PSurge18Ft
PSurge18Ft
- PSurge19Ft
PSurge19Ft
- Surge60Pct
Surge60Pct
- PSurge20Ft
PSurge20Ft
- PSurge2Ft
PSurge2Ft
- PSurge21Ft
PSurge21Ft
- PSurge22Ft
PSurge22Ft
- PSurge23Ft
PSurge23Ft
- Surge70Pct
Surge70Pct
- PSurge24Ft
PSurge24Ft
- PSurge25Ft
PSurge25Ft
- Surge80Pct
Surge80Pct
- Surge90Pct
Surge90Pct
- PSurge3Ft
PSurge3Ft
- SloshSurge
SloshSurge
Surge10Pct
- tp_ecmwf
- tp_FWR
- tp_FWR
- tp_HPC
- tp_HPC
- tp_KRF
- tp_KRF
- tp_MSR
- tp_MSR
- tp_ORN
- tp_ORN
- tp_PTR
- tp_PTR
- tp_RHA
- tp_RHA
- tp_RSA
- tp_RSA
- tp_STR
- tp_STR
- tp_TAR
- tp_TAR
- tp_TIR
- tp_TIR
- tp_TUA
- tp_TUA
+ tp_ecmwf
+ tp_FWR
+ tp_HPC
+ tp_KRF
+ tp_MSR
+ tp_ORN
+ tp_PTR
+ tp_RHA
+ tp_RSA
+ tp_STR
+ tp_TAR
+ tp_TIR
+ tp_TUA
tpw
tsprd
ttot
diff --git a/edexOsgi/com.raytheon.edex.plugin.warning/WarningDecoder.py b/edexOsgi/com.raytheon.edex.plugin.warning/WarningDecoder.py
index ec9e5d4f28..342ce0333b 100644
--- a/edexOsgi/com.raytheon.edex.plugin.warning/WarningDecoder.py
+++ b/edexOsgi/com.raytheon.edex.plugin.warning/WarningDecoder.py
@@ -807,7 +807,7 @@ usage: VTECDecoder -f productfilename -d -a activeTableName
template['pil'] = self._remapPil(template['phen'],
template['sig'], self._productPil)
- template['ugcs'] = ugcs
+ template['ugcZoneList'] = ", ".join(ugcs)
state = ugcstring[0:2]
if REGIONS.has_key(state):
template['region'] = REGIONS[state]
diff --git a/edexOsgi/com.raytheon.uf.common.activetable/src/com/raytheon/uf/common/activetable/ActiveTableRecord.java b/edexOsgi/com.raytheon.uf.common.activetable/src/com/raytheon/uf/common/activetable/ActiveTableRecord.java
index 3328c3d31c..eb68d705d3 100644
--- a/edexOsgi/com.raytheon.uf.common.activetable/src/com/raytheon/uf/common/activetable/ActiveTableRecord.java
+++ b/edexOsgi/com.raytheon.uf.common.activetable/src/com/raytheon/uf/common/activetable/ActiveTableRecord.java
@@ -24,12 +24,12 @@ import java.util.Calendar;
import java.util.List;
import javax.persistence.Column;
-import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Inheritance;
import javax.persistence.InheritanceType;
+import javax.persistence.MappedSuperclass;
import javax.persistence.Transient;
import org.hibernate.annotations.Type;
@@ -51,22 +51,23 @@ import com.vividsolutions.jts.geom.Geometry;
* Date Ticket# Engineer Description
* ------------ ---------- ----------- --------------------------
* Mar 24, 2009 njensen Initial creation
- * Feb 26, 2013 1447 dgilling Implement equals().
- *
+ * Feb 26, 2013 1447 dgilling Implement equals().
+ * May 10, 2013 1951 rjpeter Added own id sequence tagging
*
*
* @author njensen
* @version 1.0
*/
-
-@Entity
+@MappedSuperclass
@Inheritance(strategy = InheritanceType.TABLE_PER_CLASS)
@DynamicSerialize
public abstract class ActiveTableRecord extends PersistableDataObject {
protected static final long serialVersionUID = 1L;
- @GeneratedValue(strategy = GenerationType.AUTO)
+ protected static final String ID_GEN = "idgen";
+
+ @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = ID_GEN)
@Id
protected int id;
@@ -1079,7 +1080,7 @@ public abstract class ActiveTableRecord extends PersistableDataObject {
atr.setWmoid(wr.getWmoid());
atr.setXxxid(wr.getXxxid());
- for (String ugc : wr.getUgcsString()) {
+ for (String ugc : wr.getUgcZones()) {
ActiveTableRecord ugcRecord = (ActiveTableRecord) atr.clone();
ugcRecord.setUgcZone(ugc);
list.add(ugcRecord);
diff --git a/edexOsgi/com.raytheon.uf.common.activetable/src/com/raytheon/uf/common/activetable/OperationalActiveTableRecord.java b/edexOsgi/com.raytheon.uf.common.activetable/src/com/raytheon/uf/common/activetable/OperationalActiveTableRecord.java
index b157bf8c3f..44a7efcff6 100644
--- a/edexOsgi/com.raytheon.uf.common.activetable/src/com/raytheon/uf/common/activetable/OperationalActiveTableRecord.java
+++ b/edexOsgi/com.raytheon.uf.common.activetable/src/com/raytheon/uf/common/activetable/OperationalActiveTableRecord.java
@@ -20,12 +20,15 @@
package com.raytheon.uf.common.activetable;
import javax.persistence.Entity;
+import javax.persistence.SequenceGenerator;
import javax.persistence.Table;
+import org.hibernate.annotations.Index;
+
import com.raytheon.uf.common.serialization.annotations.DynamicSerialize;
/**
- * TODO Add Description
+ * Operational Active Table, separated so that practice and operational data go to separate tables.
*
*
*
@@ -33,7 +36,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerialize;
* Date Ticket# Engineer Description
* ------------ ---------- ----------- --------------------------
* Feb 10, 2010 njensen Initial creation
- *
+ * May 10, 2013 1951 rjpeter Added own id sequence tagging and new index.
*
*
* @author njensen
@@ -41,8 +44,11 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerialize;
*/
@Entity
+@SequenceGenerator(initialValue = 1, name = ActiveTableRecord.ID_GEN, sequenceName = "activetableseq")
@Table(name = "activetable")
@DynamicSerialize
+@org.hibernate.annotations.Table(appliesTo = "activetable", indexes = { @Index(name = "activetable_officeid_phensig_idx", columnNames = {
+ "officeid", "phensig" }) })
public class OperationalActiveTableRecord extends ActiveTableRecord implements
Cloneable {
diff --git a/edexOsgi/com.raytheon.uf.common.activetable/src/com/raytheon/uf/common/activetable/PracticeActiveTableRecord.java b/edexOsgi/com.raytheon.uf.common.activetable/src/com/raytheon/uf/common/activetable/PracticeActiveTableRecord.java
index 67a4792e22..fc419204be 100644
--- a/edexOsgi/com.raytheon.uf.common.activetable/src/com/raytheon/uf/common/activetable/PracticeActiveTableRecord.java
+++ b/edexOsgi/com.raytheon.uf.common.activetable/src/com/raytheon/uf/common/activetable/PracticeActiveTableRecord.java
@@ -20,12 +20,15 @@
package com.raytheon.uf.common.activetable;
import javax.persistence.Entity;
+import javax.persistence.SequenceGenerator;
import javax.persistence.Table;
+import org.hibernate.annotations.Index;
+
import com.raytheon.uf.common.serialization.annotations.DynamicSerialize;
/**
- * TODO Add Description
+ * Practice Active Table, separated so that practice and operational data go to separate tables.
*
*
*
@@ -33,7 +36,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerialize;
* Date Ticket# Engineer Description
* ------------ ---------- ----------- --------------------------
* Feb 10, 2010 njensen Initial creation
- *
+ * May 10, 2013 1951 rjpeter Added own id sequence tagging and new index.
*
*
* @author njensen
@@ -41,8 +44,11 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerialize;
*/
@Entity
+@SequenceGenerator(initialValue = 1, name = ActiveTableRecord.ID_GEN, sequenceName = "practice_activetableseq")
@Table(name = "practice_activetable")
@DynamicSerialize
+@org.hibernate.annotations.Table(appliesTo = "practice_activetable", indexes = { @Index(name = "practice_activetable_officeid_phensig_idx", columnNames = {
+ "officeid", "phensig" }) })
public class PracticeActiveTableRecord extends ActiveTableRecord implements
Cloneable {
diff --git a/edexOsgi/com.raytheon.uf.common.base.feature/feature.xml b/edexOsgi/com.raytheon.uf.common.base.feature/feature.xml
index 90d49c86ea..784aa537bb 100644
--- a/edexOsgi/com.raytheon.uf.common.base.feature/feature.xml
+++ b/edexOsgi/com.raytheon.uf.common.base.feature/feature.xml
@@ -68,8 +68,7 @@
id="com.raytheon.uf.common.dataaccess"
download-size="0"
install-size="0"
- version="0.0.0"
- unpack="false"/>
+ version="0.0.0"/>
= 0) {
- os.write(buffer, 0, numRead);
- }
- bytes = os.toByteArray();
- map = (Map) SerializationUtil
- .transformFromThrift(Map.class, bytes);
- // save them back the new way.
- persistGeometryMap(dataKey, cwa, huc, map);
- } else {
- Map serializableMap = (Map) SerializationUtil
- .transformFromThrift(Map.class, bytes);
- FloatWKBReader reader = new FloatWKBReader(
- new GeometryFactory());
- map = new HashMap(
- serializableMap.size());
- for (Entry entry : serializableMap
- .entrySet()) {
- InputStream in = new ByteArrayInputStream(
- entry.getValue());
- Geometry geom = reader.readGeometry(in);
- map.put(entry.getKey(), geom);
- }
- }
+ map = (Map) SerializationUtil
+ .transformFromThrift(FileUtil.file2bytes(
+ f.getFile(), true));
int sizeGuess = Math.max(
Math.abs(pfafs.size() - map.size()), 10);
pfafsToGenerate = new ArrayList(sizeGuess);
@@ -389,23 +347,13 @@ public class HucLevelGeometriesFactory {
protected synchronized void persistGeometryMap(String dataKey, String cwa,
String huc, Map map) throws Exception {
-
LocalizationContext lc = pathManager.getContext(
LocalizationType.COMMON_STATIC, LocalizationLevel.SITE);
LocalizationFile lf = pathManager.getLocalizationFile(lc,
getGeomPath(dataKey, cwa, huc));
- FloatWKBWriter writer = new FloatWKBWriter();
- ByteArrayOutputStream bos = new ByteArrayOutputStream(1024);
- Map serializableMap = new HashMap();
- for (Entry entry : map.entrySet()) {
- writer.writeGeometry(entry.getValue(), bos);
- serializableMap.put(entry.getKey(), bos.toByteArray());
- bos.reset();
- }
- byte[] bytes = SerializationUtil.transformToThrift(serializableMap);
- FileUtil.bytes2File(bytes, lf.getFile(), false);
+ FileUtil.bytes2File(SerializationUtil.transformToThrift(map),
+ lf.getFile(), true);
lf.save();
-
}
protected synchronized String getGeomPath(String dataKey, String cwa,
diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/request/CreateNewDbRequest.java b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/request/CreateNewDbRequest.java
new file mode 100644
index 0000000000..0967f781da
--- /dev/null
+++ b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/request/CreateNewDbRequest.java
@@ -0,0 +1,63 @@
+/**
+ * This software was developed and / or modified by Raytheon Company,
+ * pursuant to Contract DG133W-05-CQ-1067 with the US Government.
+ *
+ * U.S. EXPORT CONTROLLED TECHNICAL DATA
+ * This software product contains export-restricted data whose
+ * export/transfer/disclosure is restricted by U.S. law. Dissemination
+ * to non-U.S. persons whether in the United States or abroad requires
+ * an export license or other authorization.
+ *
+ * Contractor Name: Raytheon Company
+ * Contractor Address: 6825 Pine Street, Suite 340
+ * Mail Stop B8
+ * Omaha, NE 68106
+ * 402.291.0100
+ *
+ * See the AWIPS II Master Rights File ("Master Rights File.pdf") for
+ * further licensing information.
+ **/
+package com.raytheon.uf.common.dataplugin.gfe.request;
+
+import com.raytheon.uf.common.dataplugin.gfe.db.objects.DatabaseID;
+import com.raytheon.uf.common.serialization.annotations.DynamicSerialize;
+import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement;
+
+/**
+ * Request to create a new GFE database
+ *
+ *
+ *
+ * SOFTWARE HISTORY
+ *
+ * Date Ticket# Engineer Description
+ * ------------ ---------- ----------- --------------------------
+ * May 2, 2013 #1969 randerso Initial creation
+ *
+ *
+ *
+ * @author randerso
+ * @version 1.0
+ */
+
+@DynamicSerialize
+public class CreateNewDbRequest extends AbstractGfeRequest {
+
+ @DynamicSerializeElement
+ private DatabaseID dbId;
+
+ public CreateNewDbRequest() {
+ }
+
+ public CreateNewDbRequest(DatabaseID dbId) {
+ this.dbId = dbId;
+ }
+
+ public DatabaseID getDbId() {
+ return dbId;
+ }
+
+ public void setDbId(DatabaseID dbId) {
+ this.dbId = dbId;
+ }
+}
diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/server/notify/DBInvChangeNotification.java b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/server/notify/DBInvChangeNotification.java
index 8c22392772..2a85b77ecc 100644
--- a/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/server/notify/DBInvChangeNotification.java
+++ b/edexOsgi/com.raytheon.uf.common.dataplugin.gfe/src/com/raytheon/uf/common/dataplugin/gfe/server/notify/DBInvChangeNotification.java
@@ -20,7 +20,7 @@
package com.raytheon.uf.common.dataplugin.gfe.server.notify;
-import java.util.ArrayList;
+import java.util.Collections;
import java.util.List;
import com.raytheon.uf.common.dataplugin.gfe.db.objects.DatabaseID;
@@ -36,6 +36,7 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement;
* Date Ticket# Engineer Description
* ------------ ---------- ----------- --------------------------
* 08/17/10 #6742 bphillip Initial Creation
+ * 05/02/13 #1969 randerso Removed inventory field, general cleanup
*
*
*
@@ -47,20 +48,13 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement;
public class DBInvChangeNotification extends GfeNotification implements
ISerializableObject {
- /** The current database inventory */
-
- @DynamicSerializeElement
- private List inventory = new ArrayList();
-
/** The additions to the database inventory */
-
@DynamicSerializeElement
- private List additions = new ArrayList();
+ private List additions = Collections.emptyList();
/** The deletions to the database inventory */
-
@DynamicSerializeElement
- private List deletions = new ArrayList();
+ private List deletions = Collections.emptyList();
/**
* Creates a new DBInvChangeNotification
@@ -72,21 +66,24 @@ public class DBInvChangeNotification extends GfeNotification implements
/**
* Creates a new DBInvChangeNotification
*
- * @param inventory
- * The current database inventory
* @param additions
- * The DatabaseIDs that have been added to the inventory
+ * The DatabaseIDs that have been added to the inventory. Can be
+ * null if none.
* @param deletions
- * The DatabaseIDs that have been deleted from the inventory
+ * The DatabaseIDs that have been deleted from the inventory Can
+ * be null if none.
*/
- public DBInvChangeNotification(List inventory,
- List additions, List deletions,
- String siteId) {
- // super(siteId);
- this.inventory = inventory;
- this.additions = additions;
- this.deletions = deletions;
- this.siteID = siteId;
+ public DBInvChangeNotification(List additions,
+ List deletions, String siteId) {
+ super(siteId);
+
+ if (additions != null) {
+ this.additions = additions;
+ }
+
+ if (deletions != null) {
+ this.deletions = deletions;
+ }
}
@Override
@@ -96,8 +93,7 @@ public class DBInvChangeNotification extends GfeNotification implements
}
DBInvChangeNotification rhs = (DBInvChangeNotification) obj;
- if (inventory.containsAll(rhs.getInventory())
- && additions.containsAll(rhs.getAdditions())
+ if (additions.containsAll(rhs.getAdditions())
&& deletions.containsAll(rhs.getDeletions())
&& siteID.equals(rhs.getSiteID())) {
return true;
@@ -109,27 +105,11 @@ public class DBInvChangeNotification extends GfeNotification implements
@Override
public String toString() {
StringBuilder str = new StringBuilder();
- str.append("Inventory: ").append(this.inventory).append("\n");
str.append("Additions: ").append(this.additions).append("\n");
str.append("Deletions: ").append(this.deletions).append("\n");
return str.toString();
}
- /**
- * @return the inventory
- */
- public List getInventory() {
- return inventory;
- }
-
- /**
- * @param inventory
- * the inventory to set
- */
- public void setInventory(List inventory) {
- this.inventory = inventory;
- }
-
/**
* @return the additions
*/
diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject
index d8b9b376f6..04a1422726 100644
--- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject
+++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/META-INF/services/com.raytheon.uf.common.serialization.ISerializableObject
@@ -1,4 +1,4 @@
-com.raytheon.uf.common.dataplugin.warning.UGCZone
+com.raytheon.uf.common.dataplugin.warning.AbstractWarningRecord
com.raytheon.uf.common.dataplugin.warning.WarningRecord
com.raytheon.uf.common.dataplugin.warning.PracticeWarningRecord
com.raytheon.uf.common.dataplugin.warning.config.WarngenConfiguration
diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/AbstractWarningRecord.java b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/AbstractWarningRecord.java
index 76ec98bf6c..495421f5fd 100644
--- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/AbstractWarningRecord.java
+++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/AbstractWarningRecord.java
@@ -20,39 +20,29 @@
package com.raytheon.uf.common.dataplugin.warning;
+import java.util.Arrays;
import java.util.Calendar;
-import java.util.HashSet;
-import java.util.List;
+import java.util.LinkedHashSet;
import java.util.Set;
+import java.util.regex.Pattern;
-import javax.persistence.CascadeType;
import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.FetchType;
import javax.persistence.Inheritance;
import javax.persistence.InheritanceType;
-import javax.persistence.OneToMany;
+import javax.persistence.MappedSuperclass;
import javax.persistence.SequenceGenerator;
import javax.persistence.Transient;
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlAttribute;
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
-import org.hibernate.annotations.Index;
import org.hibernate.annotations.Type;
import com.raytheon.uf.common.dataplugin.IDecoderGettable;
import com.raytheon.uf.common.dataplugin.PluginDataObject;
import com.raytheon.uf.common.dataplugin.annotations.DataURI;
-import com.raytheon.uf.common.serialization.adapters.GeometryAdapter;
import com.raytheon.uf.common.serialization.annotations.DynamicSerialize;
import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement;
import com.vividsolutions.jts.geom.Geometry;
/**
- *
* Warning Record
*
*
@@ -61,202 +51,171 @@ import com.vividsolutions.jts.geom.Geometry;
* ------------ ---------- ----------- --------------------------
* 03/12/2007 1003 bwoodle initial creation
* 04/12/2013 1857 bgonzale Added SequenceGenerator annotation.
- *
+ * 05/02/2013 1949 rjpeter Moved ugcZones to be a column inside table.
*
*
* @author bwoodle
* @version 1
*/
-@Entity
+@MappedSuperclass
@SequenceGenerator(name = PluginDataObject.ID_GEN)
@Inheritance(strategy = InheritanceType.TABLE_PER_CLASS)
-@XmlAccessorType(XmlAccessType.NONE)
@DynamicSerialize
public abstract class AbstractWarningRecord extends PluginDataObject {
+ private static final Pattern ugcSplitter = Pattern.compile(", ");
private static final long serialVersionUID = 1L;
@DataURI(position = 1)
@Column(length = 32)
- @XmlAttribute
@DynamicSerializeElement
private String wmoid;
@DataURI(position = 2)
@Column(length = 4)
- @XmlAttribute
@DynamicSerializeElement
private String pil;
@DataURI(position = 3)
@Column(length = 4)
- @XmlAttribute
@DynamicSerializeElement
private String xxxid;
@Column(columnDefinition = "text")
- @XmlAttribute
@DynamicSerializeElement
private String countyheader;
- @XmlElement
+ @Column(name = "ugczones", columnDefinition = "text")
@DynamicSerializeElement
- @OneToMany(cascade = CascadeType.ALL, mappedBy = "parentWarning", fetch = FetchType.EAGER)
- protected Set ugczones = new HashSet();
+ protected String ugcZoneList;
+
+ @Transient
+ protected Set ugcZones;
@Column(columnDefinition = "text")
- @XmlAttribute
@DynamicSerializeElement
private String vtecstr;
@Column(length = 4)
- @XmlAttribute
@DynamicSerializeElement
private String productClass;
@DataURI(position = 4)
@Column(length = 4)
- @XmlAttribute
@DynamicSerializeElement
private String act;
@Column(length = 8)
- @XmlAttribute
@DynamicSerializeElement
- @Index(name = "query_index", columnNames = { "officeid", "phensig" })
private String officeid;
@Column(length = 4)
- @XmlAttribute
@DynamicSerializeElement
private String phen;
@Column(length = 4)
- @XmlAttribute
@DynamicSerializeElement
private String sig;
@DataURI(position = 5)
@Column(length = 4)
- @XmlAttribute
@DynamicSerializeElement
private String etn;
/** vtec start time */
- @XmlAttribute
@DynamicSerializeElement
+ @Column
private Calendar startTime;
@Column
- @XmlAttribute
@DynamicSerializeElement
private Calendar endTime;
@Column
- @XmlAttribute
@DynamicSerializeElement
private Calendar issueTime;
@Column
- @XmlAttribute
@DynamicSerializeElement
private Calendar purgeTime;
@Column(length = 8)
- @XmlAttribute
@DynamicSerializeElement
private boolean ufn;
@Column(name = "geometry", columnDefinition = "geometry")
@Type(type = "com.raytheon.edex.db.objects.hibernate.GeometryType")
- @XmlJavaTypeAdapter(value = GeometryAdapter.class)
@DynamicSerializeElement
private Geometry geometry;
@Transient
- @XmlAttribute
@DynamicSerializeElement
private String forecaster = "";
@Column
- @XmlAttribute
@DynamicSerializeElement
private Integer motdir;
@Column
- @XmlAttribute
@DynamicSerializeElement
private Integer motspd;
@Column(columnDefinition = "text")
- @XmlAttribute
@DynamicSerializeElement
private String loc;
@Column(columnDefinition = "text")
- @XmlAttribute
@DynamicSerializeElement
private String rawmessage;
@DataURI(position = 6)
@Column
- @XmlAttribute
@DynamicSerializeElement
private int seg;
@DataURI(position = 7)
@Column(length = 4)
- @XmlAttribute
@DynamicSerializeElement
private String phensig;
@Transient
- @XmlAttribute
@DynamicSerializeElement
private String region;
@Column(columnDefinition = "text")
- @XmlAttribute
@DynamicSerializeElement
private String overviewText;
/** segment text */
@Column(columnDefinition = "text")
- @XmlAttribute
@DynamicSerializeElement
private String segText;
@Column(length = 8)
- @XmlAttribute
@DynamicSerializeElement
private String locationID;
@Column(length = 2)
- @XmlAttribute
@DynamicSerializeElement
private String floodSeverity;
- @XmlAttribute
+ @Column
@DynamicSerializeElement
private String immediateCause;
@Column(length = 2)
- @XmlAttribute
@DynamicSerializeElement
private String floodRecordStatus;
@Column
- @XmlAttribute
@DynamicSerializeElement
private Calendar floodBegin;
@Column
- @XmlAttribute
@DynamicSerializeElement
private Calendar floodCrest;
@Column
- @XmlAttribute
@DynamicSerializeElement
private Calendar floodEnd;
@@ -280,7 +239,6 @@ public abstract class AbstractWarningRecord extends PluginDataObject {
this.setForecaster(old.getForecaster());
this.setGeometry(old.getGeometry());
this.setGeometry(old.getGeometry());
- this.setIdentifier(old.getIdentifier());
this.setInsertTime(old.getInsertTime());
this.setIssueTime(old.getIssueTime());
this.setLoc(old.getLoc());
@@ -315,7 +273,6 @@ public abstract class AbstractWarningRecord extends PluginDataObject {
*/
public AbstractWarningRecord(String uri) {
super(uri);
- identifier = java.util.UUID.randomUUID().toString();
}
@Override
@@ -553,21 +510,6 @@ public abstract class AbstractWarningRecord extends PluginDataObject {
this.purgeTime = purgeTime;
}
- /**
- * @return the ugczones
- */
- public Set getUgczones() {
- return ugczones;
- }
-
- /**
- * @param ugczones
- * the ugczones to set
- */
- public void setUgczones(Set ugczones) {
- this.ugczones = ugczones;
- }
-
/**
* @return the region
*/
@@ -688,8 +630,6 @@ public abstract class AbstractWarningRecord extends PluginDataObject {
this.floodEnd = floodEnd;
}
- public abstract void setUgcs(List list);
-
/**
* @return the ufn
*/
@@ -735,13 +675,40 @@ public abstract class AbstractWarningRecord extends PluginDataObject {
this.segText = segText;
}
- public String[] getUgcsString() {
- String[] s = new String[ugczones.size()];
- UGCZone[] ugcs = ugczones.toArray(new UGCZone[ugczones.size()]);
- for (int i = 0; i < ugcs.length; i++) {
- s[i] = ugcs[i].getZone();
+ public void setUgcZones(Set list) {
+ ugcZones = new LinkedHashSet(list);
+ StringBuilder builder = new StringBuilder(ugcZones.size() * 8);
+ boolean addComma = false;
+ for (String ugc : list) {
+ if (addComma) {
+ builder.append(", ");
+ } else {
+ addComma = true;
+ }
+ builder.append(ugc);
}
- return s;
+ ugcZoneList = builder.toString();
}
+ public Set getUgcZones() {
+ if (ugcZones == null) {
+ ugcZones = new LinkedHashSet();
+
+ if ((ugcZoneList != null) && (ugcZoneList.length() > 0)) {
+ String[] zones = ugcSplitter.split(ugcZoneList);
+ ugcZones.addAll(Arrays.asList(zones));
+ }
+ }
+
+ return ugcZones;
+ }
+
+ public String getUgcZoneList() {
+ return ugcZoneList;
+ }
+
+ public void setUgcZoneList(String ugcZoneList) {
+ this.ugcZoneList = ugcZoneList;
+ this.ugcZones = null;
+ }
}
diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/PracticeWarningRecord.java b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/PracticeWarningRecord.java
index 63de41ab95..c4ede7e9b4 100644
--- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/PracticeWarningRecord.java
+++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/PracticeWarningRecord.java
@@ -20,8 +20,6 @@
package com.raytheon.uf.common.dataplugin.warning;
-import java.util.List;
-
import javax.persistence.Access;
import javax.persistence.AccessType;
import javax.persistence.Column;
@@ -29,9 +27,6 @@ import javax.persistence.Entity;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;
import javax.persistence.UniqueConstraint;
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlRootElement;
import org.hibernate.annotations.Index;
@@ -46,9 +41,10 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerialize;
* SOFTWARE HISTORY
* Date Ticket# Engineer Description
* ------------ ---------- ----------- --------------------------
- * 10/04/2011 10049 bgonzale initial creation
- * Apr 4, 2013 1846 bkowal Added an index on refTime and forecastTime
- * Apr 12, 2013 1857 bgonzale Added SequenceGenerator annotation.
+ * 10/04/2011 10049 bgonzale initial creation
+ * Apr 4, 2013 1846 bkowal Added an index on refTime and forecastTime
+ * Apr 12, 2013 1857 bgonzale Added SequenceGenerator annotation.
+ * May 02, 2013 1949 rjpeter Removed ugcZones.
* May 07, 2013 1869 bsteffen Remove dataURI column from
* PluginDataObject.
*
@@ -64,14 +60,11 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerialize;
* Both refTime and forecastTime are included in the refTimeIndex since
* forecastTime is unlikely to be used.
*/
-@org.hibernate.annotations.Table(
- appliesTo = "practicewarning",
- indexes = {
- @Index(name = "practicewarning_refTimeIndex", columnNames = { "refTime", "forecastTime" } )
- }
-)
-@XmlRootElement
-@XmlAccessorType(XmlAccessType.NONE)
+@org.hibernate.annotations.Table(appliesTo = "practicewarning", indexes = {
+ @Index(name = "practicewarning_refTimeIndex", columnNames = {
+ "refTime", "forecastTime" }),
+ @Index(name = "practicewarning_office_phensig_index", columnNames = {
+ "officeid", "phensig" }) })
@DynamicSerialize
public class PracticeWarningRecord extends AbstractWarningRecord {
@@ -104,17 +97,7 @@ public class PracticeWarningRecord extends AbstractWarningRecord {
*/
public PracticeWarningRecord(String uri) {
super(uri);
- identifier = java.util.UUID.randomUUID().toString();
}
-
- @Override
- public void setUgcs(List list) {
- ugczones.clear();
- for (String s : list) {
- ugczones.add(new UGCZone(s, this));
- }
- }
-
@Override
@Column
@Access(AccessType.PROPERTY)
diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/UGCZone.java b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/UGCZone.java
deleted file mode 100644
index 632ddbf1bd..0000000000
--- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/UGCZone.java
+++ /dev/null
@@ -1,137 +0,0 @@
-/**
- * This software was developed and / or modified by Raytheon Company,
- * pursuant to Contract DG133W-05-CQ-1067 with the US Government.
- *
- * U.S. EXPORT CONTROLLED TECHNICAL DATA
- * This software product contains export-restricted data whose
- * export/transfer/disclosure is restricted by U.S. law. Dissemination
- * to non-U.S. persons whether in the United States or abroad requires
- * an export license or other authorization.
- *
- * Contractor Name: Raytheon Company
- * Contractor Address: 6825 Pine Street, Suite 340
- * Mail Stop B8
- * Omaha, NE 68106
- * 402.291.0100
- *
- * See the AWIPS II Master Rights File ("Master Rights File.pdf") for
- * further licensing information.
- **/
-package com.raytheon.uf.common.dataplugin.warning;
-
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.GeneratedValue;
-import javax.persistence.Id;
-import javax.persistence.JoinColumn;
-import javax.persistence.ManyToOne;
-import javax.persistence.Table;
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlAttribute;
-
-import com.raytheon.uf.common.dataplugin.persist.PersistableDataObject;
-import com.raytheon.uf.common.serialization.ISerializableObject;
-import com.raytheon.uf.common.serialization.annotations.DynamicSerialize;
-import com.raytheon.uf.common.serialization.annotations.DynamicSerializeElement;
-
-/**
- * UGC Zones are part of Warning Records. This class will be utilized by the
- * Warning Decoder.
- *
- *
- * SOFTWARE HISTORY
- * Date Ticket# Engineer Description
- * ------------ ---------- ----------- --------------------------
- * Jun 12, 2008 bwoodle Initial creation
- *
- *
- *
- * @author bwoodle
- * @version 1.0
- */
-@Entity
-@Table(name = "warning_ugczone")
-@XmlAccessorType(XmlAccessType.NONE)
-@DynamicSerialize
-public class UGCZone extends PersistableDataObject implements
- ISerializableObject {
-
- private static final long serialVersionUID = 1L;
-
- @Id
- @GeneratedValue
- @XmlAttribute
- @DynamicSerializeElement
- private Integer key;
-
- @Column(length = 8)
- @XmlAttribute
- @DynamicSerializeElement
- private String zone;
-
- @ManyToOne
- @JoinColumn(name = "parentWarning", nullable = false)
- private AbstractWarningRecord parentWarning;
-
- public UGCZone() {
- }
-
- public UGCZone(String zone) {
- this.zone = zone;
- }
-
- public UGCZone(String zone, AbstractWarningRecord warning) {
- this.zone = zone;
- parentWarning = warning;
- }
-
- public String toString() {
- return zone;
- }
-
- /**
- * @return the key
- */
- public Integer getKey() {
- return key;
- }
-
- /**
- * @param key
- * the key to set
- */
- public void setKey(Integer key) {
- this.key = key;
- }
-
- /**
- * @return the zone
- */
- public String getZone() {
- return zone;
- }
-
- /**
- * @param zone
- * the zone to set
- */
- public void setZone(String zone) {
- this.zone = zone;
- }
-
- /**
- * @return the parentWarning
- */
- public AbstractWarningRecord getParentWarning() {
- return parentWarning;
- }
-
- /**
- * @param parentWarning
- * the parentWarning to set
- */
- public void setParentWarning(AbstractWarningRecord parentWarning) {
- this.parentWarning = parentWarning;
- }
-}
diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/WarningRecord.java b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/WarningRecord.java
index 517aa49af0..aa8859a38e 100644
--- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/WarningRecord.java
+++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/WarningRecord.java
@@ -21,7 +21,6 @@
package com.raytheon.uf.common.dataplugin.warning;
import java.util.HashMap;
-import java.util.List;
import java.util.Map;
import javax.persistence.Access;
@@ -31,9 +30,6 @@ import javax.persistence.Entity;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;
import javax.persistence.UniqueConstraint;
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlRootElement;
import org.hibernate.annotations.Index;
@@ -49,32 +45,28 @@ import com.raytheon.uf.common.serialization.annotations.DynamicSerialize;
* Date Ticket# Engineer Description
* ------------ ---------- ----------- --------------------------
* 03/12/2007 1003 bwoodle initial creation
- * Apr 4, 2013 1846 bkowal Added an index on refTime and forecastTime
- * Apr 12, 2013 1857 bgonzale Added SequenceGenerator annotation.
+ * Apr 4, 2013 1846 bkowal Added an index on refTime and forecastTime
+ * Apr 12, 2013 1857 bgonzale Added SequenceGenerator annotation.
+ * May 02, 2013 1949 rjpeter Removed ugcZones.
* May 07, 2013 1869 bsteffen Remove dataURI column from
* PluginDataObject.
- *
*
*
* @author bwoodle
* @version 1
*/
@Entity
-@XmlAccessorType(XmlAccessType.NONE)
@SequenceGenerator(initialValue = 1, name = PluginDataObject.ID_GEN, sequenceName = "warningseq")
@Table(name = "warning", uniqueConstraints = { @UniqueConstraint(columnNames = { "dataURI" }) })
/*
* Both refTime and forecastTime are included in the refTimeIndex since
* forecastTime is unlikely to be used.
*/
-@org.hibernate.annotations.Table(
- appliesTo = "warning",
- indexes = {
- @Index(name = "warning_refTimeIndex", columnNames = { "refTime", "forecastTime" } )
- }
-)
-
-@XmlRootElement
+@org.hibernate.annotations.Table(appliesTo = "warning", indexes = {
+ @Index(name = "warning_refTimeIndex", columnNames = { "refTime",
+ "forecastTime" }),
+ @Index(name = "warning_office_phensig_index", columnNames = {
+ "officeid", "phensig" }) })
@DynamicSerialize
public class WarningRecord extends AbstractWarningRecord {
@@ -107,7 +99,7 @@ public class WarningRecord extends AbstractWarningRecord {
private static Map unknownMap = new HashMap();
- private String text;
+ private final String text;
private WarningAction(String text) {
this.text = text;
@@ -168,14 +160,6 @@ public class WarningRecord extends AbstractWarningRecord {
public WarningRecord(String uri) {
super(uri);
}
-
- public void setUgcs(List list) {
- ugczones.clear();
- for (String s : list) {
- ugczones.add(new UGCZone(s, this));
- }
- }
-
@Override
@Column
@Access(AccessType.PROPERTY)
diff --git a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/util/GeometryUtil.java b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/util/GeometryUtil.java
index ba51bde91d..0f7eb99cb2 100644
--- a/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/util/GeometryUtil.java
+++ b/edexOsgi/com.raytheon.uf.common.dataplugin.warning/src/com/raytheon/uf/common/dataplugin/warning/util/GeometryUtil.java
@@ -25,6 +25,7 @@ import com.vividsolutions.jts.geom.prep.PreparedGeometry;
* Date Ticket# Engineer Description
* ------------ ---------- ----------- --------------------------
* Nov 15, 2010 mschenke Initial creation
+ * Apr 28, 2013 1955 jsanchez Added an ignoreUserData flag to intersection method.
*
*
*
@@ -93,7 +94,7 @@ public class GeometryUtil {
GeometryFactory gf = new GeometryFactory();
List intersection = new ArrayList(
g1.getNumGeometries() + g2.getNumGeometries());
- intersection(g1, g2, intersection);
+ intersection(g1, g2, intersection, false);
Geometry rval = gf.createGeometryCollection(intersection
.toArray(new Geometry[intersection.size()]));
rval.setUserData(g2.getUserData());
@@ -101,21 +102,24 @@ public class GeometryUtil {
}
private static void intersection(Geometry g1, Geometry g2,
- List intersections) {
+ List intersections, boolean ignoreUserData) {
if (g1 instanceof GeometryCollection) {
for (int i = 0; i < g1.getNumGeometries(); ++i) {
- intersection(g1.getGeometryN(i), g2, intersections);
+ intersection(g1.getGeometryN(i), g2, intersections,
+ ignoreUserData);
}
} else {
if (g2 instanceof GeometryCollection) {
for (int i = 0; i < g2.getNumGeometries(); ++i) {
- intersection(g1, g2.getGeometryN(i), intersections);
+ intersection(g1, g2.getGeometryN(i), intersections,
+ ignoreUserData);
}
} else {
String g1Name = toString(g1.getUserData());
String g2Name = toString(g2.getUserData());
- if ((g1Name == null || g2Name == null || g2Name.equals(g1Name))) {
+ if (g1Name == null || g2Name == null || g2Name.equals(g1Name)
+ || ignoreUserData) {
Geometry section = g1.intersection(g2);
if (section.isEmpty() == false) {
if (g2.getUserData() != null) {
@@ -138,7 +142,8 @@ public class GeometryUtil {
/**
* Intersection between g1 and prepared geometry pg. Resulting Geometry will
- * have user data from pg
+ * have user data from pg. Using this method assumes that g1 and pg come
+ * from the same area source (i.e County, Zone)
*
* @param g1
* @param g2
@@ -146,10 +151,25 @@ public class GeometryUtil {
* @return the intersection between g1 and g2
*/
public static Geometry intersection(Geometry g1, PreparedGeometry pg) {
+ return intersection(g1, pg, false);
+ }
+
+ /**
+ * Intersection between g1 and prepared geometry pg. Resulting Geometry will
+ * have user data from pg. Setting ignoreUserDate to 'true' will collect
+ * intersecting geometries although g1 and pg are from different sources.
+ *
+ * @param g1
+ * @param pg
+ * @param ignoreUserData
+ * @return
+ */
+ public static Geometry intersection(Geometry g1, PreparedGeometry pg,
+ boolean ignoreUserData) {
GeometryFactory gf = new GeometryFactory();
List intersection = new ArrayList(
g1.getNumGeometries() + 1);
- intersection(g1, pg, intersection);
+ intersection(g1, pg, intersection, ignoreUserData);
Geometry rval = gf.createGeometryCollection(intersection
.toArray(new Geometry[intersection.size()]));
rval.setUserData(pg.getGeometry().getUserData());
@@ -157,19 +177,21 @@ public class GeometryUtil {
}
private static void intersection(Geometry g1, PreparedGeometry pg,
- List intersections) {
+ List intersections, boolean ignoreUserData) {
if (g1 instanceof GeometryCollection) {
for (int i = 0; i < g1.getNumGeometries(); ++i) {
- intersection(g1.getGeometryN(i), pg, intersections);
+ intersection(g1.getGeometryN(i), pg, intersections,
+ ignoreUserData);
}
} else {
String g1Name = toString(g1.getUserData());
String g2Name = toString(pg.getGeometry().getUserData());
if ((g2Name != null && g2Name.equals(g1Name))
- || ((g1Name == null || g2Name == null) && pg.intersects(g1))) {
+ || ((g1Name == null || g2Name == null || ignoreUserData) && pg
+ .intersects(g1))) {
Geometry g2 = pg.getGeometry();
- intersection(g1, g2, intersections);
+ intersection(g1, g2, intersections, ignoreUserData);
}
}
}
diff --git a/edexOsgi/com.raytheon.uf.tools.cli/.pydevproject b/edexOsgi/com.raytheon.uf.tools.cli/.pydevproject
index faf12629d9..f4a659751e 100644
--- a/edexOsgi/com.raytheon.uf.tools.cli/.pydevproject
+++ b/edexOsgi/com.raytheon.uf.tools.cli/.pydevproject
@@ -2,6 +2,6 @@
-python 2.5
+python 2.7
Default
diff --git a/rpms/awips2.qpid/0.18/SPECS/qpid-java.spec.patch0 b/rpms/awips2.qpid/0.18/SPECS/qpid-java.spec.patch0
index b82e9345a0..64df514a2f 100644
--- a/rpms/awips2.qpid/0.18/SPECS/qpid-java.spec.patch0
+++ b/rpms/awips2.qpid/0.18/SPECS/qpid-java.spec.patch0
@@ -1,19 +1,23 @@
diff -crB a/qpid-java.spec b/qpid-java.spec
*** a/qpid-java.spec 2013-05-14 20:24:21.000000000 -0500
---- b/qpid-java.spec 2013-05-15 16:24:20.000000000 -0500
+--- b/qpid-java.spec 2013-05-14 20:23:49.000000000 -0500
***************
-*** 1,4 ****
+*** 1,6 ****
! Name: qpid-java
Version: 0.18
! Release: 2%{?dist}
Summary: Java implementation of Apache Qpid
---- 1,6 ----
+ License: Apache Software License
+ Group: Development/Java
+--- 1,8 ----
! %define _awips2_directory "/awips2/qpid"
!
! Name: awips2-qpid-java
Version: 0.18
-! Release: 3%{?dist}
+! Release: 1%{?dist}
Summary: Java implementation of Apache Qpid
+ License: Apache Software License
+ Group: Development/Java
***************
*** 12,21 ****
--- 14,28 ----
@@ -45,7 +49,7 @@ diff -crB a/qpid-java.spec b/qpid-java.spec
Requires: log4j >= 1.2.12
%description client
---- 42,60 ----
+--- 42,61 ----
%description common
Java implementation of Apache Qpid - common files
@@ -53,6 +57,7 @@ diff -crB a/qpid-java.spec b/qpid-java.spec
+ Summary: Java implementation of Apache Qpid - broker files
+ Group: Development/Java
+ BuildArch: noarch
++ Provides: awips2-base-component
+
+ %description broker
+ Java implementation of Apache Qpid - broker files
@@ -74,7 +79,7 @@ diff -crB a/qpid-java.spec b/qpid-java.spec
%description example
Java implementation of Apache Qpid - example
---- 64,70 ----
+--- 65,71 ----
Summary: Java implementation of Apache Qpid - example
Group: Development/Java
BuildArch: noarch
@@ -84,7 +89,7 @@ diff -crB a/qpid-java.spec b/qpid-java.spec
Java implementation of Apache Qpid - example
***************
*** 58,67 ****
---- 73,97 ----
+--- 74,98 ----
%setup -q -n %{qpid_src_dir}
mkdir -p java/lib/required
tar -xvzf %SOURCE1 -C java/lib/required
@@ -119,7 +124,7 @@ diff -crB a/qpid-java.spec b/qpid-java.spec
# blacklisted jars are either provided by the Requires: or not needed.
BLACKLIST="slf4j qpid-client-tests qpid-all qpid-common-tests"
---- 100,114 ----
+--- 101,115 ----
(
cd %{qpid_src_dir}/java
@@ -184,7 +189,7 @@ diff -crB a/qpid-java.spec b/qpid-java.spec
%changelog
* Thu Sep 6 2012 Irina Boverman - 0.18-2
---- 122,233 ----
+--- 123,234 ----
cd ..
diff --git a/rpms/legal/FOSS_licenses/qpid/gentools/lib/LICENSE~omaha_13.4.1 b/rpms/legal/FOSS_licenses/qpid/gentools/lib/LICENSE~omaha_13.4.1
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/rpms/legal/FOSS_licenses/werkzeug/LICENSE.txt b/rpms/legal/FOSS_licenses/werkzeug/LICENSE.txt
index 2edc73e491..499639ed74 100644
--- a/rpms/legal/FOSS_licenses/werkzeug/LICENSE.txt
+++ b/rpms/legal/FOSS_licenses/werkzeug/LICENSE.txt
@@ -1,29 +1,29 @@
-Copyright (c) 2010 by the Werkzeug Team, see AUTHORS for more details.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are
-met:
-
- * Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above
- copyright notice, this list of conditions and the following
- disclaimer in the documentation and/or other materials provided
- with the distribution.
-
- * The names of the contributors may not be used to endorse or
- promote products derived from this software without specific
- prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+Copyright (c) 2010 by the Werkzeug Team, see AUTHORS for more details.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+
+ * Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+
+ * Redistributions in binary form must reproduce the above
+ copyright notice, this list of conditions and the following
+ disclaimer in the documentation and/or other materials provided
+ with the distribution.
+
+ * The names of the contributors may not be used to endorse or
+ promote products derived from this software without specific
+ prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.