From 24314dc1699c7e73048fa24e33729f1aa1ec0e86 Mon Sep 17 00:00:00 2001 From: Andrew Branson Date: Fri, 6 Jul 2012 11:00:24 +0200 Subject: Modules serialize with Castor. Just about to remove the parsing. CastorXMLUtility is now a static member of gateway. Domain specific instances can be used by domain applications, but the maps do not interfere with the kernel. --- .../java/com/c2kernel/property/PropertyArrayList.java | 17 +++++++++++++++-- .../java/com/c2kernel/property/PropertyUtility.java | 3 +-- 2 files changed, 16 insertions(+), 4 deletions(-) (limited to 'src/main/java/com/c2kernel/property') diff --git a/src/main/java/com/c2kernel/property/PropertyArrayList.java b/src/main/java/com/c2kernel/property/PropertyArrayList.java index f59b2d5..5401f22 100644 --- a/src/main/java/com/c2kernel/property/PropertyArrayList.java +++ b/src/main/java/com/c2kernel/property/PropertyArrayList.java @@ -22,8 +22,21 @@ public class PropertyArrayList extends CastorArrayList public PropertyArrayList(ArrayList aList) { - super(aList); + super(); + // put all properties in order, so later ones with the same name overwrite earlier ones + for (Property property : aList) { + put(property); + } } - + /** Overwrite */ + public void put(Property p) { + for (Property thisProp : list) { + if (thisProp.getName().equals(p.getName())) { + list.remove(thisProp); + break; + } + } + list.add(p); + } } diff --git a/src/main/java/com/c2kernel/property/PropertyUtility.java b/src/main/java/com/c2kernel/property/PropertyUtility.java index 497e5d3..968ff13 100644 --- a/src/main/java/com/c2kernel/property/PropertyUtility.java +++ b/src/main/java/com/c2kernel/property/PropertyUtility.java @@ -17,7 +17,6 @@ import com.c2kernel.persistency.ClusterStorage; import com.c2kernel.persistency.outcome.Outcome; import com.c2kernel.process.Gateway; import com.c2kernel.utils.CastorHashMap; -import com.c2kernel.utils.CastorXMLUtility; import com.c2kernel.utils.Logger; @@ -60,7 +59,7 @@ public class PropertyUtility try { Outcome outc = (Outcome) Gateway.getStorage().get(entityKey, ClusterStorage.VIEWPOINT+"/PropertyDescription/last/data", null); - return (PropertyDescriptionList)CastorXMLUtility.unmarshall(outc.getData()); + return (PropertyDescriptionList)Gateway.getMarshaller().unmarshall(outc.getData()); } catch (Exception ex) { -- cgit v1.2.3