All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.amazonaws.services.cloudfront.model.ViewerCertificate Maven / Gradle / Ivy

/*
 * Copyright 2010-2014 Amazon.com, Inc. or its affiliates. All Rights Reserved.
 * 
 * Licensed under the Apache License, Version 2.0 (the "License").
 * You may not use this file except in compliance with the License.
 * A copy of the License is located at
 * 
 *  http://aws.amazon.com/apache2.0
 * 
 * or in the "license" file accompanying this file. This file is distributed
 * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
 * express or implied. See the License for the specific language governing
 * permissions and limitations under the License.
 */
package com.amazonaws.services.cloudfront.model;

import java.io.Serializable;

/**
 * 

* A complex type that contains information about viewer certificates * for this distribution. *

*/ public class ViewerCertificate implements Serializable { /** * If you want viewers to use HTTPS to request your objects and you're * using an alternate domain name in your object URLs (for example, * https://example.com/logo.jpg), specify the IAM certificate identifier * of the custom viewer certificate for this distribution. Specify either * this value or CloudFrontDefaultCertificate. */ private String iAMCertificateId; /** * If you want viewers to use HTTPS to request your objects and you're * using the CloudFront domain name of your distribution in your object * URLs (for example, https://d111111abcdef8.cloudfront.net/logo.jpg), * set to true. Omit this value if you are setting an IAMCertificateId. */ private Boolean cloudFrontDefaultCertificate; /** * If you specify a value for IAMCertificateId, you must also specify how * you want CloudFront to serve HTTPS requests. Valid values are vip and * sni-only. If you specify vip, CloudFront uses dedicated IP addresses * for your content and can respond to HTTPS requests from any viewer. * However, you must request permission to use this feature, and you * incur additional monthly charges. If you specify sni-only, CloudFront * can only respond to HTTPS requests from viewers that support Server * Name Indication (SNI). All modern browsers support SNI, but some * browsers still in use don't support SNI. Do not specify a value for * SSLSupportMethod if you specified true for * CloudFrontDefaultCertificate. *

* Constraints:
* Allowed Values: sni-only, vip */ private String sSLSupportMethod; /** * If you want viewers to use HTTPS to request your objects and you're * using an alternate domain name in your object URLs (for example, * https://example.com/logo.jpg), specify the IAM certificate identifier * of the custom viewer certificate for this distribution. Specify either * this value or CloudFrontDefaultCertificate. * * @return If you want viewers to use HTTPS to request your objects and you're * using an alternate domain name in your object URLs (for example, * https://example.com/logo.jpg), specify the IAM certificate identifier * of the custom viewer certificate for this distribution. Specify either * this value or CloudFrontDefaultCertificate. */ public String getIAMCertificateId() { return iAMCertificateId; } /** * If you want viewers to use HTTPS to request your objects and you're * using an alternate domain name in your object URLs (for example, * https://example.com/logo.jpg), specify the IAM certificate identifier * of the custom viewer certificate for this distribution. Specify either * this value or CloudFrontDefaultCertificate. * * @param iAMCertificateId If you want viewers to use HTTPS to request your objects and you're * using an alternate domain name in your object URLs (for example, * https://example.com/logo.jpg), specify the IAM certificate identifier * of the custom viewer certificate for this distribution. Specify either * this value or CloudFrontDefaultCertificate. */ public void setIAMCertificateId(String iAMCertificateId) { this.iAMCertificateId = iAMCertificateId; } /** * If you want viewers to use HTTPS to request your objects and you're * using an alternate domain name in your object URLs (for example, * https://example.com/logo.jpg), specify the IAM certificate identifier * of the custom viewer certificate for this distribution. Specify either * this value or CloudFrontDefaultCertificate. *

* Returns a reference to this object so that method calls can be chained together. * * @param iAMCertificateId If you want viewers to use HTTPS to request your objects and you're * using an alternate domain name in your object URLs (for example, * https://example.com/logo.jpg), specify the IAM certificate identifier * of the custom viewer certificate for this distribution. Specify either * this value or CloudFrontDefaultCertificate. * * @return A reference to this updated object so that method calls can be chained * together. */ public ViewerCertificate withIAMCertificateId(String iAMCertificateId) { this.iAMCertificateId = iAMCertificateId; return this; } /** * If you want viewers to use HTTPS to request your objects and you're * using the CloudFront domain name of your distribution in your object * URLs (for example, https://d111111abcdef8.cloudfront.net/logo.jpg), * set to true. Omit this value if you are setting an IAMCertificateId. * * @return If you want viewers to use HTTPS to request your objects and you're * using the CloudFront domain name of your distribution in your object * URLs (for example, https://d111111abcdef8.cloudfront.net/logo.jpg), * set to true. Omit this value if you are setting an IAMCertificateId. */ public Boolean isCloudFrontDefaultCertificate() { return cloudFrontDefaultCertificate; } /** * If you want viewers to use HTTPS to request your objects and you're * using the CloudFront domain name of your distribution in your object * URLs (for example, https://d111111abcdef8.cloudfront.net/logo.jpg), * set to true. Omit this value if you are setting an IAMCertificateId. * * @param cloudFrontDefaultCertificate If you want viewers to use HTTPS to request your objects and you're * using the CloudFront domain name of your distribution in your object * URLs (for example, https://d111111abcdef8.cloudfront.net/logo.jpg), * set to true. Omit this value if you are setting an IAMCertificateId. */ public void setCloudFrontDefaultCertificate(Boolean cloudFrontDefaultCertificate) { this.cloudFrontDefaultCertificate = cloudFrontDefaultCertificate; } /** * If you want viewers to use HTTPS to request your objects and you're * using the CloudFront domain name of your distribution in your object * URLs (for example, https://d111111abcdef8.cloudfront.net/logo.jpg), * set to true. Omit this value if you are setting an IAMCertificateId. *

* Returns a reference to this object so that method calls can be chained together. * * @param cloudFrontDefaultCertificate If you want viewers to use HTTPS to request your objects and you're * using the CloudFront domain name of your distribution in your object * URLs (for example, https://d111111abcdef8.cloudfront.net/logo.jpg), * set to true. Omit this value if you are setting an IAMCertificateId. * * @return A reference to this updated object so that method calls can be chained * together. */ public ViewerCertificate withCloudFrontDefaultCertificate(Boolean cloudFrontDefaultCertificate) { this.cloudFrontDefaultCertificate = cloudFrontDefaultCertificate; return this; } /** * If you want viewers to use HTTPS to request your objects and you're * using the CloudFront domain name of your distribution in your object * URLs (for example, https://d111111abcdef8.cloudfront.net/logo.jpg), * set to true. Omit this value if you are setting an IAMCertificateId. * * @return If you want viewers to use HTTPS to request your objects and you're * using the CloudFront domain name of your distribution in your object * URLs (for example, https://d111111abcdef8.cloudfront.net/logo.jpg), * set to true. Omit this value if you are setting an IAMCertificateId. */ public Boolean getCloudFrontDefaultCertificate() { return cloudFrontDefaultCertificate; } /** * If you specify a value for IAMCertificateId, you must also specify how * you want CloudFront to serve HTTPS requests. Valid values are vip and * sni-only. If you specify vip, CloudFront uses dedicated IP addresses * for your content and can respond to HTTPS requests from any viewer. * However, you must request permission to use this feature, and you * incur additional monthly charges. If you specify sni-only, CloudFront * can only respond to HTTPS requests from viewers that support Server * Name Indication (SNI). All modern browsers support SNI, but some * browsers still in use don't support SNI. Do not specify a value for * SSLSupportMethod if you specified true for * CloudFrontDefaultCertificate. *

* Constraints:
* Allowed Values: sni-only, vip * * @return If you specify a value for IAMCertificateId, you must also specify how * you want CloudFront to serve HTTPS requests. Valid values are vip and * sni-only. If you specify vip, CloudFront uses dedicated IP addresses * for your content and can respond to HTTPS requests from any viewer. * However, you must request permission to use this feature, and you * incur additional monthly charges. If you specify sni-only, CloudFront * can only respond to HTTPS requests from viewers that support Server * Name Indication (SNI). All modern browsers support SNI, but some * browsers still in use don't support SNI. Do not specify a value for * SSLSupportMethod if you specified true for * CloudFrontDefaultCertificate. * * @see SSLSupportMethod */ public String getSSLSupportMethod() { return sSLSupportMethod; } /** * If you specify a value for IAMCertificateId, you must also specify how * you want CloudFront to serve HTTPS requests. Valid values are vip and * sni-only. If you specify vip, CloudFront uses dedicated IP addresses * for your content and can respond to HTTPS requests from any viewer. * However, you must request permission to use this feature, and you * incur additional monthly charges. If you specify sni-only, CloudFront * can only respond to HTTPS requests from viewers that support Server * Name Indication (SNI). All modern browsers support SNI, but some * browsers still in use don't support SNI. Do not specify a value for * SSLSupportMethod if you specified true for * CloudFrontDefaultCertificate. *

* Constraints:
* Allowed Values: sni-only, vip * * @param sSLSupportMethod If you specify a value for IAMCertificateId, you must also specify how * you want CloudFront to serve HTTPS requests. Valid values are vip and * sni-only. If you specify vip, CloudFront uses dedicated IP addresses * for your content and can respond to HTTPS requests from any viewer. * However, you must request permission to use this feature, and you * incur additional monthly charges. If you specify sni-only, CloudFront * can only respond to HTTPS requests from viewers that support Server * Name Indication (SNI). All modern browsers support SNI, but some * browsers still in use don't support SNI. Do not specify a value for * SSLSupportMethod if you specified true for * CloudFrontDefaultCertificate. * * @see SSLSupportMethod */ public void setSSLSupportMethod(String sSLSupportMethod) { this.sSLSupportMethod = sSLSupportMethod; } /** * If you specify a value for IAMCertificateId, you must also specify how * you want CloudFront to serve HTTPS requests. Valid values are vip and * sni-only. If you specify vip, CloudFront uses dedicated IP addresses * for your content and can respond to HTTPS requests from any viewer. * However, you must request permission to use this feature, and you * incur additional monthly charges. If you specify sni-only, CloudFront * can only respond to HTTPS requests from viewers that support Server * Name Indication (SNI). All modern browsers support SNI, but some * browsers still in use don't support SNI. Do not specify a value for * SSLSupportMethod if you specified true for * CloudFrontDefaultCertificate. *

* Returns a reference to this object so that method calls can be chained together. *

* Constraints:
* Allowed Values: sni-only, vip * * @param sSLSupportMethod If you specify a value for IAMCertificateId, you must also specify how * you want CloudFront to serve HTTPS requests. Valid values are vip and * sni-only. If you specify vip, CloudFront uses dedicated IP addresses * for your content and can respond to HTTPS requests from any viewer. * However, you must request permission to use this feature, and you * incur additional monthly charges. If you specify sni-only, CloudFront * can only respond to HTTPS requests from viewers that support Server * Name Indication (SNI). All modern browsers support SNI, but some * browsers still in use don't support SNI. Do not specify a value for * SSLSupportMethod if you specified true for * CloudFrontDefaultCertificate. * * @return A reference to this updated object so that method calls can be chained * together. * * @see SSLSupportMethod */ public ViewerCertificate withSSLSupportMethod(String sSLSupportMethod) { this.sSLSupportMethod = sSLSupportMethod; return this; } /** * If you specify a value for IAMCertificateId, you must also specify how * you want CloudFront to serve HTTPS requests. Valid values are vip and * sni-only. If you specify vip, CloudFront uses dedicated IP addresses * for your content and can respond to HTTPS requests from any viewer. * However, you must request permission to use this feature, and you * incur additional monthly charges. If you specify sni-only, CloudFront * can only respond to HTTPS requests from viewers that support Server * Name Indication (SNI). All modern browsers support SNI, but some * browsers still in use don't support SNI. Do not specify a value for * SSLSupportMethod if you specified true for * CloudFrontDefaultCertificate. *

* Constraints:
* Allowed Values: sni-only, vip * * @param sSLSupportMethod If you specify a value for IAMCertificateId, you must also specify how * you want CloudFront to serve HTTPS requests. Valid values are vip and * sni-only. If you specify vip, CloudFront uses dedicated IP addresses * for your content and can respond to HTTPS requests from any viewer. * However, you must request permission to use this feature, and you * incur additional monthly charges. If you specify sni-only, CloudFront * can only respond to HTTPS requests from viewers that support Server * Name Indication (SNI). All modern browsers support SNI, but some * browsers still in use don't support SNI. Do not specify a value for * SSLSupportMethod if you specified true for * CloudFrontDefaultCertificate. * * @see SSLSupportMethod */ public void setSSLSupportMethod(SSLSupportMethod sSLSupportMethod) { this.sSLSupportMethod = sSLSupportMethod.toString(); } /** * If you specify a value for IAMCertificateId, you must also specify how * you want CloudFront to serve HTTPS requests. Valid values are vip and * sni-only. If you specify vip, CloudFront uses dedicated IP addresses * for your content and can respond to HTTPS requests from any viewer. * However, you must request permission to use this feature, and you * incur additional monthly charges. If you specify sni-only, CloudFront * can only respond to HTTPS requests from viewers that support Server * Name Indication (SNI). All modern browsers support SNI, but some * browsers still in use don't support SNI. Do not specify a value for * SSLSupportMethod if you specified true for * CloudFrontDefaultCertificate. *

* Returns a reference to this object so that method calls can be chained together. *

* Constraints:
* Allowed Values: sni-only, vip * * @param sSLSupportMethod If you specify a value for IAMCertificateId, you must also specify how * you want CloudFront to serve HTTPS requests. Valid values are vip and * sni-only. If you specify vip, CloudFront uses dedicated IP addresses * for your content and can respond to HTTPS requests from any viewer. * However, you must request permission to use this feature, and you * incur additional monthly charges. If you specify sni-only, CloudFront * can only respond to HTTPS requests from viewers that support Server * Name Indication (SNI). All modern browsers support SNI, but some * browsers still in use don't support SNI. Do not specify a value for * SSLSupportMethod if you specified true for * CloudFrontDefaultCertificate. * * @return A reference to this updated object so that method calls can be chained * together. * * @see SSLSupportMethod */ public ViewerCertificate withSSLSupportMethod(SSLSupportMethod sSLSupportMethod) { this.sSLSupportMethod = sSLSupportMethod.toString(); return this; } /** * Returns a string representation of this object; useful for testing and * debugging. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getIAMCertificateId() != null) sb.append("IAMCertificateId: " + getIAMCertificateId() + ","); if (isCloudFrontDefaultCertificate() != null) sb.append("CloudFrontDefaultCertificate: " + isCloudFrontDefaultCertificate() + ","); if (getSSLSupportMethod() != null) sb.append("SSLSupportMethod: " + getSSLSupportMethod() ); sb.append("}"); return sb.toString(); } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getIAMCertificateId() == null) ? 0 : getIAMCertificateId().hashCode()); hashCode = prime * hashCode + ((isCloudFrontDefaultCertificate() == null) ? 0 : isCloudFrontDefaultCertificate().hashCode()); hashCode = prime * hashCode + ((getSSLSupportMethod() == null) ? 0 : getSSLSupportMethod().hashCode()); return hashCode; } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof ViewerCertificate == false) return false; ViewerCertificate other = (ViewerCertificate)obj; if (other.getIAMCertificateId() == null ^ this.getIAMCertificateId() == null) return false; if (other.getIAMCertificateId() != null && other.getIAMCertificateId().equals(this.getIAMCertificateId()) == false) return false; if (other.isCloudFrontDefaultCertificate() == null ^ this.isCloudFrontDefaultCertificate() == null) return false; if (other.isCloudFrontDefaultCertificate() != null && other.isCloudFrontDefaultCertificate().equals(this.isCloudFrontDefaultCertificate()) == false) return false; if (other.getSSLSupportMethod() == null ^ this.getSSLSupportMethod() == null) return false; if (other.getSSLSupportMethod() != null && other.getSSLSupportMethod().equals(this.getSSLSupportMethod()) == false) return false; return true; } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy