|
||||||||||
| 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.network.AbstractNetworkTunnel<SP>
@Revision(value="$Revision: 1.8 $",
date="$Date: 2006/12/15 20:37:47 $",
tag="$Name: $")
public abstract class AbstractNetworkTunnel<SP extends SecurityPrincipal>TODO: Javadoc
TODO: Unit tests, Code review, Javadoc review, Seal/Finalize TODO: equals, hashCode, toString
| Nested Class Summary | |
|---|---|
protected class |
AbstractNetworkTunnel.SessionStateProxy
TODO: Javadoc |
protected class |
AbstractNetworkTunnel.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 radtools.security.HostPort |
|---|
HostPort.Default |
| Nested classes/interfaces inherited from interface rcf.core.framework.component.DynamicComponent |
|---|
DynamicComponent.Abstract |
| Nested classes/interfaces inherited from interface rcf.core.framework.component.DynamicBound |
|---|
DynamicBound.GUIType |
| Nested classes/interfaces inherited from interface rcf.core.framework.component.DynamicComponent |
|---|
DynamicComponent.Abstract |
| Nested classes/interfaces inherited from interface rcf.core.framework.component.DynamicBound |
|---|
DynamicBound.GUIType |
| Field Summary | |
|---|---|
protected HostPort |
hostport
TODO: Javadoc |
protected int |
port
TODO: Javadoc |
protected AbstractNetworkTunnel.SessionStateProxy |
proxy
TODO: Javadoc |
protected NetworkSession<SP> |
session
TODO: Javadoc |
| Fields inherited from class radtools.services.AbstractRADService |
|---|
composition, dependency, management, state, window |
| Fields inherited from class rcf.core.framework.component.DynamicComponent.Abstract |
|---|
component, operations, properties |
| Constructor Summary | |
|---|---|
AbstractNetworkTunnel(RADService _management,
NetworkSession<SP> _session,
RADService _composition,
HostPort _hostport)
TODO: Javadoc |
|
| Method Summary | |
|---|---|
protected abstract void |
connect()
Connect to hostport relative to the remote machine using the
session, and set the port field to match the local port
being forwarded. |
protected abstract void |
disconnect()
Disconnect from hostport relative to the remote machine using the
session, and set the port field to 0 to
indicate that this tunnel is disconnected. |
boolean |
equals(Object o)
|
int |
hashCode()
|
NetworkSystem<SP> |
host()
TODO: Javadoc |
String |
hostname()
TODO: Javadoc |
HostPort |
hostport()
TODO: Javadoc |
boolean |
isConcrete()
Determine if this RADService is a concrete service, or simply an arbitrary abstraction built for management purposes. |
int |
port()
TODO: Javadoc |
DynamicProperty<RADService.State> |
radServiceState()
Returns the dynamic property object for the state of this service. |
String |
toString()
|
| 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, finalize, getClass, 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.framework.component.ReflectedComponent |
|---|
interfaces, isInstance |
| Methods inherited from interface rcf.core.framework.component.ReflectedBindable |
|---|
bind |
| 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.framework.component.ReflectedComponent |
|---|
interfaces, isInstance |
| Methods inherited from interface rcf.core.framework.component.ReflectedBindable |
|---|
bind |
| Field Detail |
|---|
protected HostPort hostport
protected int port
protected NetworkSession<SP extends SecurityPrincipal> session
protected AbstractNetworkTunnel.SessionStateProxy proxy
| Constructor Detail |
|---|
public AbstractNetworkTunnel(RADService _management,
NetworkSession<SP> _session,
RADService _composition,
HostPort _hostport)
_management - _session - _composition - _hostport - | Method Detail |
|---|
protected abstract void connect()
throws Exception
hostport relative to the remote machine using the
session, and set the port field to match the local port
being forwarded.
Exceptionprotected abstract void disconnect()
hostport relative to the remote machine using the
session, and set the port field to 0 to
indicate that this tunnel is disconnected. If the connection has already
failed, this method may not throw an exception. The point of this method
is to ensure that this tunnel is no longer connected by whatever means
necessary.
public boolean equals(Object o)
equals in class Objectpublic int hashCode()
hashCode in class Objectpublic NetworkSystem<SP> host()
HostedRADService
host in interface HostedRADServicehost in interface NetworkTunnel<SP extends SecurityPrincipal>dependency().parent().get()public String hostname()
HostPort
hostname in interface HostPortpublic HostPort hostport()
RemoteRADService
hostport in interface RemoteRADServicepublic 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 int port()
HostPort
port in interface HostPortpublic 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 | |||||||||