org.deduced
Interface Property<E>

Type Parameters:
E - the type of value stored in the property
All Superinterfaces:
java.lang.Cloneable, java.io.Serializable
All Known Subinterfaces:
DeducedProperty<E>
All Known Implementing Classes:
AbstractDeducedProperty, FixedDeducedProperty, FlyWheelDynamicPropertyCollectionController.ChildCollectionControllerListPropertyImplementation, FlyWheelDynamicPropertyCollectionController.ChildPropertyControllerListPropertyImplementation, PropertyImplementation, RuleDeducedProperty

public interface Property<E>
extends java.lang.Cloneable, java.io.Serializable

Property. This class holds a property instance and value. The instance describes the content of this property.

Author:
Steve McDuff

Method Summary
 void copy(Property<? extends E> otherProperty)
          copy a property
 PropertyCollection<?,?> getInstance()
           
 E getValue()
           
 PropertyCollection<?,?> getValueType()
          fetch the property type of the value held by this property
 boolean isValueEqual(java.lang.Object otherValue)
          test if the specified value is the same that is held by this property.
 void setValue(E value)
           
 

Method Detail

getInstance

PropertyCollection<?,?> getInstance()
Returns:
Returns the property instance description.

getValue

E getValue()
Returns:
Returns the value.

setValue

void setValue(E value)
Parameters:
value - The value to set.

copy

void copy(Property<? extends E> otherProperty)
copy a property

Parameters:
otherProperty - the other property to copy

isValueEqual

boolean isValueEqual(java.lang.Object otherValue)
test if the specified value is the same that is held by this property. If the property is held by reference, the reference is compared. Otherwise the value is used

Parameters:
otherValue - the value to check for equality
Returns:
true if this property contains the same value

getValueType

PropertyCollection<?,?> getValueType()
fetch the property type of the value held by this property

Returns:
the type of the value held in this property