com.google.api.services.spanner.v1.model.CopyBackupRequest 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.spanner.v1.model;
/**
* The request for CopyBackup.
*
* 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 Cloud Spanner 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 CopyBackupRequest extends com.google.api.client.json.GenericJson {
/**
* Required. The id of the backup copy. The `backup_id` appended to `parent` forms the full
* backup_uri of the form `projects//instances//backups/`.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.lang.String backupId;
/**
* Optional. The encryption configuration used to encrypt the backup. If this field is not
* specified, the backup will use the same encryption configuration as the source backup by
* default, namely encryption_type = `USE_CONFIG_DEFAULT_OR_BACKUP_ENCRYPTION`.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private CopyBackupEncryptionConfig encryptionConfig;
/**
* Required. The expiration time of the backup in microsecond granularity. The expiration time
* must be at least 6 hours and at most 366 days from the `create_time` of the source backup. Once
* the `expire_time` has passed, the backup is eligible to be automatically deleted by Cloud
* Spanner to free the resources used by the backup.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private String expireTime;
/**
* Required. The source backup to be copied. The source backup needs to be in READY state for it
* to be copied. Once CopyBackup is in progress, the source backup cannot be deleted or cleaned up
* on expiration until CopyBackup is finished. Values are of the form:
* `projects//instances//backups/`.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.lang.String sourceBackup;
/**
* Required. The id of the backup copy. The `backup_id` appended to `parent` forms the full
* backup_uri of the form `projects//instances//backups/`.
* @return value or {@code null} for none
*/
public java.lang.String getBackupId() {
return backupId;
}
/**
* Required. The id of the backup copy. The `backup_id` appended to `parent` forms the full
* backup_uri of the form `projects//instances//backups/`.
* @param backupId backupId or {@code null} for none
*/
public CopyBackupRequest setBackupId(java.lang.String backupId) {
this.backupId = backupId;
return this;
}
/**
* Optional. The encryption configuration used to encrypt the backup. If this field is not
* specified, the backup will use the same encryption configuration as the source backup by
* default, namely encryption_type = `USE_CONFIG_DEFAULT_OR_BACKUP_ENCRYPTION`.
* @return value or {@code null} for none
*/
public CopyBackupEncryptionConfig getEncryptionConfig() {
return encryptionConfig;
}
/**
* Optional. The encryption configuration used to encrypt the backup. If this field is not
* specified, the backup will use the same encryption configuration as the source backup by
* default, namely encryption_type = `USE_CONFIG_DEFAULT_OR_BACKUP_ENCRYPTION`.
* @param encryptionConfig encryptionConfig or {@code null} for none
*/
public CopyBackupRequest setEncryptionConfig(CopyBackupEncryptionConfig encryptionConfig) {
this.encryptionConfig = encryptionConfig;
return this;
}
/**
* Required. The expiration time of the backup in microsecond granularity. The expiration time
* must be at least 6 hours and at most 366 days from the `create_time` of the source backup. Once
* the `expire_time` has passed, the backup is eligible to be automatically deleted by Cloud
* Spanner to free the resources used by the backup.
* @return value or {@code null} for none
*/
public String getExpireTime() {
return expireTime;
}
/**
* Required. The expiration time of the backup in microsecond granularity. The expiration time
* must be at least 6 hours and at most 366 days from the `create_time` of the source backup. Once
* the `expire_time` has passed, the backup is eligible to be automatically deleted by Cloud
* Spanner to free the resources used by the backup.
* @param expireTime expireTime or {@code null} for none
*/
public CopyBackupRequest setExpireTime(String expireTime) {
this.expireTime = expireTime;
return this;
}
/**
* Required. The source backup to be copied. The source backup needs to be in READY state for it
* to be copied. Once CopyBackup is in progress, the source backup cannot be deleted or cleaned up
* on expiration until CopyBackup is finished. Values are of the form:
* `projects//instances//backups/`.
* @return value or {@code null} for none
*/
public java.lang.String getSourceBackup() {
return sourceBackup;
}
/**
* Required. The source backup to be copied. The source backup needs to be in READY state for it
* to be copied. Once CopyBackup is in progress, the source backup cannot be deleted or cleaned up
* on expiration until CopyBackup is finished. Values are of the form:
* `projects//instances//backups/`.
* @param sourceBackup sourceBackup or {@code null} for none
*/
public CopyBackupRequest setSourceBackup(java.lang.String sourceBackup) {
this.sourceBackup = sourceBackup;
return this;
}
@Override
public CopyBackupRequest set(String fieldName, Object value) {
return (CopyBackupRequest) super.set(fieldName, value);
}
@Override
public CopyBackupRequest clone() {
return (CopyBackupRequest) super.clone();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy