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.appservice;
import com.microsoft.azure.management.apigeneration.Beta;
import com.microsoft.azure.management.apigeneration.Fluent;
import com.microsoft.azure.management.resources.fluentcore.arm.models.GroupableResource;
import com.microsoft.azure.management.resources.fluentcore.model.Creatable;
import com.microsoft.azure.management.resources.fluentcore.model.Refreshable;
import com.microsoft.azure.management.appservice.implementation.AppServiceManager;
import com.microsoft.azure.management.appservice.implementation.CertificateInner;
import org.joda.time.DateTime;
import java.io.File;
import java.util.List;
An immutable client-side representation of an Azure app service certificate.
/**
* An immutable client-side representation of an Azure app service certificate.
*/
@Fluent(ContainerName = "/Microsoft.Azure.Management.AppService.Fluent")
@Beta
public interface AppServiceCertificate extends
GroupableResource<AppServiceManager, CertificateInner>,
Refreshable<AppServiceCertificate> {
Returns: the friendly name of the certificate
/**
* @return the friendly name of the certificate
*/
String friendlyName();
Returns: the subject name of the certificate
/**
* @return the subject name of the certificate
*/
String subjectName();
Returns: the host names the certificate applies to
/**
* @return the host names the certificate applies to
*/
List<String> hostNames();
Returns: the pfx blob
/**
* @return the pfx blob
*/
byte[] pfxBlob();
Returns: the app name
/**
* @return the app name
*/
String siteName();
Returns: the self link
/**
* @return the self link
*/
String selfLink();
Returns: the certificate issuer
/**
* @return the certificate issuer
*/
String issuer();
Returns: the certificate issue Date
/**
* @return the certificate issue Date
*/
DateTime issueDate();
Returns: the certificate expriration date
/**
* @return the certificate expriration date
*/
DateTime expirationDate();
Returns: the certificate password
/**
* @return the certificate password
*/
String password();
Returns: the certificate thumbprint
/**
* @return the certificate thumbprint
*/
String thumbprint();
Returns: if the certificate valid
/**
* @return if the certificate valid
*/
Boolean valid();
Returns: the raw bytes of .cer file
/**
* @return the raw bytes of .cer file
*/
byte[] certificateBlob();
Returns: the public key hash
/**
* @return the public key hash
*/
String publicKeyHash();
Returns: the specification for the App Service Environment to use for the certificate
/**
* @return the specification for the App Service Environment to use for the certificate
*/
HostingEnvironmentProfile hostingEnvironmentProfile();
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.WithGroup,
DefinitionStages.WithCertificate,
DefinitionStages.WithPfxFilePassword,
DefinitionStages.WithCreate {
}
Grouping of all the site definition stages.
/**
* Grouping of all the site definition stages.
*/
interface DefinitionStages {
An app service certificate definition allowing region to be set.
/**
* An app service certificate definition allowing region to be set.
*/
interface Blank extends GroupableResource.DefinitionWithRegion<WithGroup> {
}
An app service certificate definition allowing resource group to be set.
/**
* An app service certificate definition allowing resource group to be set.
*/
interface WithGroup extends GroupableResource.DefinitionStages.WithGroup<WithCertificate> {
}
An app service certificate definition allowing PFX certificate file to be set.
/**
* An app service certificate definition allowing PFX certificate file to be set.
*/
interface WithCertificate {
Specifies the PFX certificate file to upload.
Params: - file – the PFX certificate file
Returns: the next stage of the definition
/**
* Specifies the PFX certificate file to upload.
* @param file the PFX certificate file
* @return the next stage of the definition
*/
WithPfxFilePassword withPfxFile(File file);
Specifies the PFX byte array to upload.
Params: - pfxByteArray – the PFX byte array
Returns: the next stage of the definition
/**
* Specifies the PFX byte array to upload.
* @param pfxByteArray the PFX byte array
* @return the next stage of the definition
*/
WithPfxFilePassword withPfxByteArray(byte[] pfxByteArray);
Specifies the PFX file from a URL.
Params: - url – the URL pointing to the PFX file.
Returns: the next stage of the definition
/**
* Specifies the PFX file from a URL.
* @param url the URL pointing to the PFX file.
* @return the next stage of the definition
*/
WithPfxFilePassword withPfxFileFromUrl(String url);
Specifies the app service certificate.
Params: - certificateOrder – the app service certificate order
Returns: the next stage of the definition
/**
* Specifies the app service certificate.
* @param certificateOrder the app service certificate order
* @return the next stage of the definition
*/
WithCreate withExistingCertificateOrder(AppServiceCertificateOrder certificateOrder);
}
An app service certificate definition allowing PFX certificate password to be set.
/**
* An app service certificate definition allowing PFX certificate password to be set.
*/
interface WithPfxFilePassword {
Specifies the password to the PFX certificate.
Params: - password – the PFX certificate password
Returns: the next stage of the definition
/**
* Specifies the password to the PFX certificate.
* @param password the PFX certificate password
* @return the next stage of the definition
*/
WithCreate withPfxPassword(String password);
}
An app service certificate definition with sufficient inputs to create a new
app service certificate in the cloud, but exposing additional optional inputs to
specify.
/**
* An app service certificate definition with sufficient inputs to create a new
* app service certificate in the cloud, but exposing additional optional inputs to
* specify.
*/
interface WithCreate extends
Creatable<AppServiceCertificate> {
}
}
}