Interface IMessageBuilder
- Namespace
- Steeltoe.Integration.Support
- Assembly
- Steeltoe.Integration.Abstractions.dll
A message builder that creates immutable GenericMessages.
[Obsolete("This feature will be removed in the next major version. See https://steeltoe.io/docs/v3/obsolete for details.")]
public interface IMessageBuilder
Properties
Headers
Gets the current headers of the message
IDictionary<string, object> Headers { get; }
Property Value
Payload
Gets the payload of the message
object Payload { get; }
Property Value
Methods
Build()
Build the message
IMessage Build()
Returns
- IMessage
the message
CopyHeaders(IDictionary<string, object>)
Adds the headers to the message overwriting any existing values.
IMessageBuilder CopyHeaders(IDictionary<string, object> headersToCopy)
Parameters
headersToCopyIDictionary<string, object>the headers to add
Returns
- IMessageBuilder
the builder
CopyHeadersIfAbsent(IDictionary<string, object>)
Adds the headers to the message but will not overwrite any existing values.
IMessageBuilder CopyHeadersIfAbsent(IDictionary<string, object> headersToCopy)
Parameters
headersToCopyIDictionary<string, object>the headers to add
Returns
- IMessageBuilder
the builder
FilterAndCopyHeadersIfAbsent(IDictionary<string, object>, params string[])
Remove headers from the provided map matching to the provided pattens and only after that copy the result into the target message headers.
IMessageBuilder FilterAndCopyHeadersIfAbsent(IDictionary<string, object> headersToCopy, params string[] headerPatternsToFilter)
Parameters
headersToCopyIDictionary<string, object>the set of headers to copy
headerPatternsToFilterstring[]header patterns to filter before copy
Returns
- IMessageBuilder
the builder
PopSequenceDetails()
Removes a sequence details header from the message
IMessageBuilder PopSequenceDetails()
Returns
- IMessageBuilder
the builder
PushSequenceDetails(object, int, int)
Adds a sequence details header to the message
IMessageBuilder PushSequenceDetails(object correlationId, int sequenceNumber, int sequenceSize)
Parameters
correlationIdobjectcorrelation id to use in sequence
sequenceNumberintthe sequence number
sequenceSizeintthe size of the sequence number
Returns
- IMessageBuilder
the builder
RemoveHeader(string)
Remove the header if present
IMessageBuilder RemoveHeader(string headerName)
Parameters
headerNamestringthe name of the header to remove
Returns
- IMessageBuilder
the builder
RemoveHeaders(params string[])
Remove the headers matched by the header patterns from the message
IMessageBuilder RemoveHeaders(params string[] headerPatterns)
Parameters
headerPatternsstring[]header patterns to match
Returns
- IMessageBuilder
the builder
SetCorrelationId(object)
Adds the correlationId to the headers
IMessageBuilder SetCorrelationId(object correlationId)
Parameters
correlationIdobjectthe id to add
Returns
- IMessageBuilder
the builder
SetErrorChannel(IMessageChannel)
Adds an error channel to the messsage
IMessageBuilder SetErrorChannel(IMessageChannel errorChannel)
Parameters
errorChannelIMessageChannelthe error channel
Returns
- IMessageBuilder
the builder
SetErrorChannelName(string)
Adds an error channel name to the message
IMessageBuilder SetErrorChannelName(string errorChannelName)
Parameters
errorChannelNamestringthe name of the error channel
Returns
- IMessageBuilder
the builder
SetExpirationDate(long)
Adds an expiration date in the headers
IMessageBuilder SetExpirationDate(long expirationDate)
Parameters
expirationDatelongexpiration date added to header
Returns
- IMessageBuilder
the builder
SetExpirationDate(DateTime?)
Adds an expiration date in the headers
IMessageBuilder SetExpirationDate(DateTime? expirationDate)
Parameters
expirationDateDateTime?expiration date added to header
Returns
- IMessageBuilder
the builder
SetHeader(string, object)
Add a header and value to the message
IMessageBuilder SetHeader(string headerName, object headerValue)
Parameters
Returns
- IMessageBuilder
the builder
SetHeaderIfAbsent(string, object)
Add a header and value to the message if not present
IMessageBuilder SetHeaderIfAbsent(string headerName, object headerValue)
Parameters
Returns
- IMessageBuilder
the builder
SetPriority(int)
Adds a priority header to the message
IMessageBuilder SetPriority(int priority)
Parameters
priorityintthe priority to add
Returns
- IMessageBuilder
the builder
SetReplyChannel(IMessageChannel)
Adds a reply channel to the message
IMessageBuilder SetReplyChannel(IMessageChannel replyChannel)
Parameters
replyChannelIMessageChannelthe reply channel
Returns
- IMessageBuilder
the builder
SetReplyChannelName(string)
Adds a reply channel name to the message
IMessageBuilder SetReplyChannelName(string replyChannelName)
Parameters
replyChannelNamestringthe reply channel name
Returns
- IMessageBuilder
the builder
SetSequenceNumber(int)
Adds sequence details header to the message
IMessageBuilder SetSequenceNumber(int sequenceNumber)
Parameters
sequenceNumberintthe sequence number
Returns
- IMessageBuilder
the builder
SetSequenceSize(int)
Sets the size of the sequence number
IMessageBuilder SetSequenceSize(int sequenceSize)
Parameters
sequenceSizeintthe size
Returns
- IMessageBuilder
the builder