Package com.helger.phase4.dump
Class AbstractAS4OutgoingDumperWithHeaders
java.lang.Object
com.helger.phase4.dump.AbstractAS4OutgoingDumperWithHeaders
- All Implemented Interfaces:
IAS4OutgoingDumper
- Direct Known Subclasses:
AS4OutgoingDumperFileBased,AS4OutgoingDumperSingleUse
public abstract class AbstractAS4OutgoingDumperWithHeaders
extends Object
implements IAS4OutgoingDumper
Abstract implementation of
IAS4OutgoingDumper that always adds the
custom headers- Since:
- 0.9.7
- Author:
- Philip Helger
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionfinal booleanonBeginRequest(EAS4MessageMode eMsgMode, IAS4IncomingMessageMetadata aMessageMetadata, IAS4MessageState aState, String sMessageID, com.helger.commons.http.HttpHeaderMap aCustomHeaders, int nTry) Called for new requests.protected abstract OutputStreamopenOutputStream(EAS4MessageMode eMsgMode, IAS4IncomingMessageMetadata aMessageMetadata, IAS4MessageState aState, String sMessageID, com.helger.commons.http.HttpHeaderMap aCustomHeaders, int nTry) Create the output stream to which the data should be dumped.final voidsetIncludeHeaders(boolean b) Include or exclude the headers from the dump.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.helger.phase4.dump.IAS4OutgoingDumper
onEndRequest
-
Field Details
-
DEFAULT_INCLUDE_HEADERS
public static final boolean DEFAULT_INCLUDE_HEADERS- See Also:
-
-
Constructor Details
-
AbstractAS4OutgoingDumperWithHeaders
public AbstractAS4OutgoingDumperWithHeaders()
-
-
Method Details
-
isIncludeHeaders
public final boolean isIncludeHeaders()- Returns:
trueto include the headers in the dump,falseif not. The default isDEFAULT_INCLUDE_HEADERS.- Since:
- 2.5.2
-
setIncludeHeaders
public final void setIncludeHeaders(boolean b) Include or exclude the headers from the dump.- Parameters:
b-trueto include the headers in the dump,falseif not.- Since:
- 2.5.2
-
openOutputStream
@Nullable protected abstract OutputStream openOutputStream(@Nonnull EAS4MessageMode eMsgMode, @Nullable IAS4IncomingMessageMetadata aMessageMetadata, @Nullable IAS4MessageState aState, @Nonnull @Nonempty String sMessageID, @Nullable com.helger.commons.http.HttpHeaderMap aCustomHeaders, @Nonnegative int nTry) throws IOException Create the output stream to which the data should be dumped.- Parameters:
eMsgMode- Are we dumping a request or a response? Nevernull. Added in v1.2.0.aMessageMetadata- The incoming message metadata. This is alwaysnullfor requests. This is always non-nullfor responses. Added in v1.2.0.aState- The incoming message processing state. This is alwaysnullfor requests. This is always non-nullfor responses. Added in v1.2.0.sMessageID- The AS4 message ID of the outgoing message. Neithernullnor empty.aCustomHeaders- The HTTP headers of the outgoing message. Nevernull.nTry- The index of the try. The first try has always index 0, the first retry has index 1, the second retry has index 2 etc. Always ≥ 0.- Returns:
- The output stream to dump to or
nullif no dumping should be performed. - Throws:
IOException- On IO error
-
onBeginRequest
@Nullable public OutputStream onBeginRequest(@Nonnull EAS4MessageMode eMsgMode, @Nullable IAS4IncomingMessageMetadata aMessageMetadata, @Nullable IAS4MessageState aState, @Nonnull @Nonempty String sMessageID, @Nullable com.helger.commons.http.HttpHeaderMap aCustomHeaders, @Nonnegative int nTry) throws IOException Description copied from interface:IAS4OutgoingDumperCalled for new requests. It's the responsibility of the caller to close the created output stream.- Specified by:
onBeginRequestin interfaceIAS4OutgoingDumper- Parameters:
eMsgMode- Are we dumping a request or a response? Nevernull. Added in v1.2.0.aMessageMetadata- The incoming message metadata. This is alwaysnullfor requests (outgoing messages) and always non-nullfor responses (incoming messages) - see eMsgMode parameter for differentiation. Added in v1.2.0.aState- The incoming message processing state. This is alwaysnullfor requests and always non-nullfor responses - see eMsgMode parameter for differentiation. Added in v1.2.0.sMessageID- The AS4 message ID of the outgoing message. Neithernullnor empty.aCustomHeaders- Custom headers to be added to the HTTP entity. May benull.nTry- The index of the try. The first try has always index 0, the first retry has index 1, the second retry has index 2 etc. Always ≥ 0.- Returns:
- If
nullis returned, nothing is dumped, else each byte written to the target stream is also written to that output stream. - Throws:
IOException- in case of an error
-