|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectrcf.core.framework.component.DynamicComponent.Abstract
radtools.services.AbstractRADService
@Revision(value="$Revision: 1.15 $",
date="$Date: 2006/12/16 05:18:20 $",
tag="$Name: $")
public abstract class AbstractRADServiceTODO: Javadoc
TODO: Unit tests, Code review, Javadoc review, Seal/Finalize TODO: equals, hashCode, toString
| Nested Class Summary | |
|---|---|
class |
AbstractRADService.AbstractRADServiceState
TODO: Javadoc |
class |
AbstractRADService.RefreshTask
TODO: Javadoc |
protected class |
AbstractRADService.StateProxy
TODO: Javadoc |
class |
AbstractRADService.UpdateTask
TODO: Javadoc |
| Nested classes/interfaces inherited from interface radtools.services.RADService |
|---|
RADService.State |
| 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 rcf.core.util.tree.Node<RADService,?,?,?,?,?> |
composition
TODO: Javadoc |
protected rcf.core.util.tree.Node<RADService,?,?,?,?,?> |
dependency
TODO: Javadoc |
protected rcf.core.util.tree.Node<RADService,?,?,?,?,?> |
management
TODO: Javadoc |
protected StrongReference<EventSink<? super DynamicPropertyEvent>> |
proxy
TODO: Javadoc |
protected AbstractRADService.AbstractRADServiceState |
state
TODO: Javadoc |
protected JFrame |
window
TODO: Javadoc |
| Fields inherited from class rcf.core.framework.component.DynamicComponent.Abstract |
|---|
component, operations, properties |
| Constructor Summary | |
|---|---|
protected |
AbstractRADService(RADService _management,
RADService _dependency,
RADService _composition)
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. |
rcf.core.util.graph.Vertex<RADService,?,?,?,?,?> |
communication()
Get the vertex containing this RADService, in the comminications graph. |
rcf.core.util.tree.Node<RADService,?,?,?,?,?> |
composition()
Get the tree node containing this RADService, whose parent is the RADService which is built out of this one. |
rcf.core.util.tree.Node<RADService,?,?,?,?,?> |
dependency()
Get the tree node containing this RADService, whose parent is the RADService which must be RADService.State.Running in order for this service to be running. |
Icon |
icon()
|
rcf.core.util.tree.Node<RADService,?,?,?,?,?> |
management()
Get the tree node containing this RADService, whose parent is the RADService which must be RADService.State.Running in order to manage this service at all. |
RADTools |
radTools()
TODO: Javadoc |
void |
refresh()
Schedule an update of the state of this object, from the state of the actual service it represents. |
void |
update(boolean schedule,
RADService.State _state)
Update the actual service to match the state held by this object. |
void |
window()
Popup the automatically generated window containing controls for the various DynamicComponent.properties() and DynamicComponent.operations()
supported by not only this interface, but by any other component interfaces
implemented by any specific RADService object. |
| 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, toString, wait, wait, wait |
| Methods inherited from interface radtools.services.RADService |
|---|
isConcrete, radServiceState |
| 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 |
|---|
protected final rcf.core.util.tree.Node<RADService,?,?,?,?,?> composition
protected final rcf.core.util.tree.Node<RADService,?,?,?,?,?> dependency
protected final rcf.core.util.tree.Node<RADService,?,?,?,?,?> management
protected StrongReference<EventSink<? super DynamicPropertyEvent>> proxy
protected AbstractRADService.AbstractRADServiceState state
protected volatile JFrame window
| Constructor Detail |
|---|
protected AbstractRADService(RADService _management,
RADService _dependency,
RADService _composition)
_management - _dependency - | Method Detail |
|---|
public void check()
public rcf.core.util.graph.Vertex<RADService,?,?,?,?,?> communication()
RADServiceTODO: Javadoc
communication in interface RADServicepublic rcf.core.util.tree.Node<RADService,?,?,?,?,?> composition()
RADService
composition in interface RADServiceradtoolspublic rcf.core.util.tree.Node<RADService,?,?,?,?,?> dependency()
RADServiceRADService.State.Running in order for this service to be running.
The dependency tree is meant to capture e.g. that a virtual machine cannot
be running if the physical machine it is hosted by is not running, or that
the physical machine depends on a UPS or power strip.
Dependencies for information should be modelled through the
communication graph, and composition of services
through the composition tree.
dependency in interface RADServiceradtoolspublic Icon icon()
icon in interface rcf.core.util.accessor.GUIAccessibleicon in class DynamicComponent.Abstractpublic final rcf.core.util.tree.Node<RADService,?,?,?,?,?> management()
RADServiceRADService.State.Running in order to manage this service at all.
The management tree is meant to capture e.g. that the management of a machine
depends on an SSH session, which might itself depend on an SSH tunnel.
management in interface RADServiceradtoolspublic RADTools radTools()
public void refresh()
RADServiceAbstractRADService, this will schedule a call to
check() using
RADTools.schedule(rcf.core.concurrent.schedule.TimerTask).
refresh in interface RADService
public void update(boolean schedule,
RADService.State _state)
RADServiceschedule
an update or perform one immediately. This is necessary to avoid running
a comparatively expensive update operation as part of the simple event
handler for GUI events.
update in interface RADServiceschedule - Should the update be scheduled, or performed immediately?_state - The new state to update this RADService to.public void window()
RADServiceDynamicComponent.properties() and DynamicComponent.operations()
supported by not only this interface, but by any other component interfaces
implemented by any specific RADService object.Two calls to this method, will display the same window, rather than generating a new one.
window in interface RADService
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||