Class CommunicationLogImpl

    • Method Detail

      • logMessage

        public org.apache.commons.io.output.TeeOutputStream logMessage​(CommunicationLog.Direction direction,
                                                                       CommunicationLog.TransportType transportType,
                                                                       CommunicationLog.MessageType messageType,
                                                                       CommunicationContext communicationContext,
                                                                       OutputStream message)
        Description copied from interface: CommunicationLog
        Logs an HTTP message based on an OutputStream.

        It does not block i.e. it can return before data is written to the output.

        Specified by:
        logMessage in interface CommunicationLog
        Parameters:
        direction - direction used for filename.
        transportType - the transport protocol used i.e. udp, http, etc.
        messageType - the type of the message i.e. request, response.
        communicationContext - communication information such as target address and port
        message - the output stream to branch to the log file.
        Returns:
        an output stream, that streams to the original output stream and optionally streams to another stream similarly to the tee Unix command. The other stream can be a log file stream.
      • logMessage

        public InputStream logMessage​(CommunicationLog.Direction direction,
                                      CommunicationLog.TransportType transportType,
                                      CommunicationLog.MessageType messageType,
                                      CommunicationContext communicationContext,
                                      InputStream message)
        Description copied from interface: CommunicationLog
        Logs an HTTP message based on an InputStream.

        It blocks until everything has been read.

        Specified by:
        logMessage in interface CommunicationLog
        Parameters:
        direction - direction used for filename.
        transportType - the transport protocol used i.e. udp, http, etc.
        messageType - the type of the message i.e. request, response.
        communicationContext - communication information such as target address and port
        message - the message to log as input stream. As the input stream might be unusable after reading, another one is created to be used for further processing; see return value.
        Returns:
        a new input stream that mirrors the data from the message input data.