//------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //------------------------------------------------------------ using System; using System.Collections.Generic; using System.Text; using System.Collections.ObjectModel; namespace System.IdentityModel.Metadata { /// /// Defines a role descriptor. /// public abstract class RoleDescriptor { Collection contacts = new Collection(); Uri errorUrl; Collection keys = new Collection(); Organization organization; Collection protocolsSupported = new Collection(); DateTime validUntil = DateTime.MaxValue; /// /// Empty constructor. /// protected RoleDescriptor() : this(new Collection()) { } /// /// Constructs a role descriptor with a collection of supported protocols. /// /// The supported protocol collection. protected RoleDescriptor(Collection protocolsSupported) { this.protocolsSupported = protocolsSupported; } /// /// Gets the collection of . /// public ICollection Contacts { get { return this.contacts; } } /// /// Gets or sets the error url. /// public Uri ErrorUrl { get { return this.errorUrl; } set { this.errorUrl = value; } } /// /// Gets the collection of . /// public ICollection Keys { get { return this.keys; } } /// /// Gets or sets the . /// public Organization Organization { get { return this.organization; } set { this.organization = value; } } /// /// Gets the collection of protocols supported. /// public ICollection ProtocolsSupported { get { return this.protocolsSupported; } } /// /// Gets or sets the expiration time. /// public DateTime ValidUntil { get { return this.validUntil; } set { this.validUntil = value; } } } }