Table of Contents

Class MetadataCollection

Namespace
Pipelinez.Core.Record.Metadata
Assembly
Pipelinez.dll

Represents a mutable collection of metadata records attached to a pipeline container.

public class MetadataCollection : IList<MetadataRecord>, ICollection<MetadataRecord>, IEnumerable<MetadataRecord>, IEnumerable
Inheritance
MetadataCollection
Implements
Inherited Members

Constructors

MetadataCollection()

Initializes a new empty metadata collection.

public MetadataCollection()

Properties

Count

Gets the number of elements contained in the ICollection<T>.

public int Count { get; }

Property Value

int

The number of elements contained in the ICollection<T>.

IsReadOnly

Gets a value indicating whether the ICollection<T> is read-only.

public bool IsReadOnly { get; }

Property Value

bool

true if the ICollection<T> is read-only; otherwise, false.

this[int]

Gets or sets the element at the specified index.

public MetadataRecord this[int index] { get; set; }

Parameters

index int

The zero-based index of the element to get or set.

Property Value

MetadataRecord

The element at the specified index.

Exceptions

ArgumentOutOfRangeException

index is not a valid index in the IList<T>.

NotSupportedException

The property is set and the IList<T> is read-only.

Methods

Add(MetadataRecord)

Adds an item to the ICollection<T>.

public void Add(MetadataRecord item)

Parameters

item MetadataRecord

The object to add to the ICollection<T>.

Exceptions

NotSupportedException

The ICollection<T> is read-only.

Clear()

Removes all items from the ICollection<T>.

public void Clear()

Exceptions

NotSupportedException

The ICollection<T> is read-only.

Clone()

Creates a deep copy of the metadata collection.

public MetadataCollection Clone()

Returns

MetadataCollection

A cloned metadata collection.

Contains(MetadataRecord)

Determines whether the ICollection<T> contains a specific value.

public bool Contains(MetadataRecord item)

Parameters

item MetadataRecord

The object to locate in the ICollection<T>.

Returns

bool

true if item is found in the ICollection<T>; otherwise, false.

CopyTo(MetadataRecord[], int)

Copies the elements of the ICollection<T> to an Array, starting at a particular Array index.

public void CopyTo(MetadataRecord[] array, int arrayIndex)

Parameters

array MetadataRecord[]

The one-dimensional Array that is the destination of the elements copied from ICollection<T>. The Array must have zero-based indexing.

arrayIndex int

The zero-based index in array at which copying begins.

Exceptions

ArgumentNullException

array is null.

ArgumentOutOfRangeException

arrayIndex is less than 0.

ArgumentException

The number of elements in the source ICollection<T> is greater than the available space from arrayIndex to the end of the destination array.

GetByKey(string)

Gets the first metadata record that matches the specified key.

public MetadataRecord? GetByKey(string key)

Parameters

key string

The metadata key to retrieve.

Returns

MetadataRecord

The matching metadata record, or null when no match exists.

GetEnumerator()

Returns an enumerator that iterates through the collection.

public IEnumerator<MetadataRecord> GetEnumerator()

Returns

IEnumerator<MetadataRecord>

An enumerator that can be used to iterate through the collection.

GetValue(string)

Gets the value associated with the specified metadata key.

public string? GetValue(string key)

Parameters

key string

The metadata key to retrieve.

Returns

string

The metadata value, or null when no match exists.

HasKey(string)

Determines whether the collection contains a metadata record with the specified key.

public bool HasKey(string key)

Parameters

key string

The metadata key to look for.

Returns

bool

true if the key exists; otherwise, false.

IndexOf(MetadataRecord)

Determines the index of a specific item in the IList<T>.

public int IndexOf(MetadataRecord item)

Parameters

item MetadataRecord

The object to locate in the IList<T>.

Returns

int

The index of item if found in the list; otherwise, -1.

Insert(int, MetadataRecord)

Inserts an item to the IList<T> at the specified index.

public void Insert(int index, MetadataRecord item)

Parameters

index int

The zero-based index at which item should be inserted.

item MetadataRecord

The object to insert into the IList<T>.

Exceptions

ArgumentOutOfRangeException

index is not a valid index in the IList<T>.

NotSupportedException

The IList<T> is read-only.

Remove(MetadataRecord)

Removes the first occurrence of a specific object from the ICollection<T>.

public bool Remove(MetadataRecord item)

Parameters

item MetadataRecord

The object to remove from the ICollection<T>.

Returns

bool

true if item was successfully removed from the ICollection<T>; otherwise, false. This method also returns false if item is not found in the original ICollection<T>.

Exceptions

NotSupportedException

The ICollection<T> is read-only.

RemoveAt(int)

Removes the IList<T> item at the specified index.

public void RemoveAt(int index)

Parameters

index int

The zero-based index of the item to remove.

Exceptions

ArgumentOutOfRangeException

index is not a valid index in the IList<T>.

NotSupportedException

The IList<T> is read-only.

Set(string, string)

Adds or updates a metadata value for the specified key.

public void Set(string key, string value)

Parameters

key string

The metadata key.

value string

The metadata value.