org.deduced
Interface DeducedProperty<E>

Type Parameters:
E - the type of value in the property
All Superinterfaces:
java.lang.Cloneable, Property<E>, java.io.Serializable
All Known Implementing Classes:
AbstractDeducedProperty, FixedDeducedProperty, RuleDeducedProperty

public interface DeducedProperty<E>
extends Property<E>

Interface representing a Property that is controlled by a deduction rule

Author:
Steve McDuff

Method Summary
 int decrementUseCounter()
          decrement Use Counter.
 void delete()
          delete the property
 PropertyCollection<?,?> getParent()
          getParent
 PropertyCollection<?,?> getRule()
          get Rule
 int incrementUseCounter()
          increment Use Counter.
 
Methods inherited from interface org.deduced.Property
copy, getInstance, getValue, getValueType, isValueEqual, setValue
 

Method Detail

getParent

PropertyCollection<?,?> getParent()
getParent

Returns:
the collection that owns the rule

delete

void delete()
delete the property


getRule

PropertyCollection<?,?> getRule()
get Rule

Returns:
the deduction rule model

incrementUseCounter

int incrementUseCounter()
increment Use Counter. Ensure the rule is executed when we are used

Returns:
the current counter value. This value isn't guaranteed to be accurate as some types of properties don't track usage.

decrementUseCounter

int decrementUseCounter()
decrement Use Counter. Potentially disables execution if the rule isn't used.

Returns:
the current counter value. This value isn't guaranteed to be accurate as some types of properties don't track usage.