Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.openjpa.util
Class ProxyTreeSet

    java.lang.Object
      java.util.AbstractCollection<E>
          java.util.AbstractSet<E>
              java.util.TreeSet
                  org.apache.openjpa.util.ProxyTreeSet

All Implemented Interfaces:
  Serializable, Cloneable, Iterable, Collection, Set, SortedSet, Proxy, ProxyCollection

    public class ProxyTreeSet

extends TreeSet
implements ProxyCollection

Extension of the `TreeSet` type that dirties the persistent/transactional field it is assigned to on modification. The need to dirty the field on any modification mandates that this class must override all mutator methods of the base type. This may lead to multiple calls to `dirty` for one state change if one mutator method of the base type calls another.

Author:
  Abe White
See Also:
  Serialized Form

Constructor Summary
`ProxyTreeSet()`
`ProxyTreeSet(Class elementType, boolean trackChanges, OpenJPAConfiguration conf)`
`ProxyTreeSet(Class elementType, Comparator compare, boolean trackChanges, OpenJPAConfiguration conf)`

Method Summary
`boolean` | `add(Object value)`
`boolean` | `addAll(Collection values)`
`void` | `clear()`
`Object` | `copy(Object orig)` Return an unproxied copy of the given instance.
`ChangeTracker` | `getChangeTracker()` Return the change tracker for this proxy, or null if none.
`OpenJPAStateManager` | `getOwner()` Return the owning object.
`int` | `getOwnerField()` Return the owning field index.
`Iterator` | `iterator()`
`ProxyCollection` | `newInstance(Class elementType, Comparator compare, boolean trackChanges, OpenJPAConfiguration conf)` This method should return a new proxy of the same concrete type as the implementing class.
`boolean` | `remove(Object o)`
`boolean` | `removeAll(Collection c)`
`boolean` | `retainAll(Collection c)`
`void` | `setOwner(OpenJPAStateManager sm, int field)` Reset the state of the proxy, and set the owning instance of the proxy and the name of the field it is assigned to.
`protected Object` | `writeReplace()`

Methods inherited from class java.util.TreeSet
`clone, comparator, contains, first, headSet, isEmpty, last, size, subSet, tailSet`

Methods inherited from class java.util.AbstractSet
`equals, hashCode`

Methods inherited from class java.util.AbstractCollection
`containsAll, toArray, toArray, toString`

Methods inherited from class java.lang.Object
`finalize, getClass, notify, notifyAll, wait, wait, wait`

Methods inherited from interface java.util.Set
`containsAll, equals, hashCode, toArray, toArray`

Constructor Detail

### ProxyTreeSet

    public ProxyTreeSet()

### ProxyTreeSet

    public ProxyTreeSet(Class elementType,
                        boolean trackChanges,
                        OpenJPAConfiguration conf)

### ProxyTreeSet

    public ProxyTreeSet(Class elementType,
                        Comparator compare,
                        boolean trackChanges,
                        OpenJPAConfiguration conf)

Method Detail

### setOwner

    public void setOwner(OpenJPAStateManager sm,
                         int field)

  Description copied from interface: `Proxy`
  Reset the state of the proxy, and set the owning instance of the proxy and the name of the field it is assigned to. Set to null to indicate that the proxy is no longer managed.

  Specified by:
    `setOwner` in interface `Proxy`

### getOwner

    public OpenJPAStateManager getOwner()

  Description copied from interface: `Proxy`
  Return the owning object.

  Specified by:
    `getOwner` in interface `Proxy`

### getOwnerField

    public int getOwnerField()

  Description copied from interface: `Proxy`
  Return the owning field index.

  Specified by:
    `getOwnerField` in interface `Proxy`

### getChangeTracker

    public ChangeTracker getChangeTracker()

  Description copied from interface: `Proxy`
  Return the change tracker for this proxy, or null if none.

  Specified by:
    `getChangeTracker` in interface `Proxy`

### copy

    public Object copy(Object orig)

  Description copied from interface: `Proxy`
  Return an unproxied copy of the given instance. This method is used by proxy managers to create backup values for use in rollback.

  Specified by:
    `copy` in interface `Proxy`

### newInstance

    public ProxyCollection newInstance(Class elementType,
                                       Comparator compare,
                                       boolean trackChanges,
                                       OpenJPAConfiguration conf)

  Description copied from interface: `ProxyCollection`
  This method should return a new proxy of the same concrete type as the implementing class. Used by the `ProxyManager` factories: one template instance of each type is created for the purpose of producing new instances via this method. Overcomes the performance penalties of reflection.

  Specified by:
    `newInstance` in interface `ProxyCollection`

### add

    public boolean add(Object value)

  Specified by:
    `add` in interface `Collection`
  Specified by:
    `add` in interface `Set`
  Overrides:
    `add` in class `TreeSet`

### addAll

    public boolean addAll(Collection values)

  Specified by:
    `addAll` in interface `Collection`
  Specified by:
    `addAll` in interface `Set`
  Overrides:
    `addAll` in class `TreeSet`

### clear

    public void clear()

  Specified by:
    `clear` in interface `Collection`
  Specified by:
    `clear` in interface `Set`
  Overrides:
    `clear` in class `TreeSet`

### iterator

    public Iterator iterator()

  Specified by:
    `iterator` in interface `Iterable`
  Specified by:
    `iterator` in interface `Collection`
  Specified by:
    `iterator` in interface `Set`
  Overrides:
    `iterator` in class `TreeSet`

### remove

    public boolean remove(Object o)

  Specified by:
    `remove` in interface `Collection`
  Specified by:
    `remove` in interface `Set`
  Overrides:
    `remove` in class `TreeSet`

### removeAll

    public boolean removeAll(Collection c)

  Specified by:
    `removeAll` in interface `Collection`
  Specified by:
    `removeAll` in interface `Set`
  Overrides:
    `removeAll` in class `AbstractSet`

### retainAll

    public boolean retainAll(Collection c)

  Specified by:
    `retainAll` in interface `Collection`
  Specified by:
    `retainAll` in interface `Set`
  Overrides:
    `retainAll` in class `AbstractCollection`

### writeReplace

    protected Object writeReplace()
                           throws ObjectStreamException

  Throws:
    `ObjectStreamException`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2006 Apache Software Foundation. All Rights Reserved.