rcf.core.framework.component
Class ReflectedComponent.Default

java.lang.Object
  extended by rcf.core.framework.component.ReflectedComponent.Default
All Implemented Interfaces:
ReflectedBindable<DynamicComponent>, ReflectedComponent
Enclosing interface:
ReflectedComponent

public static class ReflectedComponent.Default
extends Object
implements ReflectedComponent

TODO: Javadoc

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

Version:
$Revision: 1.5 $
Author:
Greg Gibeling

Nested Class Summary
 
Nested classes/interfaces inherited from interface rcf.core.framework.component.ReflectedComponent
ReflectedComponent.Default
 
Field Summary
protected  rcf.core.util.collection.ImmutableCollection<Class> interfaces
          TODO: Javadoc
protected  rcf.core.util.map.HashSetMap<ReflectedOperation.Default,String> operations
          TODO: Javadoc
protected  rcf.core.util.map.HashSetMap<ReflectedProperty.Default,String> properties
          TODO: Javadoc
 
Constructor Summary
ReflectedComponent.Default(rcf.core.util.collection.ImmutableCollection<Class> _interfaces)
          TODO: Javadoc
 
Method Summary
 DynamicComponent bind(Object o)
          TODO: Javadoc Return a dynamic bound interface representing this reflected bindable bound to the specified object, assuming the object is an instance of the appropriate reflected component.
 ReflectedComponent component()
          TODO: Javadoc
 rcf.core.util.collection.ImmutableCollection<Class> interfaces()
          TODO: Javadoc The interfaces supported by the component.
 boolean isInstance(Object o)
          TODO: Javadoc Determine if the specified object is an instance of the necessary component and as a result can be bound.
 rcf.core.util.map.single.ImmutableSMapCollection<? extends ReflectedOperation,String> operations()
          TODO: Javadoc Could return a collection, if the operations supported by this component change over time.
 rcf.core.util.map.single.ImmutableSMapCollection<? extends ReflectedProperty,String> properties()
          TODO: Javadoc
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

interfaces

protected final rcf.core.util.collection.ImmutableCollection<Class> interfaces
TODO: Javadoc


operations

protected final rcf.core.util.map.HashSetMap<ReflectedOperation.Default,String> operations
TODO: Javadoc


properties

protected final rcf.core.util.map.HashSetMap<ReflectedProperty.Default,String> properties
TODO: Javadoc

Constructor Detail

ReflectedComponent.Default

public ReflectedComponent.Default(rcf.core.util.collection.ImmutableCollection<Class> _interfaces)
TODO: Javadoc

Parameters:
_interfaces -
Throws:
IllegalArgumentException - If the _interfaces is null or ImmutableIterable.isEmpty(), or if any of the interfaces aren't actually components.
Method Detail

bind

public DynamicComponent bind(Object o)
Description copied from interface: ReflectedBindable
TODO: Javadoc Return a dynamic bound interface representing this reflected bindable bound to the specified object, assuming the object is an instance of the appropriate reflected component. ReflectedComponent.isInstance(Object), component().isInstance(o) must be true.

Specified by:
bind in interface ReflectedBindable<DynamicComponent>
Returns:

component

public ReflectedComponent component()
Description copied from interface: ReflectedBindable
TODO: Javadoc

Specified by:
component in interface ReflectedBindable<DynamicComponent>
Specified by:
component in interface ReflectedComponent
Returns:
this
See Also:
ReflectedBindable.component()

interfaces

public rcf.core.util.collection.ImmutableCollection<Class> interfaces()
Description copied from interface: ReflectedComponent
TODO: Javadoc The interfaces supported by the component.

Specified by:
interfaces in interface ReflectedComponent
Returns:

isInstance

public boolean isInstance(Object o)
Description copied from interface: ReflectedComponent
TODO: Javadoc Determine if the specified object is an instance of the necessary component and as a result can be bound.

Specified by:
isInstance in interface ReflectedComponent
Returns:

operations

public rcf.core.util.map.single.ImmutableSMapCollection<? extends ReflectedOperation,String> operations()
Description copied from interface: ReflectedComponent
TODO: Javadoc Could return a collection, if the operations supported by this component change over time.

Specified by:
operations in interface ReflectedComponent
Returns:

properties

public rcf.core.util.map.single.ImmutableSMapCollection<? extends ReflectedProperty,String> properties()
Description copied from interface: ReflectedComponent
TODO: Javadoc

Specified by:
properties in interface ReflectedComponent
Returns: