Class MessageHeaderCollection
A modifiable collection of message headers.
Implements
Inherited Members
Namespace: Silverback.Messaging.Messages
Assembly: Silverback.Integration.dll
Syntax
public class MessageHeaderCollection : IReadOnlyList<MessageHeader>, IReadOnlyCollection<MessageHeader>, IEnumerable<MessageHeader>, IEnumerable
Constructors
| Improve this doc View sourceMessageHeaderCollection(IReadOnlyCollection<MessageHeader>?)
Initializes a new instance of the MessageHeaderCollection class.
Declaration
public MessageHeaderCollection(IReadOnlyCollection<MessageHeader>? headers)
Parameters
Type | Name | Description |
---|---|---|
IReadOnlyCollection<MessageHeader> | headers | The headers to be added to the collection. |
MessageHeaderCollection(int)
Initializes a new instance of the MessageHeaderCollection class.
Declaration
public MessageHeaderCollection(int capacity = 0)
Parameters
Type | Name | Description |
---|---|---|
int | capacity | The initial capacity of the backing List<T>. |
Properties
| Improve this doc View sourceCount
Gets the number of elements in the collection.
Declaration
public int Count { get; }
Property Value
Type | Description |
---|---|
int | The number of elements in the collection. |
this[int]
Gets the header at the specified index in the collection.
Declaration
public MessageHeader this[int index] { get; }
Parameters
Type | Name | Description |
---|---|---|
int | index | The index in the collection. |
Property Value
Type | Description |
---|---|
MessageHeader |
this[string]
Gets or sets the value of the header with the specified name.
Declaration
public string? this[string name] { get; set; }
Parameters
Type | Name | Description |
---|---|---|
string | name | The header name. |
Property Value
Type | Description |
---|---|
string |
Methods
| Improve this doc View sourceAdd(MessageHeader)
Adds a new header.
Declaration
public void Add(MessageHeader header)
Parameters
Type | Name | Description |
---|---|---|
MessageHeader | header | The header to be added. |
Add(string, object)
Adds a new header.
Declaration
public void Add(string name, object value)
Parameters
Type | Name | Description |
---|---|---|
string | name | The header name. |
object | value | The header value. |
Add(string, string?)
Adds a new header.
Declaration
public void Add(string name, string? value)
Parameters
Type | Name | Description |
---|---|---|
string | name | The header name. |
string | value | The header value. |
AddIfNotExists(string, string?)
Adds a new header if no header with the same name is already set.
Declaration
public void AddIfNotExists(string name, string? newValue)
Parameters
Type | Name | Description |
---|---|---|
string | name | The header name. |
string | newValue | The new header value. |
AddOrReplace(string, object?)
Adds a new header or replaces the header with the same name.
Declaration
public void AddOrReplace(string name, object? newValue)
Parameters
Type | Name | Description |
---|---|---|
string | name | The header name. |
object | newValue | The new header value. |
AddOrReplace(string, string?)
Adds a new header or replaces the header with the same name.
Declaration
public void AddOrReplace(string name, string? newValue)
Parameters
Type | Name | Description |
---|---|---|
string | name | The header name. |
string | newValue | The new header value. |
Contains(string)
Returns a boolean value indicating whether an header with the specified name has already been added to the collection.
Declaration
public bool Contains(string name)
Parameters
Type | Name | Description |
---|---|---|
string | name | The name to be checked. |
Returns
Type | Description |
---|---|
bool | A boolean value indicating whether the name was found in the existing headers. |
GetEnumerator()
Returns an enumerator that iterates through the collection.
Declaration
public IEnumerator<MessageHeader> GetEnumerator()
Returns
Type | Description |
---|---|
IEnumerator<MessageHeader> | An enumerator that can be used to iterate through the collection. |
GetValue(string, bool)
Returns the value of the header with the specified name.
It will return null
if no header with that name is found in the collection.
Declaration
public string? GetValue(string name, bool throwIfNotFound = false)
Parameters
Type | Name | Description |
---|---|---|
string | name | The name of the header to be retrieved. |
bool | throwIfNotFound | A boolean value specifying whether an exception must be thrown if the header with the specified name is not found (or the value cannot be converted to the specified type). |
Returns
Type | Description |
---|---|
string | The header value converted to the target type, or |
GetValue(string, Type, bool)
Returns the value of the header with the specified name, casting it to the specified type.
By default it will return null
if no header with that name is found in the collection but
this behavior can be changed
setting the throwIfNotFound
parameter to true
.
Declaration
public object? GetValue(string name, Type targetType, bool throwIfNotFound = false)
Parameters
Type | Name | Description |
---|---|---|
string | name | The name of the header to be retrieved. |
Type | targetType | The type to convert the header value to. |
bool | throwIfNotFound | A boolean value specifying whether an exception must be thrown if the header with the specified name is not found (or the value cannot be converted to the specified type). |
Returns
Type | Description |
---|---|
object | The header value converted to the target type, or |
GetValueOrDefault(string, Type)
Returns the value of the header with the specified name, casting it to the specified type.
It will return the default value for the target type if no header with that name is found in the collection.
Declaration
public object? GetValueOrDefault(string name, Type targetType)
Parameters
Type | Name | Description |
---|---|---|
string | name | The name of the header to be retrieved. |
Type | targetType | The type to convert the header value to. |
Returns
Type | Description |
---|---|
object | The header value converted to the target type, or |
GetValueOrDefault<T>(string)
Returns the value of the header with the specified name, casting it to the specified type
T
.
It will return the default value for the type T
if no header with that
name is found in the collection.
Declaration
public T GetValueOrDefault<T>(string name) where T : struct
Parameters
Type | Name | Description |
---|---|---|
string | name | The name of the header to be retrieved. |
Returns
Type | Description |
---|---|
T | The header value converted to the target type, or |
Type Parameters
Name | Description |
---|---|
T | The type to convert the header value to. |
GetValue<T>(string, bool)
Returns the value of the header with the specified name, casting it to the specified type
T
.
It will return null
if no header with that name is found in the collection.
Declaration
public T? GetValue<T>(string name, bool throwIfNotFound = false) where T : struct
Parameters
Type | Name | Description |
---|---|---|
string | name | The name of the header to be retrieved. |
bool | throwIfNotFound | A boolean value specifying whether an exception must be thrown if the header with the specified name is not found (or the value cannot be converted to the specified type). |
Returns
Type | Description |
---|---|
T? | The header value converted to the target type, or |
Type Parameters
Name | Description |
---|---|
T | The type to convert the header value to. |
Remove(MessageHeader)
Removes the specified header.
Declaration
public void Remove(MessageHeader header)
Parameters
Type | Name | Description |
---|---|---|
MessageHeader | header | The header to remove. |
Remove(string)
Removes all headers with the specified name.
Declaration
public void Remove(string name)
Parameters
Type | Name | Description |
---|---|---|
string | name | The header name. |