- 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>