diff options
| author | Andrew Branson <andrew.branson@cern.ch> | 2013-10-29 16:21:33 +0100 |
|---|---|---|
| committer | Andrew Branson <andrew.branson@cern.ch> | 2013-10-29 16:21:33 +0100 |
| commit | fe151c8cc4289ff8f908843d1c03f569d7f6eaff (patch) | |
| tree | f27d68c7310bec7e8424b51090c4eb003877d032 | |
| parent | fd8108209688cda9e782a4c3c91be522eb3ed1f4 (diff) | |
CollectionArrayList - intended for Item.initialize
| -rw-r--r-- | src/main/java/com/c2kernel/collection/CollectionArrayList.java | 31 | ||||
| -rw-r--r-- | src/main/resources/mapFiles/CollectionMap.xml | 9 |
2 files changed, 40 insertions, 0 deletions
diff --git a/src/main/java/com/c2kernel/collection/CollectionArrayList.java b/src/main/java/com/c2kernel/collection/CollectionArrayList.java new file mode 100644 index 0000000..586f99f --- /dev/null +++ b/src/main/java/com/c2kernel/collection/CollectionArrayList.java @@ -0,0 +1,31 @@ +package com.c2kernel.collection;
+
+import java.util.ArrayList;
+
+import com.c2kernel.utils.CastorArrayList;
+
+public class CollectionArrayList extends CastorArrayList<Collection<CollectionMember>> {
+ public CollectionArrayList()
+ {
+ super();
+ }
+
+ public CollectionArrayList(ArrayList<Collection<CollectionMember>> aList)
+ {
+ super();
+ for (Collection<CollectionMember> coll : aList) {
+ put(coll);
+ }
+ }
+
+ /** Overwrite */
+ public void put(Collection<CollectionMember> c) {
+ for (Collection<CollectionMember> thisColl : list) {
+ if (thisColl.getName().equals(c.getName())) {
+ list.remove(thisColl);
+ break;
+ }
+ }
+ list.add(c);
+ }
+}
diff --git a/src/main/resources/mapFiles/CollectionMap.xml b/src/main/resources/mapFiles/CollectionMap.xml index e9a7d7a..804022b 100644 --- a/src/main/resources/mapFiles/CollectionMap.xml +++ b/src/main/resources/mapFiles/CollectionMap.xml @@ -112,4 +112,13 @@ <class name="com.c2kernel.collection.AggregationInstance" extends="com.c2kernel.collection.Aggregation">
<map-to xml="AggregationInstance"/>
</class>
+ <class name="com.c2kernel.collection.CollectionArrayList">
+ <map-to xml="CollectionList"/>
+ <field name="list"
+ collection="arraylist"
+ direct="true"
+ type="com.c2kernel.collection.Collection">
+ <bind-xml auto-naming="deriveByClass" node="element"/>
+ </field>
+ </class>
</mapping>
|
