Class CommunicationLogImpl

java.lang.Object
org.somda.sdc.dpws.CommunicationLogImpl
All Implemented Interfaces:
CommunicationLog

public class CommunicationLogImpl extends Object implements CommunicationLog
Default implementation of CommunicationLog.
  • Constructor Details

  • Method Details

    • 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 a 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 OutputStream logMessage(CommunicationLog.Direction direction, CommunicationLog.TransportType transportType, CommunicationLog.MessageType messageType, CommunicationContext communicationContext)
      Description copied from interface: CommunicationLog
      Creates an OutputStream to write the log message into.
      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.
      Returns:
      an output stream to write the log message into.
    • logMessage

      public InputStream logMessage(CommunicationLog.Direction direction, CommunicationLog.TransportType transportType, CommunicationLog.MessageType messageType, CommunicationContext communicationContext, InputStream message)
      Description copied from interface: CommunicationLog
      Logs a 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.