Early Preview

This is currently very much a preview. Please feel free to try things out, but don't be upset if anything is not yet working. Feedback is welcome over on our GitHub Dicussions page.

class Sustainsys.​Saml2.​Configuration.​IdentityProviderDictionary

Assembly: Sustainsys.Saml2

Inheritance: object → IdentityProviderDictionary

A thread safe wrapper around a dictionary for the identity providers.

Remarks

First I thought about using a ConcurrentDictionary, but that does not maintain any order of the added objects. Since the first idp added becomes the default idp, the order must be preserved. And there has to be queuing semantics if the first idp is dynamically loaded from a federation and later removed. Locks are simple and this part of the code shouldn't be that performance sensitive.

Properties

Item
Default
The default identity provider; i.e. the first registered of the currently known.
Gets all currently known identity providers. Note that the returned enumeration is a copy to avoid race conditions.
public bool
IsEmpty
Checks if there are no known identity providers.

Methods

public void
Add​(IdentityProvider idp)
idp Identity provider to add.
Add an identity provider to the collection..
public bool
TryGetValue​(Metadata.EntityId idpEntityId, IdentityProvider& idp)
public void
Remove​(Metadata.EntityId idp)
idp EntityId of idp to remove.
Removes the idp with the given entity id, if present. If no such entity is found, nothing is done.
public bool
Equals​(object obj)
Inherited from object
protected void
Finalize​()
Inherited from object
public int
GetHashCode​()
Inherited from object
GetType​()
Inherited from object
protected object
MemberwiseClone​()
Inherited from object
public string
ToString​()
Inherited from object