|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--org.bsf.smartValueObject.container.AbstractSmartContainer
Skeleton implementation of a versionable container. All other container should extend this to avoid code duplication.
SmartContainer
,
Serialized FormField Summary | |
private int |
created
Number of created objects. |
private int |
deleted
Number of deleted objects. |
private org.bsf.smartValueObject.Versionable |
version
The version instance for this container. |
Constructor Summary | |
AbstractSmartContainer(org.bsf.smartValueObject.Versionable v)
Initialize the container with a version. |
Method Summary | |
boolean |
add(java.lang.Object o)
Implementation for Collection interface. |
protected boolean |
addObject(java.lang.Object o)
Adds object w/ versioning. |
protected java.lang.Object |
addObject(java.lang.Object key,
java.lang.Object o)
Add object via key, w/ versioning. |
protected abstract boolean |
addToContainer(java.lang.Object o)
Add object to container. |
protected abstract java.lang.Object |
addToContainer(java.lang.Object key,
java.lang.Object o)
Adds object to container with key. |
void |
clear()
Implementation for Collection/Map/... interface. |
protected abstract void |
containerClear()
Deletes all elements from the container. |
protected abstract boolean |
containerContains(java.lang.Object o)
Verifies if the container has the specified object. |
protected abstract boolean |
containerContainsKey(java.lang.Object key)
Verifies if the container has the specified key. |
protected abstract java.util.Iterator |
containerIterator()
Gets the standard iterator for this container. |
protected abstract int |
containerSize()
The 'raw' size of the container. |
boolean |
contains(java.lang.Object o)
Implementation for Collection interface. |
boolean |
containsKey(java.lang.Object key)
Implementation for Map interface. |
protected boolean |
containsObject(java.lang.Object o)
Checks if container has specified object, respects versioning. |
boolean |
containsValue(java.lang.Object o)
Implementation for Map interface. |
void |
create()
Mark object as created. |
void |
delete()
Mark object for deletion. |
java.lang.Object |
get(java.lang.Object key)
Implementation for Map interface. |
abstract java.lang.Object |
getContainer()
Gets the backing container containing all elements. |
int |
getCreated()
Number of elements which have been created. |
int |
getDeleted()
Number of elements which have been deleted. |
protected abstract java.lang.Object |
getFromContainer(java.lang.Object key)
Gets object from container. |
java.util.Iterator |
getIterator()
Gets the backing iterator for all elements. |
long |
getVersionId()
Gets the version number. |
boolean |
isCreated()
Has object been newly created ? |
boolean |
isDeleted()
Has object been deleted ? |
boolean |
isDirty()
Is object dirty ? |
boolean |
isEmpty()
Implementaion for Collection/Map/... interface. |
java.util.Iterator |
iterator()
Implementation for Collection interface. |
void |
markClean()
Resets flags. |
java.lang.Object |
put(java.lang.Object key,
java.lang.Object value)
Implementation for Map interface. |
protected abstract boolean |
removeFromContainer(java.lang.Object o)
Removes object from container. |
protected abstract java.lang.Object |
removeKeyFromContainer(java.lang.Object key)
Removes key from container. |
protected boolean |
removeObject(java.lang.Object o)
Removes object while respecting versioning. |
protected java.lang.Object |
removeObjectByKey(java.lang.Object key)
Removes object by key, w/ versioning. |
void |
setVersionId(long id)
Sets the version number |
int |
size()
Number of elements (not counting deleted ones). |
java.lang.Object[] |
toArray()
Implementation for Collection/... interface. |
java.lang.Object[] |
toArray(java.lang.Object[] a)
Implementation for Collection/... interface. |
protected abstract java.lang.Object[] |
toObjectArray()
Retrieves objects as an array. |
void |
touch()
Touches the object. |
void |
touch(java.lang.String s)
Touches the object, detailling which field has been accessed. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
private org.bsf.smartValueObject.Versionable version
private int created
private int deleted
Constructor Detail |
public AbstractSmartContainer(org.bsf.smartValueObject.Versionable v)
v
- the version object to use.Method Detail |
protected abstract boolean addToContainer(java.lang.Object o)
o
- the object to be added.
protected abstract java.lang.Object addToContainer(java.lang.Object key, java.lang.Object o)
key
- the key to use.o
- the object to be added.
java.lang.UnsupportedOperationException
- if the method is not supported.protected abstract java.lang.Object getFromContainer(java.lang.Object key)
key
- the key of the object.
java.lang.UnsupportedOperationException
- if the method is not supported.protected abstract boolean removeFromContainer(java.lang.Object o)
o
- the object to be removed.
protected abstract java.lang.Object removeKeyFromContainer(java.lang.Object key)
key
- the key to be removed.
java.lang.UnsupportedOperationException
- if the method is not supported.protected abstract boolean containerContains(java.lang.Object o)
o
-
protected abstract boolean containerContainsKey(java.lang.Object key)
key
-
protected abstract int containerSize()
protected abstract java.util.Iterator containerIterator()
protected abstract void containerClear()
protected abstract java.lang.Object[] toObjectArray()
java.lang.UnsupportedOperationException
- if the method is not supported.protected boolean removeObject(java.lang.Object o)
o
- the object to be removed.
protected java.lang.Object removeObjectByKey(java.lang.Object key)
key
-
protected boolean addObject(java.lang.Object o)
o
-
protected java.lang.Object addObject(java.lang.Object key, java.lang.Object o)
key
- o
-
protected boolean containsObject(java.lang.Object o)
o
-
public boolean add(java.lang.Object o)
o
-
Collection.add(java.lang.Object)
public boolean contains(java.lang.Object o)
o
-
Collection.contains(java.lang.Object)
public boolean containsValue(java.lang.Object o)
o
-
Map.containsValue(java.lang.Object)
public boolean containsKey(java.lang.Object key)
key
-
Map.containsValue(java.lang.Object)
public java.util.Iterator iterator()
Collection.iterator()
public void clear()
Collection.clear()
,
Map.clear()
public boolean isEmpty()
Collection.isEmpty()
,
Map.isEmpty()
public java.lang.Object put(java.lang.Object key, java.lang.Object value)
key
- value
-
Map.put(java.lang.Object, java.lang.Object)
public java.lang.Object get(java.lang.Object key)
key
-
Map.get(java.lang.Object)
public java.lang.Object[] toArray()
Collection.toArray()
public java.lang.Object[] toArray(java.lang.Object[] a)
Collection.toArray()
public int getCreated()
SmartContainer
getCreated
in interface SmartContainer
public int getDeleted()
SmartContainer
getDeleted
in interface SmartContainer
public java.util.Iterator getIterator()
SmartContainer
getIterator
in interface SmartContainer
public int size()
SmartContainer
size
in interface SmartContainer
public abstract java.lang.Object getContainer()
SmartContainer
getContainer
in interface SmartContainer
public void touch()
Versionable
touch
in interface Versionable
public void touch(java.lang.String s)
Versionable
touch
in interface Versionable
s
- which was touchedpublic boolean isDirty()
Versionable
isDirty
in interface Versionable
public boolean isCreated()
Versionable
isCreated
in interface Versionable
public boolean isDeleted()
Versionable
isDeleted
in interface Versionable
public void markClean()
Versionable
markClean
in interface Versionable
public long getVersionId()
Versionable
getVersionId
in interface Versionable
public void setVersionId(long id)
Versionable
setVersionId
in interface Versionable
public void delete()
Versionable
delete
in interface Versionable
public void create()
Versionable
create
in interface Versionable
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |