Package org.somda.sdc.dpws
Interface CommunicationLog
- All Known Implementing Classes:
CommunicationLogDummyImpl,CommunicationLogImpl
public interface CommunicationLog
Communication log interface.
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic enumDirection enumeration.static enumDefines the message type.static enumDefines the transport type. -
Method Summary
Modifier and TypeMethodDescriptionlogMessage(CommunicationLog.Direction direction, CommunicationLog.TransportType transportType, CommunicationLog.MessageType messageType, CommunicationContext communicationContext) Creates an OutputStream to write the log message into.logMessage(CommunicationLog.Direction direction, CommunicationLog.TransportType transportType, CommunicationLog.MessageType messageType, CommunicationContext communicationContext, InputStream message) Logs a message based on an InputStream.logMessage(CommunicationLog.Direction direction, CommunicationLog.TransportType transportType, CommunicationLog.MessageType messageType, CommunicationContext communicationContext, OutputStream message) Logs a message based on an OutputStream.
-
Method Details
-
logMessage
OutputStream logMessage(CommunicationLog.Direction direction, CommunicationLog.TransportType transportType, CommunicationLog.MessageType messageType, CommunicationContext communicationContext, OutputStream message) Logs a message based on an OutputStream.It does not block i.e. it can return before data is written to the output.
- 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 portmessage- 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
OutputStream logMessage(CommunicationLog.Direction direction, CommunicationLog.TransportType transportType, CommunicationLog.MessageType messageType, CommunicationContext communicationContext) Creates an OutputStream to write the log message into.- 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
InputStream logMessage(CommunicationLog.Direction direction, CommunicationLog.TransportType transportType, CommunicationLog.MessageType messageType, CommunicationContext communicationContext, InputStream message) Logs a message based on an InputStream.It blocks until everything has been read.
- 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 portmessage- 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.
-