rcf.core.framework.component
Class DynamicProperty.Default<T>

java.lang.Object
  extended by rcf.core.concurrent.events.AbstractEventSource
      extended by rcf.core.framework.component.AbstractDynamicProperty<T>
          extended by rcf.core.framework.component.DynamicProperty.Default<T>
Type Parameters:
T -
All Implemented Interfaces:
EventSource, rcf.core.concurrent.primitives.Latch<T>, DynamicBound, DynamicProperty<T>, ReflectedBindable<DynamicProperty>, ReflectedProperty, rcf.core.util.accessor.GUIAccessible, ImmutableSingletonInterface<T>, SingletonInterface<T>
Enclosing interface:
DynamicProperty<T>

public static class DynamicProperty.Default<T>
extends AbstractDynamicProperty<T>

TODO: Javadoc

TODO: Unit tests, Code review, Javadoc review, Seal/Finalize TODO: equals, hashCode, toString

Version:
$Revision: 1.8 $
Author:
Greg Gibeling

Nested Class Summary
protected  class DynamicProperty.Default.IdentityChangeEventSink
          TODO: Javadoc
 
Nested classes/interfaces inherited from class rcf.core.framework.component.AbstractDynamicProperty
AbstractDynamicProperty.BooleanUpdate, AbstractDynamicProperty.DoubleUpdate, AbstractDynamicProperty.EnumComboUpdate<T>, AbstractDynamicProperty.EnumRadioUpdate<T>, AbstractDynamicProperty.IntegerUpdate, AbstractDynamicProperty.StringUpdate
 
Nested classes/interfaces inherited from interface rcf.core.framework.component.DynamicProperty
DynamicProperty.Default<T>
 
Nested classes/interfaces inherited from interface rcf.core.framework.component.DynamicBound
DynamicBound.GUIType
 
Nested classes/interfaces inherited from interface rcf.core.concurrent.primitives.Latch
rcf.core.concurrent.primitives.Latch.LatchCondition<T>
 
Field Summary
protected  DynamicProperty.Default.IdentityChangeEventSink eventSink
          TODO: Javadoc
protected  ReflectedProperty.Default property
          TODO: Javadoc
 
Fields inherited from class rcf.core.framework.component.AbstractDynamicProperty
component, dynamicPropertyEventTypes, type
 
Fields inherited from class rcf.core.concurrent.events.AbstractEventSource
syndicate
 
Constructor Summary
DynamicProperty.Default(DynamicComponent _component, ReflectedProperty.Default _property)
          TODO: Javadoc
 
Method Summary
 T get()
          TODO: Javadoc Get the content element of this singleton.
 PropertyMode mode()
          TODO: Javadoc Determine if this property is readable, writeable, neither or both.
 String name()
          TODO: Javadoc The name of the property this object represents.
 T set(T a)
          TODO: Javadoc Set the content element of this singleton.
private  void sink(T prev, T next)
          TODO: Javadoc
 PropertyUse use()
          TODO: Javadoc The use of this property.
 
Methods inherited from class rcf.core.framework.component.AbstractDynamicProperty
bind, component, dynamicPropertyEventTypes, events, expect, getAs, gui, icon, popupMenu, setAs, type
 
Methods inherited from class rcf.core.concurrent.events.AbstractEventSource
createdSyndicate, destroyedSyndicate, getSequenceNumber, incSequenceNumber, isSyndicated, syndicate
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface rcf.core.concurrent.events.EventSource
getSequenceNumber, incSequenceNumber, isSyndicated, syndicate
 

Field Detail

property

protected ReflectedProperty.Default property
TODO: Javadoc


eventSink

protected final DynamicProperty.Default.IdentityChangeEventSink eventSink
TODO: Javadoc

Constructor Detail

DynamicProperty.Default

public DynamicProperty.Default(DynamicComponent _component,
                               ReflectedProperty.Default _property)
TODO: Javadoc

Parameters:
_component -
_property -
Method Detail

get

public T get()
Description copied from interface: ImmutableSingletonInterface
TODO: Javadoc Get the content element of this singleton.

Returns:
The content element of this singleton.

mode

public PropertyMode mode()
Description copied from interface: ReflectedProperty
TODO: Javadoc Determine if this property is readable, writeable, neither or both. Notice that the existence of a StaticGetMethod or StaticSetMethod annotated method may override the value specified here. It is an error to specify that a final field is writeable, and it is a warning to specify that e.g. a field is not readable when it has a StaticGetMethod method or not writeable with a StaticSetMethod method.

Specified by:
mode in interface ReflectedProperty
Overrides:
mode in class AbstractDynamicProperty<T>

name

public String name()
Description copied from interface: ReflectedProperty
TODO: Javadoc The name of the property this object represents.


set

public T set(T a)
Description copied from interface: SingletonInterface
TODO: Javadoc Set the content element of this singleton.

Parameters:
a - The new content element of this singleton.
Returns:
The old content element of this singleton.

sink

private void sink(T prev,
                  T next)
TODO: Javadoc

Parameters:
prev -
next -

use

public PropertyUse use()
Description copied from interface: ReflectedProperty
TODO: Javadoc The use of this property. Must be PropertyType.Option if there are any matching StaticGetMethod or StaticSetMethod annotations.

Specified by:
use in interface ReflectedProperty
Overrides:
use in class AbstractDynamicProperty<T>