Class OutputStreamBytesTransmitter

  • All Implemented Interfaces:
    Flushable, org.refcodes.component.Closable, org.refcodes.component.Closable.CloseAutomaton, org.refcodes.component.ClosedAccessor, org.refcodes.component.ConnectableComponent, org.refcodes.component.ConnectableComponent.ConnectableAutomaton, org.refcodes.component.ConnectionStatusAccessor, org.refcodes.component.Flushable, org.refcodes.component.OpenedAccessor, ByteSource, BytesSource, BytesTransmitter, ByteTransmitter, Transmittable, org.refcodes.mixin.OutputStreamAccessor

    public class OutputStreamBytesTransmitter
    extends Object
    implements BytesTransmitter
    The Class OutputStreamBytesTransmitter.
    Author:
    steiner
    • Nested Class Summary

      • Nested classes/interfaces inherited from interface org.refcodes.component.Closable

        org.refcodes.component.Closable.CloseAutomaton, org.refcodes.component.Closable.CloseBuilder<B extends org.refcodes.component.Closable.CloseBuilder<B>>
      • Nested classes/interfaces inherited from interface org.refcodes.component.ClosedAccessor

        org.refcodes.component.ClosedAccessor.ClosedMutator, org.refcodes.component.ClosedAccessor.ClosedProperty
      • Nested classes/interfaces inherited from interface org.refcodes.component.ConnectableComponent

        org.refcodes.component.ConnectableComponent.ConnectableAutomaton
      • Nested classes/interfaces inherited from interface org.refcodes.component.ConnectionStatusAccessor

        org.refcodes.component.ConnectionStatusAccessor.ConnectionStatusMutator, org.refcodes.component.ConnectionStatusAccessor.ConnectionStatusProperty
      • Nested classes/interfaces inherited from interface org.refcodes.component.Flushable

        org.refcodes.component.Flushable.FlushBuilder<B extends org.refcodes.component.Flushable.FlushBuilder<B>>
      • Nested classes/interfaces inherited from interface org.refcodes.component.OpenedAccessor

        org.refcodes.component.OpenedAccessor.OpenedMutator, org.refcodes.component.OpenedAccessor.OpenedProperty
      • Nested classes/interfaces inherited from interface org.refcodes.mixin.OutputStreamAccessor

        org.refcodes.mixin.OutputStreamAccessor.OutputStreamBuilder<B extends org.refcodes.mixin.OutputStreamAccessor.OutputStreamBuilder<?>>, org.refcodes.mixin.OutputStreamAccessor.OutputStreamMutator, org.refcodes.mixin.OutputStreamAccessor.OutputStreamProperty
    • Constructor Detail

      • OutputStreamBytesTransmitter

        public OutputStreamBytesTransmitter​(OutputStream aOutputStream)
                                     throws IOException
        Instantiates a new output stream byte sender impl.
        Parameters:
        aOutputStream - the output stream
        Throws:
        IOException - the open exception
    • Method Detail

      • transmitAllBytes

        public void transmitAllBytes​(byte[] aDatagram)
                              throws IOException
        Writes (sends) a byte block.
        Specified by:
        transmitAllBytes in interface BytesSource
        Parameters:
        aDatagram - The byte to be pushed.
        Throws:
        IOException - Thrown in case opening or accessing an open line (connection, junction, link) caused problems.
      • isClosed

        public boolean isClosed()
        Specified by:
        isClosed in interface org.refcodes.component.ClosedAccessor
      • isOpened

        public boolean isOpened()
        Specified by:
        isOpened in interface org.refcodes.component.ConnectionStatusAccessor
        Specified by:
        isOpened in interface org.refcodes.component.OpenedAccessor
      • getConnectionStatus

        public org.refcodes.component.ConnectionStatus getConnectionStatus()
        Specified by:
        getConnectionStatus in interface org.refcodes.component.ConnectionStatusAccessor
      • transmitBytes

        public void transmitBytes​(byte[] aDatagram,
                                  int aOffset,
                                  int aLength)
                           throws IOException
        Writes (sends) a byte block.
        Specified by:
        transmitBytes in interface BytesSource
        Specified by:
        transmitBytes in interface BytesTransmitter
        Parameters:
        aDatagram - The byte to be pushed.
        aOffset - The offset from which to take the data.
        aLength - The number of elements to push starting at the given offset.
        Throws:
        IOException - Thrown in case opening or accessing an open line (connection, junction, link) caused problems.
      • close

        public void close()
                   throws IOException
        Specified by:
        close in interface org.refcodes.component.Closable
        Throws:
        IOException
      • transmitByte

        public void transmitByte​(byte aByte)
                          throws IOException
        Writes (sends) a byte.
        Specified by:
        transmitByte in interface ByteSource
        Specified by:
        transmitByte in interface BytesSource
        Parameters:
        aByte - The byte to be pushed.
        Throws:
        IOException - Thrown in case opening or accessing an open line (connection, junction, link) caused problems.
      • isClosable

        public boolean isClosable()
        Specified by:
        isClosable in interface org.refcodes.component.Closable.CloseAutomaton