Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT License. See License.txt in the project root for license information.
/** * Copyright (c) Microsoft Corporation. All rights reserved. * Licensed under the MIT License. See License.txt in the project root for * license information. */
package com.microsoft.azure.management.graphrbac; import com.microsoft.azure.management.apigeneration.Fluent; import com.microsoft.azure.management.graphrbac.implementation.ApplicationInner; import com.microsoft.azure.management.resources.fluentcore.model.Appliable; import com.microsoft.azure.management.resources.fluentcore.model.Creatable; import com.microsoft.azure.management.resources.fluentcore.model.HasInner; import com.microsoft.azure.management.resources.fluentcore.model.Updatable; import java.net.URL; import java.util.List; import java.util.Map; import java.util.Set;
An immutable client-side representation of an Azure AD application.
/** * An immutable client-side representation of an Azure AD application. */
@Fluent(ContainerName = "/Microsoft.Azure.Management.Graph.RBAC.Fluent") public interface ActiveDirectoryApplication extends ActiveDirectoryObject, HasInner<ApplicationInner>, Updatable<ActiveDirectoryApplication.Update> {
Returns:the application ID
/** * @return the application ID */
String applicationId();
Returns:the application permissions
/** * @return the application permissions */
List<String> applicationPermissions();
Returns:whether the application is be available to other tenants
/** * @return whether the application is be available to other tenants */
boolean availableToOtherTenants();
Returns:a collection of URIs for the application
/** * @return a collection of URIs for the application */
Set<String> identifierUris();
Returns:a collection of reply URLs for the application
/** * @return a collection of reply URLs for the application */
Set<String> replyUrls();
Returns:the home page of the application
/** * @return the home page of the application */
URL signOnUrl();
Returns:the mapping of password credentials from their names
/** * @return the mapping of password credentials from their names */
Map<String, PasswordCredential> passwordCredentials();
Returns:the mapping of certificate credentials from their names
/** * @return the mapping of certificate credentials from their names */
Map<String, CertificateCredential> certificateCredentials(); /************************************************************** * Fluent interfaces to provision an application **************************************************************/
Container interface for all the definitions that need to be implemented.
/** * Container interface for all the definitions that need to be implemented. */
interface Definition extends DefinitionStages.Blank, DefinitionStages.WithCreate { }
Grouping of all the application definition stages.
/** * Grouping of all the application definition stages. */
interface DefinitionStages {
The first stage of the application definition.
/** * The first stage of the application definition. */
interface Blank extends WithSignOnUrl { }
The stage of application definition allowing specifying the sign on URL.
/** * The stage of application definition allowing specifying the sign on URL. */
interface WithSignOnUrl {
Specifies the sign on URL.
Params:
  • signOnUrl – the URL where users can sign in and use this app
Returns:the next stage in application definition
/** * Specifies the sign on URL. * * @param signOnUrl the URL where users can sign in and use this app * @return the next stage in application definition */
WithCreate withSignOnUrl(String signOnUrl); }
The stage of application definition allowing specifying reply URLs.
/** * The stage of application definition allowing specifying reply URLs. */
interface WithReplyUrl {
Adds a reply URL to the application.
Params:
  • replyUrl – URIs to which Azure AD will redirect in response to an OAuth 2.0 request
Returns:the next stage in application definition
/** * Adds a reply URL to the application. * * @param replyUrl URIs to which Azure AD will redirect in response to an OAuth 2.0 request * @return the next stage in application definition */
WithCreate withReplyUrl(String replyUrl); }
The stage of application definition allowing specifying identifier URLs.
/** * The stage of application definition allowing specifying identifier URLs. */
interface WithIdentifierUrl {
Adds an identifier URL to the application.
Params:
  • identifierUrl – unique URI that Azure AD can use for this app
Returns:the next stage in application definition
/** * Adds an identifier URL to the application. * * @param identifierUrl unique URI that Azure AD can use for this app * @return the next stage in application definition */
WithCreate withIdentifierUrl(String identifierUrl); }
The stage of application definition allowing specifying identifier keys.
/** * The stage of application definition allowing specifying identifier keys. */
interface WithCredential {
Starts the definition of a certificate credential.
Params:
  • name – the descriptive name of the certificate credential
Returns:the first stage in certificate credential definition
/** * Starts the definition of a certificate credential. * @param name the descriptive name of the certificate credential * @return the first stage in certificate credential definition */
CertificateCredential.DefinitionStages.Blank<WithCreate> defineCertificateCredential(String name);
Starts the definition of a password credential.
Params:
  • name – the descriptive name of the password credential
Returns:the first stage in password credential definition
/** * Starts the definition of a password credential. * @param name the descriptive name of the password credential * @return the first stage in password credential definition */
PasswordCredential.DefinitionStages.Blank<WithCreate> definePasswordCredential(String name); }
The stage of application definition allowing specifying if the application can be used in multiple tenants.
/** * The stage of application definition allowing specifying if the application can be used in multiple tenants. */
interface WithMultiTenant {
Specifies if the application can be used in multiple tenants.
Params:
  • availableToOtherTenants – true if this application is available in other tenants
Returns:the next stage in application definition
/** * Specifies if the application can be used in multiple tenants. * @param availableToOtherTenants true if this application is available in other tenants * @return the next stage in application definition */
WithCreate withAvailableToOtherTenants(boolean availableToOtherTenants); }
An application definition with sufficient inputs to create a new application in the cloud, but exposing additional optional inputs to specify.
/** * An application definition with sufficient inputs to create a new * application in the cloud, but exposing additional optional inputs to * specify. */
interface WithCreate extends Creatable<ActiveDirectoryApplication>, WithIdentifierUrl, WithReplyUrl, WithCredential, WithMultiTenant { } }
Grouping of all the application update stages.
/** * Grouping of all the application update stages. */
interface UpdateStages {
The stage of application update allowing specifying the sign on URL.
/** * The stage of application update allowing specifying the sign on URL. */
interface WithSignOnUrl {
Specifies the sign on URL.
Params:
  • signOnUrl – the URL where users can sign in and use this app
Returns:the next stage in application update
/** * Specifies the sign on URL. * * @param signOnUrl the URL where users can sign in and use this app * @return the next stage in application update */
Update withSignOnUrl(String signOnUrl); }
The stage of application update allowing specifying reply URLs.
/** * The stage of application update allowing specifying reply URLs. */
interface WithReplyUrl {
Adds a reply URL to the application.
Params:
  • replyUrl – URIs to which Azure AD will redirect in response to an OAuth 2.0 request
Returns:the next stage in application update
/** * Adds a reply URL to the application. * * @param replyUrl URIs to which Azure AD will redirect in response to an OAuth 2.0 request * @return the next stage in application update */
Update withReplyUrl(String replyUrl);
Removes a reply URL.
Params:
  • replyUrl – the reply URL to remove
Returns:the next stage in application update
/** * Removes a reply URL. * * @param replyUrl the reply URL to remove * @return the next stage in application update */
Update withoutReplyUrl(String replyUrl); }
The stage of application update allowing specifying identifier URLs.
/** * The stage of application update allowing specifying identifier URLs. */
interface WithIdentifierUrl {
Adds an identifier URL to the application.
Params:
  • identifierUrl – unique URI that Azure AD can use for this app
Returns:the next stage in application update
/** * Adds an identifier URL to the application. * * @param identifierUrl unique URI that Azure AD can use for this app * @return the next stage in application update */
Update withIdentifierUrl(String identifierUrl);
Removes an identifier URL from the application.
Params:
  • identifierUrl – identifier URI to remove
Returns:the next stage in application update
/** * Removes an identifier URL from the application. * * @param identifierUrl identifier URI to remove * @return the next stage in application update */
Update withoutIdentifierUrl(String identifierUrl); }
The stage of application update allowing specifying identifier keys.
/** * The stage of application update allowing specifying identifier keys. */
interface WithCredential {
Starts the definition of a certificate credential.
Params:
  • name – the descriptive name of the certificate credential
Returns:the first stage in certificate credential definition
/** * Starts the definition of a certificate credential. * @param name the descriptive name of the certificate credential * @return the first stage in certificate credential definition */
CertificateCredential.UpdateDefinitionStages.Blank<Update> defineCertificateCredential(String name);
Starts the definition of a password credential.
Params:
  • name – the descriptive name of the password credential
Returns:the first stage in password credential definition
/** * Starts the definition of a password credential. * @param name the descriptive name of the password credential * @return the first stage in password credential definition */
PasswordCredential.UpdateDefinitionStages.Blank<Update> definePasswordCredential(String name);
Removes a key.
Params:
  • name – the name of the key
Returns:the next stage of the application update
/** * Removes a key. * @param name the name of the key * @return the next stage of the application update */
Update withoutCredential(String name); }
The stage of application update allowing specifying if the application can be used in multiple tenants.
/** * The stage of application update allowing specifying if the application can be used in multiple tenants. */
interface WithMultiTenant {
Specifies if the application can be used in multiple tenants.
Params:
  • availableToOtherTenants – true if this application is available in other tenants
Returns:the next stage in application update
/** * Specifies if the application can be used in multiple tenants. * @param availableToOtherTenants true if this application is available in other tenants * @return the next stage in application update */
Update withAvailableToOtherTenants(boolean availableToOtherTenants); } }
The template for an application update operation, containing all the settings that can be modified.
/** * The template for an application update operation, containing all the settings that can be modified. */
interface Update extends Appliable<ActiveDirectoryApplication>, UpdateStages.WithSignOnUrl, UpdateStages.WithIdentifierUrl, UpdateStages.WithReplyUrl, UpdateStages.WithCredential, UpdateStages.WithMultiTenant { } }