/* * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) * See https://github.com/openiddict/openiddict-core for more information concerning * the license and the contributors participating to this project. */ using System; using System.Collections.Generic; namespace OpenIddict.Models { /// /// Represents an OpenIddict application. /// public class OpenIddictApplication : OpenIddictApplication { public OpenIddictApplication() { // Generate a new string identifier. Id = Guid.NewGuid().ToString(); } } /// /// Represents an OpenIddict application. /// public class OpenIddictApplication : OpenIddictApplication, OpenIddictToken> where TKey : IEquatable { } /// /// Represents an OpenIddict application. /// public class OpenIddictApplication where TKey : IEquatable { /// /// Gets the list of the authorizations associated with this application. /// public virtual IList Authorizations { get; } = new List(); /// /// Gets or sets the client identifier /// associated with the current application. /// public virtual string ClientId { get; set; } /// /// Gets or sets the client secret associated with the current application. /// Note: depending on the application manager used to create this instance, /// this property may be hashed or encrypted for security reasons. /// public virtual string ClientSecret { get; set; } /// /// Gets or sets the display name /// associated with the current application. /// public virtual string DisplayName { get; set; } /// /// Gets or sets the unique identifier /// associated with the current application. /// public virtual TKey Id { get; set; } /// /// Gets or sets the logout callback URLs /// associated with the current application, /// stored as a unique space-separated string. /// public virtual string PostLogoutRedirectUris { get; set; } /// /// Gets or sets the callback URLs /// associated with the current application, /// stored as a unique space-separated string. /// public virtual string RedirectUris { get; set; } /// /// Gets or sets the timestamp associated with the current /// application, which is used as a concurrency token. /// public virtual byte[] Timestamp { get; set; } /// /// Gets the list of the tokens associated with this application. /// public virtual IList Tokens { get; } = new List(); /// /// Gets or sets the application type /// associated with the current application. /// public virtual string Type { get; set; } } }