Package org.eclipse.net4j.signal

## Interface ISignalProtocol<INFRA_STRUCTURE>

- All Superinterfaces:
    `IBufferHandler`, `ILocationAware`, `org.eclipse.net4j.util.event.INotifier`, `IProtocol<INFRA_STRUCTURE>`, `org.eclipse.net4j.util.security.IUserAware`
  All Known Implementing Classes:
    `AuthenticatingSignalProtocol`, `HeartBeatProtocol`, `HeartBeatProtocol.Server`, `SignalProtocol`

      public interface ISignalProtocol<INFRA_STRUCTURE>
      extends IProtocol<INFRA_STRUCTURE>, org.eclipse.net4j.util.event.INotifier

  A `protocol` that consists of a number of stream-based `signals`.
  Since:
    2.0
  Author:
    Eike Stepper

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface org.eclipse.net4j.ILocationAware

      `ILocationAware.Location`

    - ### Nested classes/interfaces inherited from interface org.eclipse.net4j.util.event.INotifier

      `org.eclipse.net4j.util.event.INotifier.INotifier2`

  - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static long` | `DEFAULT_TIMEOUT` |
    `static long` | `NO_TIMEOUT` |

  - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `addStreamWrapper​(org.eclipse.net4j.util.io.IStreamWrapper streamWrapper)` |
    `void` | `close()` |
    `org.eclipse.net4j.util.io.IStreamWrapper` | `getStreamWrapper()` |
    `long` | `getTimeout()` |
    `IChannel` | `open​(IConnector connector)` |
    `void` | `setStreamWrapper​(org.eclipse.net4j.util.io.IStreamWrapper streamWrapper)` |
    `void` | `setTimeout​(long timeout)` |

    - ### Methods inherited from interface org.eclipse.net4j.buffer.IBufferHandler

      `handleBuffer`

    - ### Methods inherited from interface org.eclipse.net4j.ILocationAware

      `getLocation, isClient, isServer`

    - ### Methods inherited from interface org.eclipse.net4j.util.event.INotifier

      `addListener, getListeners, hasListeners, removeListener`

    - ### Methods inherited from interface org.eclipse.net4j.protocol.IProtocol

      `getBufferProvider, getChannel, getExecutorService, getInfraStructure, getType, setChannel, setExecutorService, setInfraStructure`

    - ### Methods inherited from interface org.eclipse.net4j.util.security.IUserAware

      `getUserID`

- - ### Field Detail

    - #### NO_TIMEOUT

          static final long NO_TIMEOUT

      See Also:
        Constant Field Values

    - #### DEFAULT_TIMEOUT

          static final long DEFAULT_TIMEOUT

      See Also:
        Constant Field Values

  - ### Method Detail

    - #### getTimeout

          long getTimeout()

    - #### setTimeout

          void setTimeout​(long timeout)

    - #### getStreamWrapper

          org.eclipse.net4j.util.io.IStreamWrapper getStreamWrapper()

    - #### setStreamWrapper

          void setStreamWrapper​(org.eclipse.net4j.util.io.IStreamWrapper streamWrapper)

    - #### addStreamWrapper

          void addStreamWrapper​(org.eclipse.net4j.util.io.IStreamWrapper streamWrapper)

    - #### open

          IChannel open​(IConnector connector)

    - #### close

          void close()