public class Collection<E> extends Collection<E> implements BackedSCO
Modifier and Type | Field and Description |
---|---|
protected boolean |
allowNulls |
protected CollectionStore<E> |
backingStore |
protected boolean |
initialising |
protected boolean |
isCacheLoaded |
protected boolean |
useCache |
delegate, ownerMmd, ownerOP
Constructor and Description |
---|
Collection(ObjectProvider op,
AbstractMemberMetaData mmd)
Constructor.
|
Collection(ObjectProvider ownerOP,
AbstractMemberMetaData mmd,
boolean allowNulls,
CollectionStore backingStore)
Constructor used when creating a Collection for "Map.values" with specified backing store.
|
Modifier and Type | Method and Description |
---|---|
boolean |
add(E element)
Method to add an element to the Collection.
|
boolean |
addAll(Collection c)
Method to add a collection of elements.
|
void |
clear()
Method to clear the Collection.
|
Object |
clone()
Creates and returns a copy of this object.
|
boolean |
contains(Object element)
Accessor for whether an element is contained in the Collection.
|
boolean |
containsAll(Collection c)
Accessor for whether a collection of elements are contained here.
|
boolean |
equals(Object o)
Equality operator.
|
Store |
getBackingStore() |
Collection |
getValue()
Accessor for the unwrapped value that we are wrapping.
|
int |
hashCode()
Hashcode operator.
|
void |
initialise()
Method to initialise the SCO for use.
|
void |
initialise(Collection c)
Method to initialise the SCO from an existing value.
|
void |
initialise(Collection<E> newValue,
Object oldValue)
Method to initialise the SCO for use, where replacing an old value with a new value such as when calling a setter field
passing in a new value.
|
boolean |
isEmpty()
Accessor for whether the Collection is empty.
|
boolean |
isLoaded()
Method to return if the SCO has its contents loaded.
|
Iterator<E> |
iterator()
Accessor for an iterator for the Collection.
|
void |
load()
Method to effect the load of the data in the SCO.
|
protected void |
loadFromStore()
Method to load all elements from the "backing store" where appropriate.
|
java.util.stream.Stream |
parallelStream() |
boolean |
remove(Object element)
Method to remove an element from the Collection.
|
boolean |
remove(Object element,
boolean allowCascadeDelete)
Method to remove an element from the collection, and observe the flag for whether to allow cascade delete.
|
boolean |
removeAll(Collection elements)
Method to remove a Collection of elements.
|
boolean |
retainAll(Collection c)
Method to retain a Collection of elements (and remove all others).
|
int |
size()
Accessor for the size of the Collection.
|
Spliterator |
spliterator() |
java.util.stream.Stream |
stream() |
Object[] |
toArray()
Method to return the Collection as an array.
|
Object[] |
toArray(Object[] a)
Method to return the Collection as an array.
|
String |
toString()
Method to return the Collection as a String.
|
void |
unsetOwner()
Method to unset the owner state manager and backing store information.
|
void |
updateEmbeddedElement(E element,
int fieldNumber,
Object value,
boolean makeDirty)
Method to update an embedded element in this collection.
|
protected Object |
writeReplace()
The writeReplace method is called when ObjectOutputStream is preparing
to write the object to the stream.
|
attachCopy, detachCopy, forEach, getFieldName, getOwner, makeDirty, removeIf, setValue
protected transient CollectionStore<E> backingStore
protected transient boolean allowNulls
protected transient boolean useCache
protected transient boolean isCacheLoaded
protected transient boolean initialising
public Collection(ObjectProvider op, AbstractMemberMetaData mmd)
op
- The ObjectProvider for this collection.mmd
- Metadata for the memberpublic Collection(ObjectProvider ownerOP, AbstractMemberMetaData mmd, boolean allowNulls, CollectionStore backingStore)
ownerOP
- ObjectProvider for the owning objectmmd
- Metadata for the memberallowNulls
- Whether nulls are allowedbackingStore
- The backing storepublic void initialise(Collection<E> newValue, Object oldValue)
SCO
initialise
in interface SCO<Collection<E>>
initialise
in class Collection<E>
newValue
- New value (to wrap)oldValue
- Old value (to use in deciding what needs deleting etc)public void initialise(Collection c)
initialise
in interface SCO<Collection<E>>
initialise
in class Collection<E>
c
- The object to set frompublic void initialise()
initialise
in interface SCO<Collection<E>>
initialise
in class Collection<E>
public Collection getValue()
getValue
in interface SCO<Collection<E>>
getValue
in class Collection<E>
public void load()
load
in interface SCOContainer<Collection<E>>
load
in class Collection<E>
public boolean isLoaded()
isLoaded
in interface SCOContainer<Collection<E>>
isLoaded
in class Collection<E>
protected void loadFromStore()
public Store getBackingStore()
getBackingStore
in interface BackedSCO
public void updateEmbeddedElement(E element, int fieldNumber, Object value, boolean makeDirty)
updateEmbeddedElement
in interface SCOCollection<Collection<E>,E>
updateEmbeddedElement
in class Collection<E>
element
- The elementfieldNumber
- Number of field in the elementvalue
- New value for this fieldmakeDirty
- Whether to make the SCO field dirty.public void unsetOwner()
unsetOwner
in interface SCO<Collection<E>>
unsetOwner
in class Collection<E>
public Object clone()
Mutable second-class Objects are required to provide a public clone method in order to allow for copying persistable objects. In contrast to Object.clone(), this method must not throw a CloneNotSupportedException.
clone
in interface SCO<Collection<E>>
clone
in class Collection<E>
public boolean contains(Object element)
contains
in interface Collection<E>
contains
in class Collection<E>
element
- The elementpublic boolean containsAll(Collection c)
containsAll
in interface Collection<E>
containsAll
in class Collection<E>
c
- The collection of elements.public boolean equals(Object o)
equals
in interface Collection<E>
equals
in class Collection<E>
o
- The object to compare against.public int hashCode()
hashCode
in interface Collection<E>
hashCode
in class Collection<E>
public boolean isEmpty()
isEmpty
in interface Collection<E>
isEmpty
in class Collection<E>
public Iterator<E> iterator()
iterator
in interface Iterable<E>
iterator
in interface Collection<E>
iterator
in class Collection<E>
public int size()
size
in interface Collection<E>
size
in class Collection<E>
public Object[] toArray()
toArray
in interface Collection<E>
toArray
in class Collection<E>
public Object[] toArray(Object[] a)
toArray
in interface Collection<E>
toArray
in class Collection<E>
a
- The array to write the results topublic String toString()
toString
in class AbstractCollection<E>
public boolean add(E element)
add
in interface Collection<E>
add
in class Collection<E>
element
- The element to addpublic boolean addAll(Collection c)
addAll
in interface Collection<E>
addAll
in class Collection<E>
c
- The collection of elements to add.public void clear()
clear
in interface Collection<E>
clear
in class Collection<E>
public boolean remove(Object element)
remove
in interface Collection<E>
remove
in class Collection<E>
element
- The Element to removepublic boolean remove(Object element, boolean allowCascadeDelete)
remove
in interface SCOCollection<Collection<E>,E>
remove
in class Collection<E>
element
- The elementallowCascadeDelete
- Whether to allow cascade deletepublic boolean removeAll(Collection elements)
removeAll
in interface Collection<E>
removeAll
in class Collection<E>
elements
- The collection to removepublic boolean retainAll(Collection c)
retainAll
in interface Collection<E>
retainAll
in class Collection<E>
c
- The collection to retainprotected Object writeReplace() throws ObjectStreamException
writeReplace
in class Collection<E>
ObjectStreamException
- if an error occurspublic Spliterator spliterator()
spliterator
in interface Iterable<E>
spliterator
in interface Collection<E>
spliterator
in class Collection<E>
public java.util.stream.Stream stream()
stream
in interface Collection<E>
stream
in class Collection<E>
public java.util.stream.Stream parallelStream()
parallelStream
in interface Collection<E>
parallelStream
in class Collection<E>
Copyright © 2018. All rights reserved.