org.apache.ojb.broker.util.collections
Class RemovalAwareSet

java.lang.Object
  extended by java.util.AbstractCollection<E>
      extended by java.util.AbstractSet<E>
          extended by java.util.HashSet
              extended by org.apache.ojb.broker.util.collections.ManageableHashSet
                  extended by org.apache.ojb.broker.util.collections.RemovalAwareSet
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, java.lang.Iterable, java.util.Collection, java.util.Set, ManageableCollection, IRemovalAwareCollection

public class RemovalAwareSet
extends ManageableHashSet
implements IRemovalAwareCollection

This is a set implementation that tracks removal and addition of elements. This tracking allow the PersistenceBroker to delete elements from the database that have been removed from the collection before a PB.store() orperation occurs. This will allow to use the PB api in way pretty close to ODMG persistent collections!

Version:
$Id: RemovalAwareSet.java 365232 2005-12-21 22:36:07Z tomdz $
Author:
Thomas Dudziak
See Also:
Serialized Form

Constructor Summary
RemovalAwareSet()
           
 
Method Summary
 void afterStore(PersistenceBroker broker)
          A callback method to implement 'removal-aware' (track removed objects and delete them by its own) collection implementations.
 void clear()
           
 boolean remove(java.lang.Object o)
           
 void removeAllElements()
           
 void resetDeleted()
           
 
Methods inherited from class org.apache.ojb.broker.util.collections.ManageableHashSet
ojbAdd, ojbAddAll, ojbIterator
 
Methods inherited from class java.util.HashSet
add, clone, contains, isEmpty, iterator, size
 
Methods inherited from class java.util.AbstractSet
equals, hashCode, removeAll
 
Methods inherited from class java.util.AbstractCollection
addAll, containsAll, retainAll, toArray, toArray, toString
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.util.Set
addAll, containsAll, equals, hashCode, removeAll, retainAll, toArray, toArray
 

Constructor Detail

RemovalAwareSet

public RemovalAwareSet()
Method Detail

afterStore

public void afterStore(PersistenceBroker broker)
                throws PersistenceBrokerException
Description copied from interface: ManageableCollection
A callback method to implement 'removal-aware' (track removed objects and delete them by its own) collection implementations.

Specified by:
afterStore in interface ManageableCollection
Overrides:
afterStore in class ManageableHashSet
Parameters:
broker - The persistence broker
Throws:
PersistenceBrokerException
See Also:
ManageableCollection.afterStore(PersistenceBroker broker)

remove

public boolean remove(java.lang.Object o)
Specified by:
remove in interface java.util.Collection
Specified by:
remove in interface java.util.Set
Overrides:
remove in class java.util.HashSet
See Also:
Collection.remove(Object)

removeAllElements

public void removeAllElements()
See Also:
Vector.removeAllElements()

clear

public void clear()
Specified by:
clear in interface java.util.Collection
Specified by:
clear in interface java.util.Set
Overrides:
clear in class java.util.HashSet

resetDeleted

public void resetDeleted()


(C) 2002 - 2006 Apache Software Foundation
All rights reserved. Published under the Apache License 2.0.
http://db.apache.org/ojb
Version: 1.0.4, 2005-12-30