Class HeartBeatProtocol
- java.lang.Object
- 
- org.eclipse.net4j.util.event.Notifier
- 
- org.eclipse.net4j.util.lifecycle.Lifecycle
- 
- org.eclipse.spi.net4j.Protocol<INFRA_STRUCTURE>
- 
- org.eclipse.net4j.signal.SignalProtocol<java.lang.Object>
- 
- org.eclipse.net4j.signal.heartbeat.HeartBeatProtocol
 
 
 
 
 
- 
- All Implemented Interfaces:
- IBufferHandler,- ILocationAware,- IProtocol<java.lang.Object>,- IProtocol2<java.lang.Object>,- ISignalProtocol<java.lang.Object>,- ISignalProtocol.WithSignalCounters<java.lang.Object>,- org.eclipse.net4j.util.concurrent.IExecutorServiceProvider,- org.eclipse.net4j.util.event.INotifier,- org.eclipse.net4j.util.event.INotifier.INotifier2,- org.eclipse.net4j.util.lifecycle.IDeactivateable,- org.eclipse.net4j.util.lifecycle.ILifecycle,- org.eclipse.net4j.util.lifecycle.ILifecycle.DeferrableActivation,- org.eclipse.net4j.util.security.IUserAware
 
 public class HeartBeatProtocol extends SignalProtocol<java.lang.Object> Asignal protocolthat keeps theconnectorof itschannelopen or provides early deactivation feedback by exchanging periodic heart beats.- Since:
- 2.0
- Author:
- Eike Stepper
 
- 
- 
Nested Class SummaryNested Classes Modifier and Type Class Description static classHeartBeatProtocol.ServerThe server-side implementation of aheart beat protocol.- 
Nested classes/interfaces inherited from class org.eclipse.net4j.signal.SignalProtocolSignalProtocol.InvalidSignalIDException, SignalProtocol.TimeoutChangedEvent
 - 
Nested classes/interfaces inherited from class org.eclipse.spi.net4j.ProtocolProtocol.InfraStructureChangedEvent
 - 
Nested classes/interfaces inherited from interface org.eclipse.net4j.util.lifecycle.ILifecycleorg.eclipse.net4j.util.lifecycle.ILifecycle.DeferrableActivation
 - 
Nested classes/interfaces inherited from interface org.eclipse.net4j.ILocationAwareILocationAware.Location
 - 
Nested classes/interfaces inherited from interface org.eclipse.net4j.util.event.INotifierorg.eclipse.net4j.util.event.INotifier.INotifier2
 - 
Nested classes/interfaces inherited from interface org.eclipse.net4j.signal.ISignalProtocolISignalProtocol.WithSignalCounters<INFRA_STRUCTURE>
 
- 
 - 
Field SummaryFields Modifier and Type Field Description static java.lang.StringTYPE- 
Fields inherited from class org.eclipse.net4j.signal.SignalProtocolCOMPRESSED_STRINGS_ACKNOWLEDGE_TIMEOUT, SIGNAL_ACKNOWLEDGE_COMPRESSED_STRINGS, SIGNAL_MONITOR_CANCELED, SIGNAL_MONITOR_PROGRESS, SIGNAL_REMOTE_EXCEPTION, SIGNAL_SET_TIMEOUT
 - 
Fields inherited from interface org.eclipse.net4j.protocol.IProtocol2UNSPECIFIED_VERSION
 - 
Fields inherited from interface org.eclipse.net4j.signal.ISignalProtocolDEFAULT_TIMEOUT, NO_TIMEOUT
 
- 
 - 
Constructor SummaryConstructors Modifier Constructor Description protectedHeartBeatProtocol(java.lang.String type, IConnector connector, java.util.Timer timer)HeartBeatProtocol(IConnector connector)HeartBeatProtocol(IConnector connector, java.util.Timer timer)HeartBeatProtocol(IConnector connector, org.eclipse.net4j.util.container.IManagedContainer container)
 - 
Method SummaryAll Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected SignalReactorcreateSignalReactor(short signalID)Returns a new signal instance to serve the given signal ID ornullif the signal ID is invalid/unknown for this protocol.protected voiddoDeactivate()static java.util.TimergetDefaultTimer(org.eclipse.net4j.util.container.IManagedContainer container)java.util.TimergetTimer()protected voidhandleTimeout(long untouched)protected voidrequestingStart(org.eclipse.net4j.util.io.ExtendedDataOutputStream out, long rate)voidstart(long rate)Same asstart(rate, 2 * rate).voidstart(long rate, long timeout)- 
Methods inherited from class org.eclipse.net4j.signal.SignalProtocoladdStreamWrapper, close, doBeforeDeactivate, getReceivedSignals, getSentSignals, getStreamWrapper, getStringCompressor, getTimeout, handleBuffer, handleChannelDeactivation, isSendingTimeoutChanges, open, provideSignalReactor, setStreamWrapper, setTimeout, setTimeout, toString, waitForSignals
 - 
Methods inherited from class org.eclipse.spi.net4j.ProtocoldoBeforeActivate, getBufferProvider, getChannel, getExecutorService, getInfraStructure, getLocation, getType, getUserID, getVersion, isClient, isServer, setChannel, setExecutorService, setInfraStructure, setUserID
 - 
Methods inherited from class org.eclipse.net4j.util.lifecycle.Lifecycleactivate, checkActive, checkArg, checkArg, checkInactive, checkNull, checkState, checkState, deactivate, deferredActivate, doActivate, doAfterActivate, dump, getLifecycleState, isActive, isDeferredActivation
 - 
Methods inherited from class org.eclipse.net4j.util.event.NotifieraddListener, addUniqueListener, fireEvent, fireEvent, fireEvent, fireThrowable, firstListenerAdded, getListeners, getNotificationService, hasListener, hasListeners, lastListenerRemoved, listenerAdded, listenerRemoved, removeListener
 - 
Methods inherited from class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 - 
Methods inherited from interface org.eclipse.net4j.ILocationAwaregetLocation, isClient, isServer
 - 
Methods inherited from interface org.eclipse.net4j.util.event.INotifieraddListener, getListeners, hasListeners, removeListener
 - 
Methods inherited from interface org.eclipse.net4j.protocol.IProtocolgetBufferProvider, getChannel, getExecutorService, getInfraStructure, getType, setChannel, setExecutorService, setInfraStructure
 
- 
 
- 
- 
- 
Field Detail- 
TYPEpublic static final java.lang.String TYPE - See Also:
- Constant Field Values
 
 
- 
 - 
Constructor Detail- 
HeartBeatProtocolprotected HeartBeatProtocol(java.lang.String type, IConnector connector, java.util.Timer timer)- Since:
- 4.0
 
 - 
HeartBeatProtocolpublic HeartBeatProtocol(IConnector connector, java.util.Timer timer) 
 - 
HeartBeatProtocolpublic HeartBeatProtocol(IConnector connector, org.eclipse.net4j.util.container.IManagedContainer container) - Since:
- 4.0
 
 - 
HeartBeatProtocolpublic HeartBeatProtocol(IConnector connector) 
 
- 
 - 
Method Detail- 
getTimerpublic java.util.Timer getTimer() 
 - 
startpublic void start(long rate) Same asstart(rate, 2 * rate).- See Also:
- start(long, long)
 
 - 
startpublic void start(long rate, long timeout)
 - 
createSignalReactorprotected SignalReactor createSignalReactor(short signalID) Description copied from class:SignalProtocolReturns a new signal instance to serve the given signal ID ornullif the signal ID is invalid/unknown for this protocol.- Overrides:
- createSignalReactorin class- SignalProtocol<java.lang.Object>
 
 - 
handleTimeoutprotected void handleTimeout(long untouched) 
 - 
doDeactivateprotected void doDeactivate() throws java.lang.Exception- Overrides:
- doDeactivatein class- SignalProtocol<java.lang.Object>
- Throws:
- java.lang.Exception
 
 - 
requestingStartprotected void requestingStart(org.eclipse.net4j.util.io.ExtendedDataOutputStream out, long rate) throws java.io.IOException- Throws:
- java.io.IOException
- Since:
- 4.0
 
 - 
getDefaultTimerpublic static java.util.Timer getDefaultTimer(org.eclipse.net4j.util.container.IManagedContainer container) 
 
- 
 
-