Skip to content

Commit 37256a4

Browse files
feat: add some docs, use only setCredentials in DatastoreOptions (#1467)
* feat: add some docs, use only setCredentials in DatastoreOptions * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md --------- Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com>
1 parent ef741e8 commit 37256a4

File tree

4 files changed

+18
-39
lines changed

4 files changed

+18
-39
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ If you are using Maven without the BOM, add this to your dependencies:
5050
If you are using Gradle 5.x or later, add this to your dependencies:
5151

5252
```Groovy
53-
implementation platform('com.google.cloud:libraries-bom:26.39.0')
53+
implementation platform('com.google.cloud:libraries-bom:26.40.0')
5454

5555
implementation 'com.google.cloud:google-cloud-datastore'
5656
```

google-cloud-datastore/src/main/java/com/google/cloud/datastore/DatastoreOptions.java

Lines changed: 9 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@
1919
import static com.google.cloud.datastore.Validator.validateNamespace;
2020

2121
import com.google.api.core.BetaApi;
22-
import com.google.api.gax.core.CredentialsProvider;
2322
import com.google.api.gax.grpc.InstantiatingGrpcChannelProvider;
2423
import com.google.api.gax.rpc.TransportChannelProvider;
2524
import com.google.cloud.ServiceDefaults;
@@ -51,7 +50,6 @@ public class DatastoreOptions extends ServiceOptions<Datastore, DatastoreOptions
5150
public static final String LOCAL_HOST_ENV_VAR = "DATASTORE_EMULATOR_HOST";
5251

5352
private transient TransportChannelProvider channelProvider = null;
54-
private transient CredentialsProvider credentialsProvider = null;
5553

5654
private final String namespace;
5755
private final String databaseId;
@@ -89,7 +87,6 @@ public static class Builder extends ServiceOptions.Builder<Datastore, DatastoreO
8987
private String namespace;
9088
private String databaseId;
9189
private TransportChannelProvider channelProvider = null;
92-
private CredentialsProvider credentialsProvider = null;
9390
private String host;
9491
private TransportOptions transportOptions;
9592

@@ -100,7 +97,6 @@ private Builder(DatastoreOptions options) {
10097
this.namespace = options.namespace;
10198
this.databaseId = options.databaseId;
10299
this.channelProvider = validateChannelProvider(options.channelProvider);
103-
this.credentialsProvider = options.credentialsProvider;
104100
}
105101

106102
@Override
@@ -113,6 +109,9 @@ public Builder setTransportOptions(TransportOptions transportOptions) {
113109
return super.setTransportOptions(transportOptions);
114110
}
115111

112+
/**
113+
* Sets the transport to gRPC. Note this functionality is experimental and subject to change.
114+
*/
116115
@BetaApi
117116
public Builder setTransportOptions(GrpcTransportOptions transportOptions) {
118117
this.transportOptions = transportOptions;
@@ -128,6 +127,11 @@ public Builder setHost(String host) {
128127
/**
129128
* Sets the {@link TransportChannelProvider} to use with this Datastore client.
130129
*
130+
* <p>This is only compatible with clients using a gRPC transport (see {@code
131+
* DatastoreOptions#setTransportOptions(GrpcTransportOptions)} for more details).
132+
*
133+
* <p>This functionality is experimental and subject to change.
134+
*
131135
* @param channelProvider A InstantiatingGrpcChannelProvider object that defines the transport
132136
* provider for this client.
133137
*/
@@ -137,18 +141,6 @@ public Builder setChannelProvider(TransportChannelProvider channelProvider) {
137141
return this;
138142
}
139143

140-
/**
141-
* Sets the {@link CredentialsProvider} to use with this Datastore client.
142-
*
143-
* @param credentialsProvider A CredentialsProvider object that defines the credential provider
144-
* for this client.
145-
*/
146-
@BetaApi
147-
public Builder setCredentialsProvider(CredentialsProvider credentialsProvider) {
148-
this.credentialsProvider = credentialsProvider;
149-
return this;
150-
}
151-
152144
@Override
153145
public DatastoreOptions build() {
154146
if (this.host == null && this.transportOptions instanceof GrpcTransportOptions) {
@@ -183,8 +175,7 @@ private DatastoreOptions(Builder builder) {
183175
namespace = MoreObjects.firstNonNull(builder.namespace, defaultNamespace());
184176
databaseId = MoreObjects.firstNonNull(builder.databaseId, DEFAULT_DATABASE_ID);
185177

186-
if (getTransportOptions() instanceof HttpTransportOptions
187-
&& (builder.channelProvider != null || builder.credentialsProvider != null)) {
178+
if (getTransportOptions() instanceof HttpTransportOptions && builder.channelProvider != null) {
188179
throw new IllegalArgumentException(
189180
"Only gRPC transport allows setting of channel provider or credentials provider");
190181
} else if (getTransportOptions() instanceof GrpcTransportOptions) {
@@ -193,18 +184,9 @@ private DatastoreOptions(Builder builder) {
193184
? builder.channelProvider
194185
: GrpcTransportOptions.setUpChannelProvider(
195186
DatastoreSettings.defaultGrpcTransportProviderBuilder(), this);
196-
197-
this.credentialsProvider =
198-
builder.credentialsProvider != null
199-
? builder.credentialsProvider
200-
: GrpcTransportOptions.setUpCredentialsProvider(this);
201187
}
202188
}
203189

204-
public CredentialsProvider getCredentialsProvider() {
205-
return credentialsProvider;
206-
}
207-
208190
public TransportChannelProvider getTransportChannelProvider() {
209191
return channelProvider;
210192
}

google-cloud-datastore/src/main/java/com/google/cloud/datastore/spi/v1/GrpcDatastoreRpc.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@
3636
import com.google.cloud.datastore.v1.DatastoreSettings;
3737
import com.google.cloud.datastore.v1.stub.DatastoreStubSettings;
3838
import com.google.cloud.datastore.v1.stub.GrpcDatastoreStub;
39+
import com.google.cloud.grpc.GrpcTransportOptions;
3940
import com.google.common.base.Strings;
4041
import com.google.datastore.v1.AllocateIdsRequest;
4142
import com.google.datastore.v1.AllocateIdsResponse;
@@ -169,7 +170,8 @@ private ClientContext getClientContext(DatastoreOptions datastoreOptions) throws
169170

170171
DatastoreSettingsBuilder settingsBuilder =
171172
new DatastoreSettingsBuilder(DatastoreSettings.newBuilder().build());
172-
settingsBuilder.setCredentialsProvider(datastoreOptions.getCredentialsProvider());
173+
settingsBuilder.setCredentialsProvider(
174+
GrpcTransportOptions.setUpCredentialsProvider(datastoreOptions));
173175
settingsBuilder.setTransportChannelProvider(datastoreOptions.getTransportChannelProvider());
174176
settingsBuilder.setInternalHeaderProvider(internalHeaderProvider);
175177
settingsBuilder.setHeaderProvider(

google-cloud-datastore/src/test/java/com/google/cloud/datastore/DatastoreOptionsTest.java

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@
2222
import static org.junit.Assert.assertSame;
2323
import static org.junit.Assert.assertTrue;
2424

25-
import com.google.api.gax.core.NoCredentialsProvider;
2625
import com.google.api.gax.grpc.ChannelPoolSettings;
2726
import com.google.api.gax.grpc.InstantiatingGrpcChannelProvider;
2827
import com.google.cloud.NoCredentials;
@@ -92,7 +91,6 @@ public void testDatastore() {
9291

9392
@Test
9493
public void testCustomChannelAndCredentials() {
95-
NoCredentialsProvider noCredentialsProvider = NoCredentialsProvider.create();
9694
InstantiatingGrpcChannelProvider channelProvider =
9795
DatastoreSettings.defaultGrpcTransportProviderBuilder()
9896
.setChannelPoolSettings(
@@ -108,11 +106,10 @@ public void testCustomChannelAndCredentials() {
108106
.setDatabaseId(DATABASE_ID)
109107
.setTransportOptions(GrpcTransportOptions.newBuilder().build())
110108
.setChannelProvider(channelProvider)
111-
.setCredentialsProvider(noCredentialsProvider)
109+
.setCredentials(NoCredentials.getInstance())
112110
.setHost("http://localhost:" + PORT)
113111
.build();
114112
assertEquals(datastoreOptions.getTransportChannelProvider(), channelProvider);
115-
assertEquals(datastoreOptions.getCredentialsProvider(), noCredentialsProvider);
116113
}
117114

118115
@Test
@@ -131,7 +128,7 @@ public void testInvalidConfigForHttp() {
131128
.setMaxChannelCount(20)
132129
.build())
133130
.build())
134-
.setCredentialsProvider(NoCredentialsProvider.create())
131+
.setCredentials(NoCredentials.getInstance())
135132
.setHost("http://localhost:" + PORT);
136133
Assert.assertThrows(IllegalArgumentException.class, options::build);
137134
}
@@ -146,11 +143,9 @@ public void testTransport() {
146143
DatastoreOptions.newBuilder()
147144
.setTransportOptions(GrpcTransportOptions.newBuilder().build())
148145
.setProjectId(PROJECT_ID)
149-
.setCredentialsProvider(NoCredentialsProvider.create())
146+
.setCredentials(NoCredentials.getInstance())
150147
.build();
151148
assertThat(grpcTransportOptions.getTransportOptions()).isInstanceOf(GrpcTransportOptions.class);
152-
assertThat(grpcTransportOptions.getCredentialsProvider())
153-
.isInstanceOf(NoCredentialsProvider.class);
154149
assertThat(grpcTransportOptions.getTransportChannelProvider())
155150
.isInstanceOf(InstantiatingGrpcChannelProvider.class);
156151
}
@@ -161,7 +156,7 @@ public void testHostWithGrpcAndHttp() {
161156
DatastoreOptions.newBuilder()
162157
.setTransportOptions(GrpcTransportOptions.newBuilder().build())
163158
.setProjectId(PROJECT_ID)
164-
.setCredentialsProvider(NoCredentialsProvider.create())
159+
.setCredentials(NoCredentials.getInstance())
165160
.build();
166161
assertThat(grpcTransportOptions.getHost()).isEqualTo(DatastoreSettings.getDefaultEndpoint());
167162
assertThat(grpcTransportOptions.getHost()).isEqualTo("datastore.googleapis.com:443");
@@ -172,7 +167,7 @@ public void testHostWithGrpcAndHttp() {
172167
.setTransportOptions(GrpcTransportOptions.newBuilder().build())
173168
.setHost(customHost)
174169
.setProjectId(PROJECT_ID)
175-
.setCredentialsProvider(NoCredentialsProvider.create())
170+
.setCredentials(NoCredentials.getInstance())
176171
.build();
177172
assertThat(grpcTransportOptionsCustomHost.getHost()).isEqualTo(customHost);
178173

0 commit comments

Comments
 (0)