Skip to content

Commit 430f772

Browse files
committed
changes as per review
1 parent 2d627aa commit 430f772

File tree

6 files changed

+54
-62
lines changed

6 files changed

+54
-62
lines changed

google-cloud-spanner/src/main/java/com/google/cloud/spanner/Backup.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,6 @@
1616

1717
package com.google.cloud.spanner;
1818

19-
import static com.google.common.base.Preconditions.checkArgument;
20-
2119
import com.google.api.client.util.Preconditions;
2220
import com.google.api.gax.longrunning.OperationFuture;
2321
import com.google.api.gax.paging.Page;
@@ -28,6 +26,8 @@
2826
import com.google.spanner.admin.database.v1.CreateBackupMetadata;
2927
import com.google.spanner.admin.database.v1.RestoreDatabaseMetadata;
3028

29+
import static com.google.common.base.Preconditions.checkArgument;
30+
3131
/**
3232
* Represents a Cloud Spanner database backup. {@code Backup} adds a layer of service related
3333
* functionality over {@code BackupInfo}.
@@ -184,7 +184,7 @@ static Backup fromProto(
184184
.setEncryptionInfo(EncryptionInfo.fromProtoOrNull(proto.getEncryptionInfo()))
185185
.setProto(proto)
186186
.setMaxExpireTime(Timestamp.fromProto(proto.getMaxExpireTime()))
187-
.setReferencingBackup(proto.getReferencingBackupsList())
187+
.addAllReferencingBackups(proto.getReferencingBackupsList())
188188
.build();
189189
}
190190

google-cloud-spanner/src/main/java/com/google/cloud/spanner/BackupInfo.java

Lines changed: 13 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -20,10 +20,11 @@
2020
import com.google.cloud.Timestamp;
2121
import com.google.cloud.spanner.encryption.BackupEncryptionConfig;
2222
import com.google.cloud.spanner.encryption.EncryptionInfo;
23-
import com.google.protobuf.ProtocolStringList;
2423
import com.google.spanner.admin.database.v1.Database;
25-
import java.util.Objects;
24+
2625
import javax.annotation.Nullable;
26+
import java.util.List;
27+
import java.util.Objects;
2728

2829
/** Represents a Cloud Spanner database backup. */
2930
public class BackupInfo {
@@ -91,14 +92,18 @@ public abstract static class Builder {
9192
*
9293
* <p>Returns the max allowed expiration time of the backup, with microseconds granularity.
9394
*/
94-
protected abstract Builder setMaxExpireTime(Timestamp maxExpireTime);
95+
protected Builder setMaxExpireTime(Timestamp maxExpireTime) {
96+
throw new UnsupportedOperationException("Unimplemented");
97+
}
9598

9699
/**
97100
* Output Only.
98101
*
99102
* <p>Returns the names of the destination backups being created by copying this source backup.
100103
*/
101-
protected abstract Builder setReferencingBackup(ProtocolStringList referencingBackup);
104+
protected Builder addAllReferencingBackups(List<String> referencingBackup) {
105+
throw new UnsupportedOperationException("Unimplemented");
106+
}
102107
}
103108

104109
abstract static class BuilderImpl extends Builder {
@@ -112,7 +117,7 @@ abstract static class BuilderImpl extends Builder {
112117
private EncryptionInfo encryptionInfo;
113118
private com.google.spanner.admin.database.v1.Backup proto;
114119
private Timestamp maxExpireTime;
115-
private ProtocolStringList referencingBackup;
120+
private List<String> referencingBackup;
116121

117122
BuilderImpl(BackupId id) {
118123
this.id = Preconditions.checkNotNull(id);
@@ -190,7 +195,7 @@ public Builder setMaxExpireTime(Timestamp maxExpireTime) {
190195
}
191196

192197
@Override
193-
public Builder setReferencingBackup(ProtocolStringList referencingBackup) {
198+
public Builder addAllReferencingBackups(List<String> referencingBackup) {
194199
this.referencingBackup = Preconditions.checkNotNull(referencingBackup);
195200
return this;
196201
}
@@ -216,7 +221,7 @@ public enum State {
216221
private final EncryptionInfo encryptionInfo;
217222
private final com.google.spanner.admin.database.v1.Backup proto;
218223
private final Timestamp maxExpireTime;
219-
private final ProtocolStringList referencingBackup;
224+
private final List<String> referencingBackup;
220225

221226
BackupInfo(BuilderImpl builder) {
222227
this.id = builder.id;
@@ -297,7 +302,7 @@ public Timestamp getMaxExpireTime() {
297302
* Returns the names of the destination backups being created by copying this source backup {@link
298303
* Backup}.
299304
*/
300-
public ProtocolStringList getReferencingBackup() {
305+
public List<String> getReferencingBackup() {
301306
return referencingBackup;
302307
}
303308

google-cloud-spanner/src/main/java/com/google/cloud/spanner/DatabaseAdminClient.java

Lines changed: 13 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -22,12 +22,7 @@
2222
import com.google.cloud.Timestamp;
2323
import com.google.cloud.spanner.Options.ListOption;
2424
import com.google.longrunning.Operation;
25-
import com.google.spanner.admin.database.v1.CopyBackupMetadata;
26-
import com.google.spanner.admin.database.v1.CreateBackupMetadata;
27-
import com.google.spanner.admin.database.v1.CreateDatabaseMetadata;
28-
import com.google.spanner.admin.database.v1.CreateDatabaseRequest;
29-
import com.google.spanner.admin.database.v1.RestoreDatabaseMetadata;
30-
import com.google.spanner.admin.database.v1.UpdateDatabaseDdlMetadata;
25+
import com.google.spanner.admin.database.v1.*;
3126
import java.util.List;
3227
import javax.annotation.Nullable;
3328

@@ -185,10 +180,10 @@ OperationFuture<Backup, CreateBackupMetadata> createBackup(
185180
* <p>Example to copy a backup.
186181
*
187182
* <pre>{@code
188-
* String instanceId = "my_instance_id";
189-
* String sourceBackupId = "source_backup_id";
190-
* String destinationBackupId = "destination_backup_id";
191-
* Timestamp expireTime = Timestamp.ofTimeMicroseconds(micros);
183+
* String instanceId ="my_instance_id";
184+
* String sourceBackupId ="source_backup_id";
185+
* String destinationBackupId ="destination_backup_id";
186+
* Timestamp expireTime =Timestamp.ofTimeMicroseconds(micros);
192187
* OperationFuture<Backup, CopyBackupMetadata> op = dbAdminClient
193188
* .copyBackup(
194189
* instanceId,
@@ -205,9 +200,10 @@ OperationFuture<Backup, CreateBackupMetadata> createBackup(
205200
* regular expression [a-z][a-z0-9_\-]*[a-z0-9] and be between 2 and 60 characters in length.
206201
* @param expireTime the time that the new backup will automatically expire.
207202
*/
208-
OperationFuture<Backup, CopyBackupMetadata> copyBackup(
209-
String instanceId, String sourceBackupId, String destinationBackupId, Timestamp expireTime)
210-
throws SpannerException;
203+
default OperationFuture<Backup, CopyBackupMetadata> copyBackup(
204+
String instanceId, String sourceBackupId, String destinationBackupId, Timestamp expireTime) {
205+
throw new UnsupportedOperationException("Unimplemented");
206+
}
211207

212208
/**
213209
* Creates a copy of backup from an existing backup in Cloud Spanner. Any configuration options in
@@ -240,8 +236,10 @@ OperationFuture<Backup, CopyBackupMetadata> copyBackup(
240236
* @param sourceBackupId the backup to be copied
241237
* @param destinationBackup the new backup to create
242238
*/
243-
OperationFuture<Backup, CopyBackupMetadata> copyBackup(
244-
BackupId sourceBackupId, Backup destinationBackup) throws SpannerException;
239+
default OperationFuture<Backup, CopyBackupMetadata> copyBackup(
240+
BackupId sourceBackupId, Backup destinationBackup) {
241+
throw new UnsupportedOperationException("Unimplemented");
242+
}
245243

246244
/**
247245
* Restore a database from a backup. The database that is restored will be created and may not

google-cloud-spanner/src/main/java/com/google/cloud/spanner/spi/v1/SpannerRpc.java

Lines changed: 6 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -33,32 +33,12 @@
3333
import com.google.longrunning.Operation;
3434
import com.google.protobuf.Empty;
3535
import com.google.protobuf.FieldMask;
36-
import com.google.spanner.admin.database.v1.Backup;
37-
import com.google.spanner.admin.database.v1.CopyBackupMetadata;
38-
import com.google.spanner.admin.database.v1.CreateBackupMetadata;
39-
import com.google.spanner.admin.database.v1.CreateDatabaseMetadata;
40-
import com.google.spanner.admin.database.v1.Database;
41-
import com.google.spanner.admin.database.v1.RestoreDatabaseMetadata;
42-
import com.google.spanner.admin.database.v1.UpdateDatabaseDdlMetadata;
36+
import com.google.spanner.admin.database.v1.*;
4337
import com.google.spanner.admin.instance.v1.CreateInstanceMetadata;
4438
import com.google.spanner.admin.instance.v1.Instance;
4539
import com.google.spanner.admin.instance.v1.InstanceConfig;
4640
import com.google.spanner.admin.instance.v1.UpdateInstanceMetadata;
47-
import com.google.spanner.v1.BeginTransactionRequest;
48-
import com.google.spanner.v1.CommitRequest;
49-
import com.google.spanner.v1.CommitResponse;
50-
import com.google.spanner.v1.ExecuteBatchDmlRequest;
51-
import com.google.spanner.v1.ExecuteBatchDmlResponse;
52-
import com.google.spanner.v1.ExecuteSqlRequest;
53-
import com.google.spanner.v1.PartialResultSet;
54-
import com.google.spanner.v1.PartitionQueryRequest;
55-
import com.google.spanner.v1.PartitionReadRequest;
56-
import com.google.spanner.v1.PartitionResponse;
57-
import com.google.spanner.v1.ReadRequest;
58-
import com.google.spanner.v1.ResultSet;
59-
import com.google.spanner.v1.RollbackRequest;
60-
import com.google.spanner.v1.Session;
61-
import com.google.spanner.v1.Transaction;
41+
import com.google.spanner.v1.*;
6242
import java.util.List;
6343
import java.util.Map;
6444
import javax.annotation.Nullable;
@@ -241,9 +221,10 @@ OperationFuture<Backup, CreateBackupMetadata> createBackup(
241221
* source backup.
242222
* @return the operation that monitors the backup creation.
243223
*/
244-
OperationFuture<Backup, CopyBackupMetadata> copyBackUp(
245-
BackupId sourceBackupId, com.google.cloud.spanner.Backup destinationBackup)
246-
throws SpannerException;
224+
default OperationFuture<Backup, CopyBackupMetadata> copyBackUp(
225+
BackupId sourceBackupId, com.google.cloud.spanner.Backup destinationBackup) {
226+
throw new UnsupportedOperationException("Unimplemented");
227+
}
247228

248229
/**
249230
* Restore a backup into the given database.

google-cloud-spanner/src/test/java/com/google/cloud/spanner/BackupTest.java

Lines changed: 17 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -16,15 +16,6 @@
1616

1717
package com.google.cloud.spanner;
1818

19-
import static com.google.common.truth.Truth.assertThat;
20-
import static org.junit.Assert.assertEquals;
21-
import static org.junit.Assert.assertNotNull;
22-
import static org.junit.Assert.assertNull;
23-
import static org.junit.Assert.assertThrows;
24-
import static org.mockito.Mockito.verify;
25-
import static org.mockito.Mockito.when;
26-
import static org.mockito.MockitoAnnotations.initMocks;
27-
2819
import com.google.cloud.Identity;
2920
import com.google.cloud.Policy;
3021
import com.google.cloud.Role;
@@ -34,19 +25,29 @@
3425
import com.google.cloud.spanner.encryption.EncryptionInfo;
3526
import com.google.rpc.Code;
3627
import com.google.rpc.Status;
37-
import java.util.Collections;
3828
import org.junit.Before;
3929
import org.junit.Test;
4030
import org.junit.runner.RunWith;
4131
import org.junit.runners.JUnit4;
4232
import org.mockito.Mock;
4333
import org.mockito.Mockito;
4434

35+
import java.util.Arrays;
36+
import java.util.Collections;
37+
38+
import static com.google.common.truth.Truth.assertThat;
39+
import static org.junit.Assert.*;
40+
import static org.mockito.Mockito.verify;
41+
import static org.mockito.Mockito.when;
42+
import static org.mockito.MockitoAnnotations.initMocks;
43+
4544
@RunWith(JUnit4.class)
4645
public class BackupTest {
4746

4847
private static final String NAME =
4948
"projects/test-project/instances/test-instance/backups/backup-1";
49+
private static final String REFERENCING_BACKUP_NAME =
50+
"projects/test-project/instances/test-instance/backups/backup-2";
5051
private static final String DB = "projects/test-project/instances/test-instance/databases/db-1";
5152
private static final Timestamp EXP_TIME = Timestamp.ofTimeSecondsAndNanos(1000L, 1000);
5253
private static final Timestamp VERSION_TIME = Timestamp.ofTimeSecondsAndNanos(2000L, 2000);
@@ -311,6 +312,9 @@ private Backup createBackup() {
311312
com.google.protobuf.Timestamp.newBuilder().setSeconds(2000L).setNanos(2000).build())
312313
.setEncryptionInfo(ENCRYPTION_INFO)
313314
.setState(com.google.spanner.admin.database.v1.Backup.State.CREATING)
315+
.setMaxExpireTime(
316+
com.google.protobuf.Timestamp.newBuilder().setSeconds(3000L).setNanos(3000).build())
317+
.addAllReferencingBackups(Arrays.asList(REFERENCING_BACKUP_NAME))
314318
.build();
315319
return Backup.fromProto(proto, dbClient);
316320
}
@@ -326,6 +330,9 @@ private Backup copyBackup() {
326330
com.google.protobuf.Timestamp.newBuilder().setSeconds(2000L).setNanos(2000).build())
327331
.setEncryptionInfo(ENCRYPTION_INFO)
328332
.setState(com.google.spanner.admin.database.v1.Backup.State.CREATING)
333+
.setMaxExpireTime(
334+
com.google.protobuf.Timestamp.newBuilder().setSeconds(3000L).setNanos(3000).build())
335+
.addAllReferencingBackups(Arrays.asList(REFERENCING_BACKUP_NAME))
329336
.build();
330337
return Backup.fromProto(proto, dbClient);
331338
}

samples/snippets/src/main/java/com/example/spanner/SpannerSample.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1661,7 +1661,8 @@ static void cancelCreateBackup(
16611661
// [END spanner_cancel_backup_create]
16621662

16631663
// [START spanner_list_backup_operations]
1664-
static void listBackupOperations(InstanceAdminClient instanceAdminClient, DatabaseId databaseId, BackupId backupId) {
1664+
static void listBackupOperations(
1665+
InstanceAdminClient instanceAdminClient, DatabaseId databaseId, BackupId backupId) {
16651666
Instance instance = instanceAdminClient.getInstance(databaseId.getInstanceId().getInstance());
16661667
// Get create backup operations for the sample database.
16671668
String filter =

0 commit comments

Comments
 (0)