|
||||||||||
| 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
radtools.services.linux.AbstractLinuxHostedRADService
radtools.services.haproxy.HAProxyLinux
@Revision(value="$Revision: 1.10 $",
date="$Date: 2006/12/15 20:37:51 $",
tag="$Name: $")
public class HAProxyLinux
Provides a RADService abstraction of
HAProxy running on an arbitrary linux
system. This object includes a number of properties which represent not only
the state of the service, but the configuration options for HAProxy.
TODO: Unit tests, Code review, Javadoc review, Seal/Finalize
TODO: equals, hashCode, toStrin
| Nested Class Summary | |
|---|---|
class |
HAProxyLinux.ConfigTask
An implementation of TimerTask which is used to schedule updates to
the HAProxy configuration file. |
protected class |
HAProxyLinux.GeneralSink
A general HAProxyLinux.GeneralSink.PoolsTaskEventSink used to detect changes to the
pools property, the servers, which will then
result in the creation of a HAProxyLinux.ConfigTask to update the
configuration. |
static class |
HAProxyLinux.HAProxyPool
Abstraction of an application pool as used by HAProxy. |
static class |
HAProxyLinux.HAProxyServer
Abstraction of an application server for HAProxy. |
protected class |
HAProxyLinux.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 String |
executable
TODO: Javadoc |
protected StrongReference<EventSink<? super rcf.core.util.collection.transaction.CollectionTransaction>> |
generalSink
TODO: Javadoc |
rcf.core.util.map.HashSetMap<HAProxyLinux.HAProxyPool,String> |
pools
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 | |
|---|---|
HAProxyLinux(LinuxSystem _host,
RADService _composition,
String _executable)
TODO: Javadoc |
|
| Method Summary | |
|---|---|
private void |
config()
TODO: Javadoc |
boolean |
generate(OutputStream _out,
String separator)
TODO: Javadoc |
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.linux.AbstractLinuxHostedRADService |
|---|
host |
| Methods inherited from class radtools.services.AbstractRADService |
|---|
check, 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 radtools.services.RADService |
|---|
communication, composition, dependency, management, refresh, update, window |
| 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 |
|---|
icon, 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 StrongReference<EventSink<? super rcf.core.util.collection.transaction.CollectionTransaction>> generalSink
@StaticProperty(value="HAProxy.Pools",
mode=Read)
public final rcf.core.util.map.HashSetMap<HAProxyLinux.HAProxyPool,String> pools
protected final String executable
| Constructor Detail |
|---|
public HAProxyLinux(LinuxSystem _host,
RADService _composition,
String _executable)
_host - _composition - _executable - | Method Detail |
|---|
private void config()
public boolean generate(OutputStream _out,
String separator)
ConfigWriter
generate in interface ConfigWriter_out - The output stream to write the configuration to.separator - The line separator to use. Must be a parameter
since the file may be destined for a machine other
than the one it is being written on.
public boolean isConcrete()
RADService
isConcrete in interface RADServicetrue if this object represents a concrete service.
false if this object represents an arbitrary
abstraction, and does not correspond to a real service.public DynamicProperty<RADService.State> radServiceState()
RADServiceRADService.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.
radServiceState in interface RADServicepublic String toString()
toString in class Object
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||