org.eclipse.net4j.signal

## Class IndicationWithMonitoring

- java.lang.Object
- - org.eclipse.net4j.signal.Signal
  - - org.eclipse.net4j.signal.SignalReactor
    - - org.eclipse.net4j.signal.IndicationWithResponse
      - - org.eclipse.net4j.signal.IndicationWithMonitoring

- All Implemented Interfaces:
    java.lang.Runnable
  Direct Known Subclasses:
    AuthenticationIndication, ConfirmationIndication

      public abstract class IndicationWithMonitoring
      extends IndicationWithResponse

  Represents the receiver side of a two-way `signal` with additional support for remote progress monitoring.
  Since:
    2.0
  Author:
    Eike Stepper

- - ### Field Summary

    - ### Fields inherited from class org.eclipse.net4j.signal.Signal

      `NO_TIMEOUT`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `IndicationWithMonitoring(SignalProtocol<?> protocol, java.lang.Enum<?> literal)`
    `IndicationWithMonitoring(SignalProtocol<?> protocol, short signalID)`
    `IndicationWithMonitoring(SignalProtocol<?> protocol, short id, java.lang.String name)`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected void` | `execute(BufferInputStream in, BufferOutputStream out)`
    `protected int` | `getIndicatingWorkPercent()`
    `protected java.util.concurrent.ExecutorService` | `getMonitoringExecutorService()`
    `protected void` | `indicating(ExtendedDataInputStream in)`
    `protected abstract void` | `indicating(ExtendedDataInputStream in, OMMonitor monitor)`
    `protected void` | `responding(ExtendedDataOutputStream out)` Important Note: The response must not be empty, i.e.
    `protected abstract void` | `responding(ExtendedDataOutputStream out, OMMonitor monitor)`

    - ### Methods inherited from class org.eclipse.net4j.signal.IndicationWithResponse

      `closeChannelAfterException, getExceptionMessage`

    - ### Methods inherited from class org.eclipse.net4j.signal.Signal

      `closeChannelAfterMe, closeInputStreamAfterMe, closeOutputStreamAfterMe, finishInputStream, finishOutputStream, flush, getAdditionalInfo, getBufferInputStream, getBufferOutputStream, getCorrelationID, getCurrentInputStream, getCurrentOutputStream, getID, getName, getProtocol, run, toString, wrapInputStream, wrapOutputStream`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### IndicationWithMonitoring

          public IndicationWithMonitoring(SignalProtocol<?> protocol,
                                          short id,
                                          java.lang.String name)

      Since:
        2.0

    - #### IndicationWithMonitoring

          public IndicationWithMonitoring(SignalProtocol<?> protocol,
                                          short signalID)

      Since:
        2.0

    - #### IndicationWithMonitoring

          public IndicationWithMonitoring(SignalProtocol<?> protocol,
                                          java.lang.Enum<?> literal)

      Since:
        2.0

  - ### Method Detail

    - #### execute

          protected void execute(BufferInputStream in,
                                 BufferOutputStream out)
                          throws java.lang.Exception

      Overrides:
        `execute` in class `IndicationWithResponse`
      Throws:
        `java.lang.Exception`

    - #### indicating

          protected final void indicating(ExtendedDataInputStream in)
                                   throws java.lang.Exception

      Specified by:
        `indicating` in class `IndicationWithResponse`
      Throws:
        `java.lang.Exception`

    - #### responding

          protected final void responding(ExtendedDataOutputStream out)
                                   throws java.lang.Exception

      Description copied from class: `IndicationWithResponse`
      Important Note: The response must not be empty, i.e. the stream must be used at least to write a `boolean`. Otherwise synchronization problems will result!
      Specified by:
        `responding` in class `IndicationWithResponse`
      Throws:
        `java.lang.Exception`

    - #### indicating

          protected abstract void indicating(ExtendedDataInputStream in,
                                             OMMonitor monitor)
                                      throws java.lang.Exception

      Throws:
        `java.lang.Exception`

    - #### responding

          protected abstract void responding(ExtendedDataOutputStream out,
                                             OMMonitor monitor)
                                      throws java.lang.Exception

      Throws:
        `java.lang.Exception`

    - #### getMonitoringExecutorService

          protected java.util.concurrent.ExecutorService getMonitoringExecutorService()

      Since:
        2.0

    - #### getIndicatingWorkPercent

          protected int getIndicatingWorkPercent()

Copyright (c) 2014 Eike Stepper (Berlin, Germany) and others.
All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html