Interface EofSensorWatcher

All Known Implementing Classes:
BasicEofSensorWatcher, BasicManagedEntity

public interface EofSensorWatcher
A watcher for EofSensorInputStream. Each stream will notify its watcher at most once.
Since:
4.0
  • Method Details

    • eofDetected

      boolean eofDetected(InputStream wrapped) throws IOException
      Indicates that EOF is detected.
      Parameters:
      wrapped - the underlying stream which has reached EOF
      Returns:
      true if wrapped should be closed, false if it should be left alone
      Throws:
      IOException - in case of an IO problem, for example if the watcher itself closes the underlying stream. The caller will leave the wrapped stream alone, as if false was returned.
    • streamClosed

      boolean streamClosed(InputStream wrapped) throws IOException
      Indicates that the stream is closed. This method will be called only if EOF was not detected before closing. Otherwise, eofDetected is called.
      Parameters:
      wrapped - the underlying stream which has not reached EOF
      Returns:
      true if wrapped should be closed, false if it should be left alone
      Throws:
      IOException - in case of an IO problem, for example if the watcher itself closes the underlying stream. The caller will leave the wrapped stream alone, as if false was returned.
    • streamAbort

      boolean streamAbort(InputStream wrapped) throws IOException
      Indicates that the stream is aborted. This method will be called only if EOF was not detected before aborting. Otherwise, eofDetected is called.

      This method will also be invoked when an input operation causes an IOException to be thrown to make sure the input stream gets shut down.

      Parameters:
      wrapped - the underlying stream which has not reached EOF
      Returns:
      true if wrapped should be closed, false if it should be left alone
      Throws:
      IOException - in case of an IO problem, for example if the watcher itself closes the underlying stream. The caller will leave the wrapped stream alone, as if false was returned.