- Namespace
- Steeltoe.Integration.Mapping
- Assembly
- Steeltoe.Integration.IntegrationBase.dll
public abstract class AbstractHeaderMapper<T> : IRequestReplyHeaderMapper<T>
Type Parameters
T
- Inheritance
-
AbstractHeaderMapper<T>
- Implements
-
- Derived
-
- Inherited Members
-
Constructors
protected AbstractHeaderMapper(string standardHeaderPrefix, List<string> requestHeaderNames, List<string> replyHeaderNames, ILogger logger)
Parameters
standardHeaderPrefix string
requestHeaderNames List<string>
replyHeaderNames List<string>
logger ILogger
Fields
NON_STANDARD_HEADER_NAME_PATTERN
public const string NON_STANDARD_HEADER_NAME_PATTERN = "NON_STANDARD_HEADERS"
Field Value
- string
STANDARD_REPLY_HEADER_NAME_PATTERN
public const string STANDARD_REPLY_HEADER_NAME_PATTERN = "STANDARD_REPLY_HEADERS"
Field Value
- string
STANDARD_REQUEST_HEADER_NAME_PATTERN
public const string STANDARD_REQUEST_HEADER_NAME_PATTERN = "STANDARD_REQUEST_HEADERS"
Field Value
- string
Properties
public AbstractHeaderMapper<T>.IHeaderMatcher ReplyHeaderMatcher { get; set; }
Property Value
- AbstractHeaderMapper<T>.IHeaderMatcher
public List<string> ReplyHeaderNames { get; set; }
Property Value
- List<string>
public AbstractHeaderMapper<T>.IHeaderMatcher RequestHeaderMatcher { get; set; }
Property Value
- AbstractHeaderMapper<T>.IHeaderMatcher
public List<string> RequestHeaderNames { get; set; }
Property Value
- List<string>
StandardHeaderPrefix
public string StandardHeaderPrefix { get; set; }
Property Value
- string
Methods
protected virtual AbstractHeaderMapper<T>.IHeaderMatcher CreateDefaultHeaderMatcher(string standardHeaderPrefix, List<string> headerNames)
Parameters
standardHeaderPrefix string
headerNames List<string>
Returns
- AbstractHeaderMapper<T>.IHeaderMatcher
protected virtual AbstractHeaderMapper<T>.IHeaderMatcher CreateHeaderMatcher(string[] patterns)
Parameters
patterns string[]
Returns
- AbstractHeaderMapper<T>.IHeaderMatcher
protected virtual string CreateTargetPropertyName(string propertyName, bool fromMessageHeaders)
Parameters
propertyName string
fromMessageHeaders bool
Returns
- string
ExtractStandardHeaders(T)
protected abstract IDictionary<string, object> ExtractStandardHeaders(T source)
Parameters
source T
Returns
- IDictionary<string, object>
protected abstract IDictionary<string, object> ExtractUserDefinedHeaders(T source)
Parameters
source T
Returns
- IDictionary<string, object>
public void FromHeadersToReply(IMessageHeaders headers, T target)
Parameters
headers IMessageHeaders
target T
public void FromHeadersToRequest(IMessageHeaders headers, T target)
Parameters
headers IMessageHeaders
target T
protected virtual V GetHeaderIfAvailable<V>(IDictionary<string, object> headers, string name, Type type)
Parameters
headers IDictionary<string, object>
name string
type Type
Returns
- V
Type Parameters
V
protected virtual List<string> GetTransientHeaderNames()
Returns
- List<string>
PopulateStandardHeaders(IDictionary<string, object>, IDictionary<string, object>, T)
protected virtual void PopulateStandardHeaders(IDictionary<string, object> allHeaders, IDictionary<string, object> subset, T target)
Parameters
allHeaders IDictionary<string, object>
subset IDictionary<string, object>
target T
PopulateStandardHeaders(IDictionary<string, object>, T)
protected abstract void PopulateStandardHeaders(IDictionary<string, object> headers, T target)
Parameters
headers IDictionary<string, object>
target T
protected abstract void PopulateUserDefinedHeader(string headerName, object headerValue, T target)
Parameters
headerName string
headerValue object
target T
public void SetReplyHeaderNames(params string[] replyHeaderNames)
Parameters
replyHeaderNames string[]
public void SetRequestHeaderNames(params string[] requestHeaderNames)
Parameters
requestHeaderNames string[]
public IDictionary<string, object> ToHeadersFromReply(T source)
Parameters
source T
Returns
- IDictionary<string, object>
public IDictionary<string, object> ToHeadersFromRequest(T source)
Parameters
source T
Returns
- IDictionary<string, object>