Skip to content

Commit

Permalink
feat: add mTLS feature
Browse files Browse the repository at this point in the history
  • Loading branch information
arithmetic1728 committed Jun 1, 2021
1 parent 8f6f40e commit f684c5b
Show file tree
Hide file tree
Showing 25 changed files with 133 additions and 15 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,8 @@ public class SettingsCommentComposer {
toSimpleComment("Returns a builder for the default ExecutorProvider for this service.");
public static final CommentStatement DEFAULT_SERVICE_ENDPOINT_METHOD_COMMENT =
toSimpleComment("Returns the default service endpoint.");
public static final CommentStatement DEFAULT_SERVICE_MTLS_ENDPOINT_METHOD_COMMENT =
toSimpleComment("Returns the default mTLS service endpoint.");
public static final CommentStatement DEFAULT_SERVICE_SCOPES_METHOD_COMMENT =
toSimpleComment("Returns the default service scopes.");

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,7 @@
import com.google.api.generator.engine.ast.MethodDefinition;
import com.google.api.generator.engine.ast.MethodInvocationExpr;
import com.google.api.generator.engine.ast.NewObjectExpr;
import com.google.api.generator.engine.ast.PrimitiveValue;
import com.google.api.generator.engine.ast.Reference;
import com.google.api.generator.engine.ast.ReferenceConstructorExpr;
import com.google.api.generator.engine.ast.RelationalOperationExpr;
Expand Down Expand Up @@ -918,6 +919,22 @@ private List<MethodDefinition> createDefaultHelperAndGetterMethods(
.setReturnExpr(ValueExpr.withValue(StringObjectValue.withValue(service.defaultHost())))
.build());

// Create the getDefaultMtlsEndpoint method.
returnType = TypeNode.STRING;
javaMethods.add(
MethodDefinition.builder()
.setHeaderCommentStatements(
SettingsCommentComposer.DEFAULT_SERVICE_MTLS_ENDPOINT_METHOD_COMMENT)
.setScope(ScopeNode.PUBLIC)
.setIsStatic(true)
.setReturnType(returnType)
.setName("getDefaultMtlsEndpoint")
.setReturnExpr(
ValueExpr.withValue(
StringObjectValue.withValue(
service.defaultHost().replace(".googleapis.com", ".mtls.googleapis.com"))))
.build());

// Create the getDefaultServiceScopes method.
returnType =
TypeNode.withReference(
Expand Down Expand Up @@ -1594,6 +1611,21 @@ private static MethodDefinition createNestedClassCreateDefaultMethod(TypeStore t
.setArguments(
MethodInvocationExpr.builder().setMethodName("getDefaultEndpoint").build())
.build());
bodyExprs.add(
MethodInvocationExpr.builder()
.setExprReferenceExpr(builderVarExpr)
.setMethodName("setMtlsEndpoint")
.setArguments(
MethodInvocationExpr.builder().setMethodName("getDefaultMtlsEndpoint").build())
.build());
bodyExprs.add(
MethodInvocationExpr.builder()
.setExprReferenceExpr(builderVarExpr)
.setMethodName("setSwitchToMtlsEndpointAllowed")
.setArguments(
ValueExpr.withValue(
PrimitiveValue.builder().setType(TypeNode.BOOLEAN).setValue("true").build()))
.build());
bodyStatements.addAll(
bodyExprs.stream().map(e -> ExprStatement.withExpr(e)).collect(Collectors.toList()));
bodyStatements.add(EMPTY_LINE_STATEMENT);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -52,10 +52,10 @@

@Generated("by gapic-generator-java")
public class AssetServiceClientTest {
private static MockAssetService mockAssetService;
private static MockServiceHelper mockServiceHelper;
private AssetServiceClient client;
private LocalChannelProvider channelProvider;
private static MockAssetService mockAssetService;

@BeforeClass
public static void startStaticServer() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -375,6 +375,11 @@ public static String getDefaultEndpoint() {
return "cloudasset.googleapis.com:443";
}

/** Returns the default mTLS service endpoint. */
public static String getDefaultMtlsEndpoint() {
return "cloudasset.mtls.googleapis.com:443";
}

/** Returns the default service scopes. */
public static List<String> getDefaultServiceScopes() {
return DEFAULT_SERVICE_SCOPES;
Expand Down Expand Up @@ -623,6 +628,8 @@ private static Builder createDefault() {
builder.setCredentialsProvider(defaultCredentialsProviderBuilder().build());
builder.setInternalHeaderProvider(defaultApiClientHeaderProviderBuilder().build());
builder.setEndpoint(getDefaultEndpoint());
builder.setMtlsEndpoint(getDefaultMtlsEndpoint());
builder.setSwitchToMtlsEndpointAllowed(true);

return initDefaults(builder);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -43,8 +43,8 @@

@Generated("by gapic-generator-java")
public class IAMCredentialsClientTest {
private static MockServiceHelper mockServiceHelper;
private static MockIAMCredentials mockIAMCredentials;
private static MockServiceHelper mockServiceHelper;
private IamCredentialsClient client;
private LocalChannelProvider channelProvider;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -138,6 +138,11 @@ public static String getDefaultEndpoint() {
return "iamcredentials.googleapis.com:443";
}

/** Returns the default mTLS service endpoint. */
public static String getDefaultMtlsEndpoint() {
return "iamcredentials.mtls.googleapis.com:443";
}

/** Returns the default service scopes. */
public static List<String> getDefaultServiceScopes() {
return DEFAULT_SERVICE_SCOPES;
Expand Down Expand Up @@ -277,6 +282,8 @@ private static Builder createDefault() {
builder.setCredentialsProvider(defaultCredentialsProviderBuilder().build());
builder.setInternalHeaderProvider(defaultApiClientHeaderProviderBuilder().build());
builder.setEndpoint(getDefaultEndpoint());
builder.setMtlsEndpoint(getDefaultMtlsEndpoint());
builder.setSwitchToMtlsEndpointAllowed(true);

return initDefaults(builder);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,9 +41,9 @@

@Generated("by gapic-generator-java")
public class IAMPolicyClientTest {
private static MockIAMPolicy mockIAMPolicy;
private static MockServiceHelper mockServiceHelper;
private IAMPolicyClient client;
private static MockIAMPolicy mockIAMPolicy;
private LocalChannelProvider channelProvider;

@BeforeClass
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -125,6 +125,11 @@ public static String getDefaultEndpoint() {
return "iam-meta-api.googleapis.com:443";
}

/** Returns the default mTLS service endpoint. */
public static String getDefaultMtlsEndpoint() {
return "iam-meta-api.mtls.googleapis.com:443";
}

/** Returns the default service scopes. */
public static List<String> getDefaultServiceScopes() {
return DEFAULT_SERVICE_SCOPES;
Expand Down Expand Up @@ -250,6 +255,8 @@ private static Builder createDefault() {
builder.setCredentialsProvider(defaultCredentialsProviderBuilder().build());
builder.setInternalHeaderProvider(defaultApiClientHeaderProviderBuilder().build());
builder.setEndpoint(getDefaultEndpoint());
builder.setMtlsEndpoint(getDefaultMtlsEndpoint());
builder.setSwitchToMtlsEndpointAllowed(true);

return initDefaults(builder);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -67,10 +67,10 @@
@Generated("by gapic-generator-java")
public class KeyManagementServiceClientTest {
private static MockKeyManagementService mockKeyManagementService;
private static MockServiceHelper mockServiceHelper;
private KeyManagementServiceClient client;
private static MockIAMPolicy mockIAMPolicy;
private static MockLocations mockLocations;
private static MockServiceHelper mockServiceHelper;
private KeyManagementServiceClient client;
private LocalChannelProvider channelProvider;

@BeforeClass
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -645,6 +645,11 @@ public static String getDefaultEndpoint() {
return "cloudkms.googleapis.com:443";
}

/** Returns the default mTLS service endpoint. */
public static String getDefaultMtlsEndpoint() {
return "cloudkms.mtls.googleapis.com:443";
}

/** Returns the default service scopes. */
public static List<String> getDefaultServiceScopes() {
return DEFAULT_SERVICE_SCOPES;
Expand Down Expand Up @@ -962,6 +967,8 @@ private static Builder createDefault() {
builder.setCredentialsProvider(defaultCredentialsProviderBuilder().build());
builder.setInternalHeaderProvider(defaultApiClientHeaderProviderBuilder().build());
builder.setEndpoint(getDefaultEndpoint());
builder.setMtlsEndpoint(getDefaultMtlsEndpoint());
builder.setSwitchToMtlsEndpointAllowed(true);

return initDefaults(builder);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -61,9 +61,9 @@

@Generated("by gapic-generator-java")
public class LibraryServiceClientTest {
private static MockLibraryService mockLibraryService;
private static MockServiceHelper mockServiceHelper;
private LibraryServiceClient client;
private static MockLibraryService mockLibraryService;
private LocalChannelProvider channelProvider;

@BeforeClass
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -303,6 +303,11 @@ public static String getDefaultEndpoint() {
return "library-example.googleapis.com:443";
}

/** Returns the default mTLS service endpoint. */
public static String getDefaultMtlsEndpoint() {
return "library-example.mtls.googleapis.com:443";
}

/** Returns the default service scopes. */
public static List<String> getDefaultServiceScopes() {
return DEFAULT_SERVICE_SCOPES;
Expand Down Expand Up @@ -473,6 +478,8 @@ private static Builder createDefault() {
builder.setCredentialsProvider(defaultCredentialsProviderBuilder().build());
builder.setInternalHeaderProvider(defaultApiClientHeaderProviderBuilder().build());
builder.setEndpoint(getDefaultEndpoint());
builder.setMtlsEndpoint(getDefaultMtlsEndpoint());
builder.setSwitchToMtlsEndpointAllowed(true);

return initDefaults(builder);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -95,10 +95,10 @@

@Generated("by gapic-generator-java")
public class ConfigClientTest {
private static MockConfigServiceV2 mockConfigServiceV2;
private static MockServiceHelper mockServiceHelper;
private ConfigClient client;
private LocalChannelProvider channelProvider;
private static MockConfigServiceV2 mockConfigServiceV2;

@BeforeClass
public static void startStaticServer() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -73,8 +73,8 @@

@Generated("by gapic-generator-java")
public class LoggingClientTest {
private static MockServiceHelper mockServiceHelper;
private static MockLoggingServiceV2 mockLoggingServiceV2;
private static MockServiceHelper mockServiceHelper;
private LoggingClient client;
private LocalChannelProvider channelProvider;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -56,9 +56,9 @@

@Generated("by gapic-generator-java")
public class MetricsClientTest {
private static MockMetricsServiceV2 mockMetricsServiceV2;
private static MockServiceHelper mockServiceHelper;
private MetricsClient client;
private static MockMetricsServiceV2 mockMetricsServiceV2;
private LocalChannelProvider channelProvider;

@BeforeClass
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -514,6 +514,11 @@ public static String getDefaultEndpoint() {
return "logging.googleapis.com:443";
}

/** Returns the default mTLS service endpoint. */
public static String getDefaultMtlsEndpoint() {
return "logging.mtls.googleapis.com:443";
}

/** Returns the default service scopes. */
public static List<String> getDefaultServiceScopes() {
return DEFAULT_SERVICE_SCOPES;
Expand Down Expand Up @@ -792,6 +797,8 @@ private static Builder createDefault() {
builder.setCredentialsProvider(defaultCredentialsProviderBuilder().build());
builder.setInternalHeaderProvider(defaultApiClientHeaderProviderBuilder().build());
builder.setEndpoint(getDefaultEndpoint());
builder.setMtlsEndpoint(getDefaultMtlsEndpoint());
builder.setSwitchToMtlsEndpointAllowed(true);

return initDefaults(builder);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -444,6 +444,11 @@ public static String getDefaultEndpoint() {
return "logging.googleapis.com:443";
}

/** Returns the default mTLS service endpoint. */
public static String getDefaultMtlsEndpoint() {
return "logging.mtls.googleapis.com:443";
}

/** Returns the default service scopes. */
public static List<String> getDefaultServiceScopes() {
return DEFAULT_SERVICE_SCOPES;
Expand Down Expand Up @@ -626,6 +631,8 @@ private static Builder createDefault() {
builder.setCredentialsProvider(defaultCredentialsProviderBuilder().build());
builder.setInternalHeaderProvider(defaultApiClientHeaderProviderBuilder().build());
builder.setEndpoint(getDefaultEndpoint());
builder.setMtlsEndpoint(getDefaultMtlsEndpoint());
builder.setSwitchToMtlsEndpointAllowed(true);

return initDefaults(builder);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -212,6 +212,11 @@ public static String getDefaultEndpoint() {
return "logging.googleapis.com:443";
}

/** Returns the default mTLS service endpoint. */
public static String getDefaultMtlsEndpoint() {
return "logging.mtls.googleapis.com:443";
}

/** Returns the default service scopes. */
public static List<String> getDefaultServiceScopes() {
return DEFAULT_SERVICE_SCOPES;
Expand Down Expand Up @@ -371,6 +376,8 @@ private static Builder createDefault() {
builder.setCredentialsProvider(defaultCredentialsProviderBuilder().build());
builder.setInternalHeaderProvider(defaultApiClientHeaderProviderBuilder().build());
builder.setEndpoint(getDefaultEndpoint());
builder.setMtlsEndpoint(getDefaultMtlsEndpoint());
builder.setSwitchToMtlsEndpointAllowed(true);

return initDefaults(builder);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -65,10 +65,10 @@

@Generated("by gapic-generator-java")
public class SchemaServiceClientTest {
private static MockServiceHelper mockServiceHelper;
private static MockSchemaService mockSchemaService;
private SchemaServiceClient client;
private static MockIAMPolicy mockIAMPolicy;
private static MockServiceHelper mockServiceHelper;
private SchemaServiceClient client;
private LocalChannelProvider channelProvider;

@BeforeClass
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -93,10 +93,10 @@

@Generated("by gapic-generator-java")
public class SubscriptionAdminClientTest {
private static MockServiceHelper mockServiceHelper;
private static MockSubscriber mockSubscriber;
private SubscriptionAdminClient client;
private static MockIAMPolicy mockIAMPolicy;
private static MockServiceHelper mockServiceHelper;
private SubscriptionAdminClient client;
private LocalChannelProvider channelProvider;

@BeforeClass
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -76,10 +76,10 @@

@Generated("by gapic-generator-java")
public class TopicAdminClientTest {
private static MockServiceHelper mockServiceHelper;
private static MockPublisher mockPublisher;
private TopicAdminClient client;
private static MockIAMPolicy mockIAMPolicy;
private static MockServiceHelper mockServiceHelper;
private TopicAdminClient client;
private LocalChannelProvider channelProvider;

@BeforeClass
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -478,6 +478,11 @@ public static String getDefaultEndpoint() {
return "pubsub.googleapis.com:443";
}

/** Returns the default mTLS service endpoint. */
public static String getDefaultMtlsEndpoint() {
return "pubsub.mtls.googleapis.com:443";
}

/** Returns the default service scopes. */
public static List<String> getDefaultServiceScopes() {
return DEFAULT_SERVICE_SCOPES;
Expand Down Expand Up @@ -711,6 +716,8 @@ private static Builder createDefault() {
builder.setCredentialsProvider(defaultCredentialsProviderBuilder().build());
builder.setInternalHeaderProvider(defaultApiClientHeaderProviderBuilder().build());
builder.setEndpoint(getDefaultEndpoint());
builder.setMtlsEndpoint(getDefaultMtlsEndpoint());
builder.setSwitchToMtlsEndpointAllowed(true);

return initDefaults(builder);
}
Expand Down

0 comments on commit f684c5b

Please sign in to comment.