radtools.services
Class ComposedRADService

java.lang.Object
  extended by rcf.core.framework.component.DynamicComponent.Abstract
      extended by radtools.services.AbstractRADService
          extended by radtools.services.ComposedRADService
All Implemented Interfaces:
RADService, DynamicBound, DynamicComponent, ReflectedBindable<DynamicComponent>, ReflectedComponent, rcf.core.util.accessor.GUIAccessible

@Revision(value="$Revision: 1.6 $",
          date="$Date: 2006/12/16 05:16:31 $",
          tag="$Name:  $")
public class ComposedRADService
extends AbstractRADService

TODO: Javadoc

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

Version:
$Revision: 1.6 $
Author:
Greg Gibeling

Nested Class Summary
protected  class ComposedRADService.State
          TODO: Javadoc
 
Nested classes/interfaces inherited from class radtools.services.AbstractRADService
AbstractRADService.AbstractRADServiceState, AbstractRADService.RefreshTask, AbstractRADService.StateProxy, AbstractRADService.UpdateTask
 
Nested classes/interfaces inherited from interface rcf.core.framework.component.DynamicComponent
DynamicComponent.Abstract, DynamicComponent.Default
 
Nested classes/interfaces inherited from interface rcf.core.framework.component.DynamicBound
DynamicBound.GUIType
 
Field Summary
protected  boolean and
          TODO: Javadoc
protected  boolean composed
          TODO: Javadoc
protected  String name
          TODO: Javadoc
 
Fields inherited from class radtools.services.AbstractRADService
composition, dependency, management, proxy, state, window
 
Fields inherited from class rcf.core.framework.component.DynamicComponent.Abstract
component, operations, properties
 
Constructor Summary
ComposedRADService(String _name, RADService _management, RADService _dependency, RADService _composition, boolean _composed, boolean _and)
          TODO: Javadoc
 
Method Summary
 void check()
          TODO: Javadoc Check on the state of the actual service this object represents, and update the state of this object to match.
 boolean isConcrete()
          Determine if this RADService is a concrete service, or simply an arbitrary abstraction built for management purposes.
 DynamicProperty<RADService.State> radServiceState()
          Returns the dynamic property object for the state of this service.
 String toString()
           
 
Methods inherited from class radtools.services.AbstractRADService
communication, composition, dependency, icon, management, radTools, refresh, update, window
 
Methods inherited from class rcf.core.framework.component.DynamicComponent.Abstract
bind, component, gui, interfaces, isInstance, o, operations, popupMenu, properties
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface rcf.core.framework.component.DynamicComponent
component, operations, properties
 
Methods inherited from interface rcf.core.framework.component.DynamicBound
gui
 
Methods inherited from interface rcf.core.util.accessor.GUIAccessible
popupMenu
 
Methods inherited from interface rcf.core.framework.component.ReflectedComponent
interfaces, isInstance
 
Methods inherited from interface rcf.core.framework.component.ReflectedBindable
bind
 

Field Detail

name

protected final String name
TODO: Javadoc


and

protected final boolean and
TODO: Javadoc


composed

protected final boolean composed
TODO: Javadoc

Constructor Detail

ComposedRADService

public ComposedRADService(String _name,
                          RADService _management,
                          RADService _dependency,
                          RADService _composition,
                          boolean _composed,
                          boolean _and)
TODO: Javadoc

Parameters:
_name -
_management -
_dependency -
_composition -
Method Detail

check

public void check()
Description copied from class: AbstractRADService
TODO: Javadoc Check on the state of the actual service this object represents, and update the state of this object to match. This method should rarely be called directly.

Overrides:
check in class AbstractRADService

isConcrete

public boolean isConcrete()
Description copied from interface: RADService
Determine if this RADService is a concrete service, or simply an arbitrary abstraction built for management purposes.

Returns:
true if this object represents a concrete service. false if this object represents an arbitrary abstraction, and does not correspond to a real service.

radServiceState

public DynamicProperty<RADService.State> radServiceState()
Description copied from interface: RADService
Returns the dynamic property object for the state of this service. The dynamic property can then be used to query the actual state, or to set it. There are few restrictions on state, except that it must be RADService.State.Unknown when RADService.management().parent().get().radServiceState().get() != RADService.State.Running.

Note that the ImmutableSingletonInterface.get() and SingletonInterface#set() methods on the dynamic property refer to the offline state of this service. The RADService.refresh() and RADService.update(boolean, RADService.State) methods can be used to synchronize this state with the state of the actual service. SingletonInterface#set() will schedule a call to RADService.update(boolean, RADService.State) so that the service state will be updated in the future.

Returns:
The dynamic property which represents the offline state of this service.

toString

public String toString()
Overrides:
toString in class Object