|
37 | 37 | import com.google.api.core.InternalApi; |
38 | 38 | import com.google.api.core.ObsoleteApi; |
39 | 39 | import com.google.api.gax.core.ExecutorProvider; |
40 | | -import com.google.api.gax.rpc.EndpointContext; |
41 | 40 | import com.google.api.gax.rpc.FixedHeaderProvider; |
42 | 41 | import com.google.api.gax.rpc.HeaderProvider; |
43 | 42 | import com.google.api.gax.rpc.TransportChannel; |
@@ -122,7 +121,7 @@ public final class InstantiatingGrpcChannelProvider implements TransportChannelP |
122 | 121 | private final int processorCount; |
123 | 122 | private final Executor executor; |
124 | 123 | private final HeaderProvider headerProvider; |
125 | | - private final EndpointContext endpointContext; |
| 124 | + private final boolean useS2A; |
126 | 125 | private final String endpoint; |
127 | 126 | // TODO: remove. envProvider currently provides DirectPath environment variable, and is only used |
128 | 127 | // during initial rollout for DirectPath. This provider will be removed once the DirectPath |
@@ -152,7 +151,7 @@ private InstantiatingGrpcChannelProvider(Builder builder) { |
152 | 151 | this.executor = builder.executor; |
153 | 152 | this.headerProvider = builder.headerProvider; |
154 | 153 | this.endpoint = builder.endpoint; |
155 | | - this.endpointContext = builder.endpointContext; |
| 154 | + this.useS2A = builder.useS2A; |
156 | 155 | this.mtlsProvider = builder.mtlsProvider; |
157 | 156 | this.envProvider = builder.envProvider; |
158 | 157 | this.interceptorProvider = builder.interceptorProvider; |
@@ -243,14 +242,14 @@ public TransportChannelProvider withEndpoint(String endpoint) { |
243 | 242 | } |
244 | 243 |
|
245 | 244 | /** |
246 | | - * Specify the {@link EndpointContext}. |
| 245 | + * Specify whether or not to use S2A. |
247 | 246 | * |
248 | | - * @param endpointContext |
249 | | - * @return A new {@link InstantiatingGrpcChannelProvider} with the endpointContext |
| 247 | + * @param useS2A |
| 248 | + * @return A new {@link InstantiatingGrpcChannelProvider} with useS2A set. |
250 | 249 | */ |
251 | 250 | @Override |
252 | | - public TransportChannelProvider withEndpointContext(EndpointContext endpointContext) { |
253 | | - return toBuilder().setEndpointContext(endpointContext).build(); |
| 251 | + public TransportChannelProvider withUseS2A(boolean useS2A) { |
| 252 | + return toBuilder().setUseS2A(useS2A).build(); |
254 | 253 | } |
255 | 254 |
|
256 | 255 | /** @deprecated Please modify pool settings via {@link #toBuilder()} */ |
@@ -586,12 +585,13 @@ private ManagedChannel createSingleChannel() throws IOException { |
586 | 585 | // Could not create channel credentials via DCA. In accordance with |
587 | 586 | // https://google.aip.dev/auth/4115, if credentials not available through |
588 | 587 | // DCA, try mTLS with credentials held by the S2A (Secure Session Agent). |
589 | | - if (endpointContext.useS2A()) { |
| 588 | + if (useS2A) { |
590 | 589 | channelCredentials = createS2ASecuredChannelCredentials(); |
591 | 590 | } |
592 | 591 | if (channelCredentials != null) { |
593 | 592 | // Create the channel using S2A-secured channel credentials. |
594 | | - builder = Grpc.newChannelBuilder(endpointContext.mtlsEndpoint(), channelCredentials); |
| 593 | + // {@code endpoint} is set to mtlsEndpoint in {@link EndpointContext} when useS2A is true. |
| 594 | + builder = Grpc.newChannelBuilder(endpoint, channelCredentials); |
595 | 595 | } else { |
596 | 596 | // Use default if we cannot initialize channel credentials via DCA or S2A. |
597 | 597 | builder = ManagedChannelBuilder.forAddress(serviceAddress, port); |
@@ -743,7 +743,7 @@ public static final class Builder { |
743 | 743 | private Executor executor; |
744 | 744 | private HeaderProvider headerProvider; |
745 | 745 | private String endpoint; |
746 | | - private EndpointContext endpointContext; |
| 746 | + private boolean useS2A; |
747 | 747 | private EnvironmentProvider envProvider; |
748 | 748 | private MtlsProvider mtlsProvider = new MtlsProvider(); |
749 | 749 | @Nullable private GrpcInterceptorProvider interceptorProvider; |
@@ -772,7 +772,7 @@ private Builder(InstantiatingGrpcChannelProvider provider) { |
772 | 772 | this.executor = provider.executor; |
773 | 773 | this.headerProvider = provider.headerProvider; |
774 | 774 | this.endpoint = provider.endpoint; |
775 | | - this.endpointContext = provider.endpointContext; |
| 775 | + this.useS2A = provider.useS2A; |
776 | 776 | this.envProvider = provider.envProvider; |
777 | 777 | this.interceptorProvider = provider.interceptorProvider; |
778 | 778 | this.maxInboundMessageSize = provider.maxInboundMessageSize; |
@@ -841,8 +841,8 @@ public Builder setEndpoint(String endpoint) { |
841 | 841 | return this; |
842 | 842 | } |
843 | 843 |
|
844 | | - Builder setEndpointContext(EndpointContext endpointContext) { |
845 | | - this.endpointContext = endpointContext; |
| 844 | + Builder setUseS2A(boolean useS2A) { |
| 845 | + this.useS2A = useS2A; |
846 | 846 | return this; |
847 | 847 | } |
848 | 848 |
|
|
0 commit comments