//------------------------------------------------------------
// 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; }
}
}
}