Interface StreamMultiplexerDirector


  • public interface StreamMultiplexerDirector
    Dieses Interface muss implementiert werden, wenn ein StreamMultiplexer mit einem StreamDemultiplexer Nutzdatenpakete austauschen soll. Die Methoden ermöglichen es, dass der StreamMultiplexer Nutzdaten von der Sendeapplikation anfordern und diese dann an den StreamDemultiplexer weitergeben kann.
    • Method Summary

      Modifier and Type Method Description
      void sendData​(byte[] streamDataPacket)
      Diese Methode wird von einem StreamMultiplexer aufgerufen und wenn ein Byte-Array an den entsprechenden StreamDemultiplexer gesendet werden soll.
      void streamAborted​(int indexOfStream)
      Wenn die Empfängerapplikation keine Nutzdaten mehr verarbeiten kann (aus welchem Grund auch immer), wird sie den Stream auf Empfängerseite (StreamDemultiplexer) mit abort beenden.
      byte[] take​(int indexOfStream)
      Diese Methode wird von einem StreamMultiplexer aufgerufen, sobald dieser Daten an einen StreamDemultiplexer verschicken darf.
    • Method Detail

      • take

        byte[] take​(int indexOfStream)
        Diese Methode wird von einem StreamMultiplexer aufgerufen, sobald dieser Daten an einen StreamDemultiplexer verschicken darf. Die Methode sollte ein Nutzdatenpaket zur Verfügung stellen, das dann über den StreamMultiplexer und StreamDemultiplexer der Empfängerapplikation beim Aufruf der StreamDemultiplexer.take(int) bereit gestellt wird.
        Parameters:
        indexOfStream - Stream über den die Nutzdaten übertragen werden sollen
        Returns:
        Nutzdaten, die von der Sendeapplikation zur Empfängerapplikation geschickt werden sollen. Sobald die Sendeapplikation keine Nutzdaten mehr für die Empfängerapplikation hat, wird ein null zurück gegeben.
      • sendData

        void sendData​(byte[] streamDataPacket)
        Diese Methode wird von einem StreamMultiplexer aufgerufen und wenn ein Byte-Array an den entsprechenden StreamDemultiplexer gesendet werden soll. Empfangsseitig sollte die Methode StreamDemultiplexer.receivedDataFromSender(byte[]) aufgerufen werden. Das Byte-Array enthält kodiert den Index des Streams, den Index des Pakets, die Größe des Byte-Arrays in dem die Nutzdaten gespeichert sind und die Nutzdaten.
        Parameters:
        streamDataPacket - Ein Nutzdatenpaket vom StreamMultiplexer zum StreamDemultiplexer
      • streamAborted

        void streamAborted​(int indexOfStream)
        Wenn die Empfängerapplikation keine Nutzdaten mehr verarbeiten kann (aus welchem Grund auch immer), wird sie den Stream auf Empfängerseite (StreamDemultiplexer) mit abort beenden. Mit diesem Methodenaufruf wird die Senderapplikation benachrichtigt, dass sie alle Daten, die für einen Stream bereitgestellt wurden nicht mehr benötigt wurden und das sie auch in Zukunft keine Daten mehr für diesen Stream zur Verfügung stellen muss. Der StreamMultiplexer wird diese Funktion aufrufen, sobald er von dem StreamDemultiplexer benachrichtigt wurde, dass ein Stream abgebrochen werden kann.
        Parameters:
        indexOfStream - Index des Streams, dessen Nutzdaten in der Senderapplikation verworfen werden können