diff options
| author | abranson <andrew.branson@cern.ch> | 2011-08-04 00:42:34 +0200 |
|---|---|---|
| committer | abranson <andrew.branson@cern.ch> | 2011-08-04 00:42:34 +0200 |
| commit | 0ec8481c10cd8277d84c7c1a785483a0a739e5a0 (patch) | |
| tree | 5f6e5d9ae75193e67e6f3b3dfa488960c5cde1d5 /source/com/c2kernel/collection/Parent2ChildCollection.java | |
| parent | 036cbdba66f804743c4c838ed598d6972c4b3e17 (diff) | |
More code cleanup:
Refactored Entity Proxy Subscription to handle generics better
Rewrote RemoteMap to use TreeMap instead of the internal array for
order. It now sorts its keys by number if they parse, else as strings.
Removed a no-longer-in-progress outcome form class
Diffstat (limited to 'source/com/c2kernel/collection/Parent2ChildCollection.java')
| -rw-r--r--[-rwxr-xr-x] | source/com/c2kernel/collection/Parent2ChildCollection.java | 61 |
1 files changed, 35 insertions, 26 deletions
diff --git a/source/com/c2kernel/collection/Parent2ChildCollection.java b/source/com/c2kernel/collection/Parent2ChildCollection.java index 0160444..09e9f07 100755..100644 --- a/source/com/c2kernel/collection/Parent2ChildCollection.java +++ b/source/com/c2kernel/collection/Parent2ChildCollection.java @@ -1,5 +1,4 @@ package com.c2kernel.collection;
-import java.util.Iterator;
import com.c2kernel.common.ObjectNotFoundException;
import com.c2kernel.persistency.ClusterStorage;
@@ -9,33 +8,36 @@ import com.c2kernel.utils.CastorHashMap; * @version $Revision: 1.23 $ $Date: 2004/05/14 15:39:39 $
* @author $Author: abranson $
*/
-abstract public class Parent2ChildCollection implements Collection
+abstract public class Parent2ChildCollection<E extends CollectionMember> implements Collection<E>
{
private int mCounter = -1; // Contains next available Member ID
- protected CollectionMemberList mMembers = new CollectionMemberList();
+ protected CollectionMemberList<E> mMembers = new CollectionMemberList<E>();
protected int mID = -1;
protected String mName = ""; // Not checked for uniqueness
protected String mURLInfo = "";
-
- public int getCounter()
+
+ @Override
+ public int getCounter()
{
if (mCounter == -1)
- for (Iterator iter = mMembers.list.iterator(); iter.hasNext();) {
- CollectionMember element = (CollectionMember)iter.next();
+ for (Object name : mMembers.list) {
+ CollectionMember element = (CollectionMember)name;
if (mCounter < element.getID())
mCounter = element.getID();
}
return ++mCounter;
}
- public void setCounter(int count)
+ @Override
+ public void setCounter(int count)
{
mCounter = count;
}
- public int size()
+ @Override
+ public int size()
{
return mMembers.list.size();
}
@@ -50,7 +52,8 @@ abstract public class Parent2ChildCollection implements Collection return mID;
}
- public void setName(String name)
+ @Override
+ public void setName(String name)
{
mName = name;
}
@@ -60,12 +63,14 @@ abstract public class Parent2ChildCollection implements Collection mURLInfo = urlInfo;
}
- public String getName()
+ @Override
+ public String getName()
{
return mName;
}
-
- public String getClusterType()
+
+ @Override
+ public String getClusterType()
{
return ClusterStorage.COLLECTION;
}
@@ -75,45 +80,49 @@ abstract public class Parent2ChildCollection implements Collection return mURLInfo;
}
- public void setMembers(CollectionMemberList newMembers)
+ @Override
+ public void setMembers(CollectionMemberList<E> newMembers)
{
mMembers = newMembers;
}
-
+
public boolean contains(int entityKey) {
- for (Iterator iter = mMembers.list.iterator(); iter.hasNext();) {
- CollectionMember element = (CollectionMember)iter.next();
+ for (Object name : mMembers.list) {
+ CollectionMember element = (CollectionMember)name;
if (element.getEntityKey() == entityKey)
return true;
}
return false;
}
-
+
public boolean isFull()
{
for (int i=0; i<size(); i++)
{
- CollectionMember element = (CollectionMember) mMembers.list.get(i);
+ CollectionMember element = mMembers.list.get(i);
if (element.getEntityKey() == -1)
return false;
}
- return true;
+ return true;
}
-
- public CollectionMember getMember(int memberId) throws ObjectNotFoundException {
- for (Iterator iter = mMembers.list.iterator(); iter.hasNext();) {
- CollectionMember element = (CollectionMember)iter.next();
+
+ @Override
+ public CollectionMember getMember(int memberId) throws ObjectNotFoundException {
+ for (Object name : mMembers.list) {
+ CollectionMember element = (CollectionMember)name;
if (element.getID() == memberId)
return element;
}
throw new ObjectNotFoundException("Member "+memberId+" not found in "+mName, "");
}
- public CollectionMemberList getMembers()
+ @Override
+ public CollectionMemberList<E> getMembers()
{
return mMembers;
}
- public abstract void addMember(int entityKey, CastorHashMap props, String classProps) throws MembershipException;
+ @Override
+ public abstract void addMember(int entityKey, CastorHashMap props, String classProps) throws MembershipException;
}
|
