# encoding: utf-8 # Code generated by Microsoft (R) AutoRest Code Generator. # Changes may cause incorrect behavior and will be lost if the code is # regenerated. module Azure::Web::Mgmt::V2020_09_01 module Models # # SSL certificate purchase order. # class AppServiceCertificateOrder < Resource include MsRestAzure # @return [Hash{String => AppServiceCertificate}] State of the Key Vault # secret. attr_accessor :certificates # @return [String] Certificate distinguished name. attr_accessor :distinguished_name # @return [String] Domain verification token. attr_accessor :domain_verification_token # @return [Integer] Duration in years (must be between 1 and 3). Default # value: 1 . attr_accessor :validity_in_years # @return [Integer] Certificate key size. Default value: 2048 . attr_accessor :key_size # @return [CertificateProductType] Certificate product type. Possible # values include: 'StandardDomainValidatedSsl', # 'StandardDomainValidatedWildCardSsl' attr_accessor :product_type # @return [Boolean] true if the certificate should be # automatically renewed when it expires; otherwise, false. # Default value: true . attr_accessor :auto_renew # @return [ProvisioningState] Status of certificate order. Possible # values include: 'Succeeded', 'Failed', 'Canceled', 'InProgress', # 'Deleting' attr_accessor :provisioning_state # @return [CertificateOrderStatus] Current order status. Possible values # include: 'Pendingissuance', 'Issued', 'Revoked', 'Canceled', 'Denied', # 'Pendingrevocation', 'PendingRekey', 'Unused', 'Expired', # 'NotSubmitted' attr_accessor :status # @return [CertificateDetails] Signed certificate. attr_accessor :signed_certificate # @return [String] Last CSR that was created for this order. attr_accessor :csr # @return [CertificateDetails] Intermediate certificate. attr_accessor :intermediate # @return [CertificateDetails] Root certificate. attr_accessor :root # @return [String] Current serial number of the certificate. attr_accessor :serial_number # @return [DateTime] Certificate last issuance time. attr_accessor :last_certificate_issuance_time # @return [DateTime] Certificate expiration time. attr_accessor :expiration_time # @return [Boolean] true if private key is external; # otherwise, false. attr_accessor :is_private_key_external # @return [Array] Reasons why App Service Certificate is not # renewable at the current moment. attr_accessor :app_service_certificate_not_renewable_reasons # @return [DateTime] Time stamp when the certificate would be auto # renewed next attr_accessor :next_auto_renewal_time_stamp # # Mapper for AppServiceCertificateOrder class as Ruby Hash. # This will be used for serialization/deserialization. # def self.mapper() { client_side_validation: true, required: false, serialized_name: 'AppServiceCertificateOrder', type: { name: 'Composite', class_name: 'AppServiceCertificateOrder', model_properties: { id: { client_side_validation: true, required: false, read_only: true, serialized_name: 'id', type: { name: 'String' } }, name: { client_side_validation: true, required: false, read_only: true, serialized_name: 'name', type: { name: 'String' } }, kind: { client_side_validation: true, required: false, serialized_name: 'kind', type: { name: 'String' } }, location: { client_side_validation: true, required: true, serialized_name: 'location', type: { name: 'String' } }, type: { client_side_validation: true, required: false, read_only: true, serialized_name: 'type', type: { name: 'String' } }, tags: { client_side_validation: true, required: false, serialized_name: 'tags', type: { name: 'Dictionary', value: { client_side_validation: true, required: false, serialized_name: 'StringElementType', type: { name: 'String' } } } }, system_data: { client_side_validation: true, required: false, serialized_name: 'systemData', type: { name: 'Composite', class_name: 'SystemData' } }, certificates: { client_side_validation: true, required: false, serialized_name: 'properties.certificates', type: { name: 'Dictionary', value: { client_side_validation: true, required: false, serialized_name: 'AppServiceCertificateElementType', type: { name: 'Composite', class_name: 'AppServiceCertificate' } } } }, distinguished_name: { client_side_validation: true, required: false, serialized_name: 'properties.distinguishedName', type: { name: 'String' } }, domain_verification_token: { client_side_validation: true, required: false, read_only: true, serialized_name: 'properties.domainVerificationToken', type: { name: 'String' } }, validity_in_years: { client_side_validation: true, required: false, serialized_name: 'properties.validityInYears', default_value: 1, constraints: { InclusiveMaximum: 3, InclusiveMinimum: 1 }, type: { name: 'Number' } }, key_size: { client_side_validation: true, required: false, serialized_name: 'properties.keySize', default_value: 2048, type: { name: 'Number' } }, product_type: { client_side_validation: true, required: false, serialized_name: 'properties.productType', type: { name: 'Enum', module: 'CertificateProductType' } }, auto_renew: { client_side_validation: true, required: false, serialized_name: 'properties.autoRenew', default_value: true, type: { name: 'Boolean' } }, provisioning_state: { client_side_validation: true, required: false, read_only: true, serialized_name: 'properties.provisioningState', type: { name: 'Enum', module: 'ProvisioningState' } }, status: { client_side_validation: true, required: false, read_only: true, serialized_name: 'properties.status', type: { name: 'Enum', module: 'CertificateOrderStatus' } }, signed_certificate: { client_side_validation: true, required: false, read_only: true, serialized_name: 'properties.signedCertificate', type: { name: 'Composite', class_name: 'CertificateDetails' } }, csr: { client_side_validation: true, required: false, serialized_name: 'properties.csr', type: { name: 'String' } }, intermediate: { client_side_validation: true, required: false, read_only: true, serialized_name: 'properties.intermediate', type: { name: 'Composite', class_name: 'CertificateDetails' } }, root: { client_side_validation: true, required: false, read_only: true, serialized_name: 'properties.root', type: { name: 'Composite', class_name: 'CertificateDetails' } }, serial_number: { client_side_validation: true, required: false, read_only: true, serialized_name: 'properties.serialNumber', type: { name: 'String' } }, last_certificate_issuance_time: { client_side_validation: true, required: false, read_only: true, serialized_name: 'properties.lastCertificateIssuanceTime', type: { name: 'DateTime' } }, expiration_time: { client_side_validation: true, required: false, read_only: true, serialized_name: 'properties.expirationTime', type: { name: 'DateTime' } }, is_private_key_external: { client_side_validation: true, required: false, read_only: true, serialized_name: 'properties.isPrivateKeyExternal', type: { name: 'Boolean' } }, app_service_certificate_not_renewable_reasons: { client_side_validation: true, required: false, read_only: true, serialized_name: 'properties.appServiceCertificateNotRenewableReasons', type: { name: 'Sequence', element: { client_side_validation: true, required: false, serialized_name: 'enumElementType', type: { name: 'String' } } } }, next_auto_renewal_time_stamp: { client_side_validation: true, required: false, read_only: true, serialized_name: 'properties.nextAutoRenewalTimeStamp', type: { name: 'DateTime' } } } } } end end end end