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

com.google.api.services.privateca.v1.model.CertificateConfig Maven / Gradle / Ivy

/*
 * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
 * in compliance with the License. You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software distributed under the License
 * 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.
 */
/*
 * This code was generated by https://github.com/googleapis/google-api-java-client-services/
 * Modify at your own risk.
 */

package com.google.api.services.privateca.v1.model;

/**
 * A CertificateConfig describes an X.509 certificate or CSR that is to be created, as an
 * alternative to using ASN.1.
 *
 * 

This is the Java data model class that specifies how to parse/serialize into the JSON that is * transmitted over HTTP when working with the Certificate Authority API. For a detailed explanation * see: * https://developers.google.com/api-client-library/java/google-http-java-client/json *

* * @author Google, Inc. */ @SuppressWarnings("javadoc") public final class CertificateConfig extends com.google.api.client.json.GenericJson { /** * Optional. The public key that corresponds to this config. This is, for example, used when * issuing Certificates, but not when creating a self-signed CertificateAuthority or * CertificateAuthority CSR. * The value may be {@code null}. */ @com.google.api.client.util.Key private PublicKey publicKey; /** * Required. Specifies some of the values in a certificate that are related to the subject. * The value may be {@code null}. */ @com.google.api.client.util.Key private SubjectConfig subjectConfig; /** * Required. Describes how some of the technical X.509 fields in a certificate should be * populated. * The value may be {@code null}. */ @com.google.api.client.util.Key private X509Parameters x509Config; /** * Optional. The public key that corresponds to this config. This is, for example, used when * issuing Certificates, but not when creating a self-signed CertificateAuthority or * CertificateAuthority CSR. * @return value or {@code null} for none */ public PublicKey getPublicKey() { return publicKey; } /** * Optional. The public key that corresponds to this config. This is, for example, used when * issuing Certificates, but not when creating a self-signed CertificateAuthority or * CertificateAuthority CSR. * @param publicKey publicKey or {@code null} for none */ public CertificateConfig setPublicKey(PublicKey publicKey) { this.publicKey = publicKey; return this; } /** * Required. Specifies some of the values in a certificate that are related to the subject. * @return value or {@code null} for none */ public SubjectConfig getSubjectConfig() { return subjectConfig; } /** * Required. Specifies some of the values in a certificate that are related to the subject. * @param subjectConfig subjectConfig or {@code null} for none */ public CertificateConfig setSubjectConfig(SubjectConfig subjectConfig) { this.subjectConfig = subjectConfig; return this; } /** * Required. Describes how some of the technical X.509 fields in a certificate should be * populated. * @return value or {@code null} for none */ public X509Parameters getX509Config() { return x509Config; } /** * Required. Describes how some of the technical X.509 fields in a certificate should be * populated. * @param x509Config x509Config or {@code null} for none */ public CertificateConfig setX509Config(X509Parameters x509Config) { this.x509Config = x509Config; return this; } @Override public CertificateConfig set(String fieldName, Object value) { return (CertificateConfig) super.set(fieldName, value); } @Override public CertificateConfig clone() { return (CertificateConfig) super.clone(); } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy