Mercury Messaging
Documentation for the Mercury Messaging Framework
MercuryMessaging.MmRoutingTable Class Reference

A form of Reorderable List ReorderableList<T> specifically for all derivations of MmResponder. More...

Inheritance diagram for MercuryMessaging.MmRoutingTable:
MercuryMessaging.Support.Extensions.ReorderableList< MmRoutingTableItem >

Public Types

enum  ListFilter { All = 0, RelayNodeOnly, ResponderOnly }
 Useful for extracting certain types of MmResponders from the list. More...
 

Public Member Functions

List< string > GetMmNames (ListFilter filter=default(ListFilter), MmLevelFilter levelFilter=MmLevelFilterHelper.Default)
 Get a list of the names all MmRoutingTableItems that match the provided filters. More...
 
List< MmRoutingTableItemGetMmRoutingTableItems (ListFilter filter=default(ListFilter), MmLevelFilter levelFilter=MmLevelFilterHelper.Default)
 Get a list of all MmRoutingTableItems that match the provided filters. More...
 
List< MmRelayNodeGetOnlyMmRelayNodes ()
 
bool ContainsKey (string key)
 Checks whether the MmRoutingTable contains an item with the provided name. More...
 
bool Contains (MmResponder responder)
 Checks whether the MmRoutingTable contains an item with the provided MmResponder reference. More...
 
bool CheckFilter (MmRoutingTableItem item, ListFilter listFilter, MmLevelFilter levelFilter)
 Checks the provided MmRoutingTableItem to see whether it passes the list filter requirements. More...
 
- Public Member Functions inherited from MercuryMessaging.Support.Extensions.ReorderableList< MmRoutingTableItem >
IEnumerator< T > GetEnumerator ()
 
void Add (T item)
 
void Clear ()
 
bool Contains (T item)
 
void CopyTo (T[] array, int arrayIndex)
 
bool Remove (T item)
 
int IndexOf (T item)
 
void Insert (int index, T item)
 
void RemoveAt (int index)
 

Properties

MmRoutingTableItem this[string name] [get, set]
 Accessor for MmRoutingTableItems by name. Will throw KeyNotFoundException if not found. More...
 
MmRoutingTableItem this[MmResponder responder] [get]
 Accessor for MmRoutingTableItems by MmResponder reference. More...
 
- Properties inherited from MercuryMessaging.Support.Extensions.ReorderableList< MmRoutingTableItem >
int Count [get]
 
bool IsReadOnly [get]
 
this[int index] [get, set]
 

Additional Inherited Members

- Public Attributes inherited from MercuryMessaging.Support.Extensions.ReorderableList< MmRoutingTableItem >
List< T > _list
 

Detailed Description

A form of Reorderable List ReorderableList<T> specifically for all derivations of MmResponder.

Member Enumeration Documentation

◆ ListFilter

Useful for extracting certain types of MmResponders from the list.

Member Function Documentation

◆ CheckFilter()

bool MercuryMessaging.MmRoutingTable.CheckFilter ( MmRoutingTableItem  item,
ListFilter  listFilter,
MmLevelFilter  levelFilter 
)

Checks the provided MmRoutingTableItem to see whether it passes the list filter requirements.

Parameters
itemObserved MmRoutingTableItem.
listFilterListFilter ListFilter
levelFilterLevelFilter MmLevelFilter
Returns
Whether MmRoutingTableItem passes filter check.

◆ Contains()

bool MercuryMessaging.MmRoutingTable.Contains ( MmResponder  responder)

Checks whether the MmRoutingTable contains an item with the provided MmResponder reference.

Parameters
responderMmResponder for which to search.
Returns
Whether the MmRoutingTable contains an item with the provided MmResponder reference.

◆ ContainsKey()

bool MercuryMessaging.MmRoutingTable.ContainsKey ( string  key)

Checks whether the MmRoutingTable contains an item with the provided name.

Parameters
keyName for which to search.
Returns
Whether the MmRoutingTable contains an item with the provided name.

◆ GetMmNames()

List<string> MercuryMessaging.MmRoutingTable.GetMmNames ( ListFilter  filter = default(ListFilter),
MmLevelFilter  levelFilter = MmLevelFilterHelper.Default 
)

Get a list of the names all MmRoutingTableItems that match the provided filters.

Parameters
filterListFilter ListFilter
levelFilterLevelFilter MmLevelFilter
Returns
List of names of MmRoutingTableItems that pass filter checks.

◆ GetMmRoutingTableItems()

List<MmRoutingTableItem> MercuryMessaging.MmRoutingTable.GetMmRoutingTableItems ( ListFilter  filter = default(ListFilter),
MmLevelFilter  levelFilter = MmLevelFilterHelper.Default 
)

Get a list of all MmRoutingTableItems that match the provided filters.

Parameters
filterListFilter ListFilter
levelFilterLevelFilter MmLevelFilter
Returns
List of MmRoutingTableItems that pass filter checks.

◆ GetOnlyMmRelayNodes()

List<MmRelayNode> MercuryMessaging.MmRoutingTable.GetOnlyMmRelayNodes ( )

Get a list of all MmRoutingTableItems that reference MmRelayNodes.

Returns
List of all MmRoutingTableItems that reference MmRelayNodes.

Property Documentation

◆ this[MmResponder responder]

MmRoutingTableItem MercuryMessaging.MmRoutingTable.this[MmResponder responder]
get

Accessor for MmRoutingTableItems by MmResponder reference.

Parameters
responderMmResponder for which to search.
Returns
MmRoutingTableItem with reference or NULL.

◆ this[string name]

MmRoutingTableItem MercuryMessaging.MmRoutingTable.this[string name]
getset

Accessor for MmRoutingTableItems by name. Will throw KeyNotFoundException if not found.

Parameters
nameName of MmRoutingTableItem.
Returns
First item with the name.

The documentation for this class was generated from the following file: