Package com.tangosol.coherence.rest.util
Class PropertySet<T>
- java.lang.Object
-
- com.tangosol.coherence.rest.util.PropertySet<T>
-
- All Implemented Interfaces:
CanonicallyNamed
,ExternalizableLite
,PortableObject
,Remote.Function<T,Object>
,Remote.ToDoubleFunction<T>
,Remote.ToIntFunction<T>
,Remote.ToLongFunction<T>
,ValueExtractor<T,Object>
,Serializable
,Iterable<PropertySpec>
,Function<T,Object>
,ToDoubleFunction<T>
,ToIntFunction<T>
,ToLongFunction<T>
public class PropertySet<T> extends Object implements Iterable<PropertySpec>, ValueExtractor<T,Object>, ExternalizableLite, PortableObject
Represents a set of named properties and allows the extraction of those properties from a target object.Each extracted property is returned as a
PartialObject
instance, which is an instance of a dynamically generated class containing only properties defined in this PropertySet.- Author:
- as 2010.10.11
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected SortedSet<PropertySpec>
m_setProperties
Property set.
-
Constructor Summary
Constructors Constructor Description PropertySet()
Default constructor.PropertySet(PropertySpec... aProperties)
Construct a PropertySet instance.PropertySet(Set<PropertySpec> setProperties)
Construct a PropertySet instance.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
add(PropertySpec property)
Add a property to this property set.boolean
equals(Object o)
Test equality of this object with another.Object[]
extract(Object[] aSource)
Extract an array of partial objects.Collection<Object>
extract(Collection<? extends T> colSource)
Extract a collection of partial objects.Object
extract(T source)
Extract a partial object from a source object.protected PropertySpec
first()
Return the first property in this PropertySet.static PropertySet
fromString(String sPropertySet)
Create a PropertySet from its textual representation.protected SortedSet<PropertySpec>
getProperties()
Return the internal property set.int
hashCode()
Return hash code for this object.Iterator<PropertySpec>
iterator()
Return an iterator for this property set.void
readExternal(PofReader reader)
Restore the contents of a user type instance by reading its state using the specified PofReader object.void
readExternal(DataInput in)
Restore the contents of this object by loading the object's state from the passed DataInput object.String
toString()
Return string representation of this object.void
writeExternal(PofWriter writer)
Save the contents of a POF user type instance by writing its state using the specified PofWriter object.void
writeExternal(DataOutput out)
Save the contents of this object by storing the object's state into the passed DataOutput object.-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface java.lang.Iterable
forEach, spliterator
-
Methods inherited from interface com.tangosol.util.function.Remote.Function
andThen, compose
-
Methods inherited from interface com.tangosol.util.ValueExtractor
andThen, apply, applyAsDouble, applyAsInt, applyAsLong, compose, fromKey, getCanonicalName, getTarget
-
-
-
-
Field Detail
-
m_setProperties
protected final SortedSet<PropertySpec> m_setProperties
Property set.
-
-
Constructor Detail
-
PropertySet
public PropertySet()
Default constructor.
-
PropertySet
public PropertySet(PropertySpec... aProperties)
Construct a PropertySet instance.- Parameters:
aProperties
- an array of property specifications
-
PropertySet
public PropertySet(Set<PropertySpec> setProperties)
Construct a PropertySet instance.- Parameters:
setProperties
- a set of property specifications
-
-
Method Detail
-
fromString
public static PropertySet fromString(String sPropertySet)
Create a PropertySet from its textual representation.- Parameters:
sPropertySet
- property set descriptor- Returns:
- property set instance
-
add
public void add(PropertySpec property)
Add a property to this property set.- Parameters:
property
- property to add
-
extract
public Collection<Object> extract(Collection<? extends T> colSource)
Extract a collection of partial objects.- Parameters:
colSource
- collection of source objects- Returns:
- a collections of partial objects extracted from a source collection based on this property set
-
extract
public Object[] extract(Object[] aSource)
Extract an array of partial objects.- Parameters:
aSource
- an array of source objects- Returns:
- an array of partial objects extracted from a source array based on this property set
-
extract
public Object extract(T source)
Extract a partial object from a source object.- Specified by:
extract
in interfaceValueExtractor<T,Object>
- Parameters:
source
- the source object- Returns:
- partial object extracted from a source object based on this property set
-
iterator
public Iterator<PropertySpec> iterator()
Return an iterator for this property set.
-
readExternal
public void readExternal(DataInput in) throws IOException
Restore the contents of this object by loading the object's state from the passed DataInput object.- Specified by:
readExternal
in interfaceExternalizableLite
- Parameters:
in
- the DataInput stream to read data from in order to restore the state of this object- Throws:
IOException
- if an I/O exception occursNotActiveException
- if the object is not in its initial state, and therefore cannot be deserialized into
-
writeExternal
public void writeExternal(DataOutput out) throws IOException
Save the contents of this object by storing the object's state into the passed DataOutput object.- Specified by:
writeExternal
in interfaceExternalizableLite
- Parameters:
out
- the DataOutput stream to write the state of this object to- Throws:
IOException
- if an I/O exception occurs
-
readExternal
public void readExternal(PofReader reader) throws IOException
Restore the contents of a user type instance by reading its state using the specified PofReader object.- Specified by:
readExternal
in interfacePortableObject
- Parameters:
reader
- the PofReader from which to read the object's state- Throws:
IOException
- if an I/O error occurs
-
writeExternal
public void writeExternal(PofWriter writer) throws IOException
Save the contents of a POF user type instance by writing its state using the specified PofWriter object.- Specified by:
writeExternal
in interfacePortableObject
- Parameters:
writer
- the PofWriter to which to write the object's state- Throws:
IOException
- if an I/O error occurs
-
equals
public boolean equals(Object o)
Test equality of this object with another.
-
hashCode
public int hashCode()
Return hash code for this object.
-
toString
public String toString()
Return string representation of this object.
-
first
protected PropertySpec first()
Return the first property in this PropertySet.- Returns:
- first property in this PropertySet
-
getProperties
protected SortedSet<PropertySpec> getProperties()
Return the internal property set.- Returns:
- internal property set
-
-