/**
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for
* license information.
*
* Code generated by Microsoft (R) AutoRest Code Generator.
*/
package com.microsoft.azure.management.appservice.implementation;
import com.microsoft.azure.management.appservice.Contact;
import com.microsoft.azure.management.appservice.DomainStatus;
import com.microsoft.azure.management.appservice.ProvisioningState;
import java.util.List;
import org.joda.time.DateTime;
import com.microsoft.azure.management.appservice.HostName;
import com.microsoft.azure.management.appservice.DomainPurchaseConsent;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.microsoft.rest.serializer.JsonFlatten;
import com.microsoft.azure.Resource;
/**
* Information about a domain.
*/
@JsonFlatten
public class DomainInner extends Resource {
/**
* Administrative contact.
*/
@JsonProperty(value = "properties.contactAdmin")
private Contact contactAdmin;
/**
* Billing contact.
*/
@JsonProperty(value = "properties.contactBilling")
private Contact contactBilling;
/**
* Registrant contact.
*/
@JsonProperty(value = "properties.contactRegistrant")
private Contact contactRegistrant;
/**
* Technical contact.
*/
@JsonProperty(value = "properties.contactTech")
private Contact contactTech;
/**
* Domain registration status. Possible values include: 'Active',
* 'Awaiting', 'Cancelled', 'Confiscated', 'Disabled', 'Excluded',
* 'Expired', 'Failed', 'Held', 'Locked', 'Parked', 'Pending', 'Reserved',
* 'Reverted', 'Suspended', 'Transferred', 'Unknown', 'Unlocked',
* 'Unparked', 'Updated', 'JsonConverterFailed'.
*/
@JsonProperty(value = "properties.registrationStatus", access = JsonProperty.Access.WRITE_ONLY)
private DomainStatus registrationStatus;
/**
* Domain provisioning state. Possible values include: 'Succeeded',
* 'Failed', 'Canceled', 'InProgress', 'Deleting'.
*/
@JsonProperty(value = "properties.provisioningState", access = JsonProperty.Access.WRITE_ONLY)
private ProvisioningState provisioningState;
/**
* Name servers.
*/
@JsonProperty(value = "properties.nameServers")
private List<String> nameServers;
/**
* <code>true</code> if domain privacy is enabled for this
* domain; otherwise, <code>false</code>.
*/
@JsonProperty(value = "properties.privacy")
private Boolean privacy;
/**
* Domain creation timestamp.
*/
@JsonProperty(value = "properties.createdTime", access = JsonProperty.Access.WRITE_ONLY)
private DateTime createdTime;
/**
* Domain expiration timestamp.
*/
@JsonProperty(value = "properties.expirationTime", access = JsonProperty.Access.WRITE_ONLY)
private DateTime expirationTime;
/**
* Timestamp when the domain was renewed last time.
*/
@JsonProperty(value = "properties.lastRenewedTime", access = JsonProperty.Access.WRITE_ONLY)
private DateTime lastRenewedTime;
/**
* <code>true</code> if the domain should be automatically
* renewed; otherwise, <code>false</code>.
*/
@JsonProperty(value = "properties.autoRenew")
private Boolean autoRenew;
/**
* <code>true</code> if Azure can assign this domain to App
* Service apps; otherwise, <code>false</code>. This value will
* be <code>true</code> if domain registration status is active
* and
* it is hosted on name servers Azure has programmatic access to.
*/
@JsonProperty(value = "properties.readyForDnsRecordManagement", access = JsonProperty.Access.WRITE_ONLY)
private Boolean readyForDnsRecordManagement;
/**
* All hostnames derived from the domain and assigned to Azure resources.
*/
@JsonProperty(value = "properties.managedHostNames")
private List<HostName> managedHostNames;
/**
* Legal agreement consent.
*/
@JsonProperty(value = "properties.consent")
private DomainPurchaseConsent consent;
/**
* Reasons why domain is not renewable.
*/
@JsonProperty(value = "properties.domainNotRenewableReasons")
private List<String> domainNotRenewableReasons;
/**
* Get the contactAdmin value.
*
* @return the contactAdmin value
*/
public Contact contactAdmin() {
return this.contactAdmin;
}
/**
* Set the contactAdmin value.
*
* @param contactAdmin the contactAdmin value to set
* @return the DomainInner object itself.
*/
public DomainInner withContactAdmin(Contact contactAdmin) {
this.contactAdmin = contactAdmin;
return this;
}
/**
* Get the contactBilling value.
*
* @return the contactBilling value
*/
public Contact contactBilling() {
return this.contactBilling;
}
/**
* Set the contactBilling value.
*
* @param contactBilling the contactBilling value to set
* @return the DomainInner object itself.
*/
public DomainInner withContactBilling(Contact contactBilling) {
this.contactBilling = contactBilling;
return this;
}
/**
* Get the contactRegistrant value.
*
* @return the contactRegistrant value
*/
public Contact contactRegistrant() {
return this.contactRegistrant;
}
/**
* Set the contactRegistrant value.
*
* @param contactRegistrant the contactRegistrant value to set
* @return the DomainInner object itself.
*/
public DomainInner withContactRegistrant(Contact contactRegistrant) {
this.contactRegistrant = contactRegistrant;
return this;
}
/**
* Get the contactTech value.
*
* @return the contactTech value
*/
public Contact contactTech() {
return this.contactTech;
}
/**
* Set the contactTech value.
*
* @param contactTech the contactTech value to set
* @return the DomainInner object itself.
*/
public DomainInner withContactTech(Contact contactTech) {
this.contactTech = contactTech;
return this;
}
/**
* Get the registrationStatus value.
*
* @return the registrationStatus value
*/
public DomainStatus registrationStatus() {
return this.registrationStatus;
}
/**
* Get the provisioningState value.
*
* @return the provisioningState value
*/
public ProvisioningState provisioningState() {
return this.provisioningState;
}
/**
* Get the nameServers value.
*
* @return the nameServers value
*/
public List<String> nameServers() {
return this.nameServers;
}
/**
* Set the nameServers value.
*
* @param nameServers the nameServers value to set
* @return the DomainInner object itself.
*/
public DomainInner withNameServers(List<String> nameServers) {
this.nameServers = nameServers;
return this;
}
/**
* Get the privacy value.
*
* @return the privacy value
*/
public Boolean privacy() {
return this.privacy;
}
/**
* Set the privacy value.
*
* @param privacy the privacy value to set
* @return the DomainInner object itself.
*/
public DomainInner withPrivacy(Boolean privacy) {
this.privacy = privacy;
return this;
}
/**
* Get the createdTime value.
*
* @return the createdTime value
*/
public DateTime createdTime() {
return this.createdTime;
}
/**
* Get the expirationTime value.
*
* @return the expirationTime value
*/
public DateTime expirationTime() {
return this.expirationTime;
}
/**
* Get the lastRenewedTime value.
*
* @return the lastRenewedTime value
*/
public DateTime lastRenewedTime() {
return this.lastRenewedTime;
}
/**
* Get the autoRenew value.
*
* @return the autoRenew value
*/
public Boolean autoRenew() {
return this.autoRenew;
}
/**
* Set the autoRenew value.
*
* @param autoRenew the autoRenew value to set
* @return the DomainInner object itself.
*/
public DomainInner withAutoRenew(Boolean autoRenew) {
this.autoRenew = autoRenew;
return this;
}
/**
* Get the readyForDnsRecordManagement value.
*
* @return the readyForDnsRecordManagement value
*/
public Boolean readyForDnsRecordManagement() {
return this.readyForDnsRecordManagement;
}
/**
* Get the managedHostNames value.
*
* @return the managedHostNames value
*/
public List<HostName> managedHostNames() {
return this.managedHostNames;
}
/**
* Set the managedHostNames value.
*
* @param managedHostNames the managedHostNames value to set
* @return the DomainInner object itself.
*/
public DomainInner withManagedHostNames(List<HostName> managedHostNames) {
this.managedHostNames = managedHostNames;
return this;
}
/**
* Get the consent value.
*
* @return the consent value
*/
public DomainPurchaseConsent consent() {
return this.consent;
}
/**
* Set the consent value.
*
* @param consent the consent value to set
* @return the DomainInner object itself.
*/
public DomainInner withConsent(DomainPurchaseConsent consent) {
this.consent = consent;
return this;
}
/**
* Get the domainNotRenewableReasons value.
*
* @return the domainNotRenewableReasons value
*/
public List<String> domainNotRenewableReasons() {
return this.domainNotRenewableReasons;
}
/**
* Set the domainNotRenewableReasons value.
*
* @param domainNotRenewableReasons the domainNotRenewableReasons value to set
* @return the DomainInner object itself.
*/
public DomainInner withDomainNotRenewableReasons(List<String> domainNotRenewableReasons) {
this.domainNotRenewableReasons = domainNotRenewableReasons;
return this;
}
}