You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by is...@apache.org on 2022/01/25 17:19:55 UTC
[airavata-custos] branch develop updated: Create Java clients inside try block to avoid grpc channel suspended issue
This is an automated email from the ASF dual-hosted git repository.
isjarana pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/airavata-custos.git
The following commit(s) were added to refs/heads/develop by this push:
new 8d672aa Create Java clients inside try block to avoid grpc channel suspended issue
new ff2c400 Merge pull request #253 from isururanawaka/implementJavaClientsFromClosable
8d672aa is described below
commit 8d672aa4c4098061e547cd78c287349dc5ed17cc
Author: Isuru Ranawaka <ir...@gmail.com>
AuthorDate: Tue Jan 25 12:15:32 2022 -0500
Create Java clients inside try block to avoid grpc channel suspended issue
---
.../management/client/AgentManagementClient.java | 7 +++++
.../apache/custos/clients/core/AbstractClient.java | 4 ++-
.../management/client/GroupManagementClient.java | 7 +++++
.../management/client/SharingManagementClient.java | 7 +++++
.../client/SuperAdminOperationsClient.java | 2 ++
.../management/client/UserManagementClient.java | 7 +++++
.../custos/clients/CustosClientProvider.java | 35 ++++++++++++++++------
.../main/resources/protos/IamAdminService.proto | 7 +++++
8 files changed, 66 insertions(+), 10 deletions(-)
diff --git a/custos-client-sdks/custos-java-clients/agent-management-client/src/main/java/org/apache/custos/agent/management/client/AgentManagementClient.java b/custos-client-sdks/custos-java-clients/agent-management-client/src/main/java/org/apache/custos/agent/management/client/AgentManagementClient.java
index 31c9819..762984c 100644
--- a/custos-client-sdks/custos-java-clients/agent-management-client/src/main/java/org/apache/custos/agent/management/client/AgentManagementClient.java
+++ b/custos-client-sdks/custos-java-clients/agent-management-client/src/main/java/org/apache/custos/agent/management/client/AgentManagementClient.java
@@ -319,5 +319,12 @@ public class AgentManagementClient extends AbstractClient {
}
+ @Override
+ public void close() throws IOException {
+ if (managedChannel != null) {
+ managedChannel.shutdown();
+ }
+ }
+
}
diff --git a/custos-client-sdks/custos-java-clients/custos-clients-core/src/main/java/org/apache/custos/clients/core/AbstractClient.java b/custos-client-sdks/custos-java-clients/custos-clients-core/src/main/java/org/apache/custos/clients/core/AbstractClient.java
index 5c55b07..5953e8d 100644
--- a/custos-client-sdks/custos-java-clients/custos-clients-core/src/main/java/org/apache/custos/clients/core/AbstractClient.java
+++ b/custos-client-sdks/custos-java-clients/custos-clients-core/src/main/java/org/apache/custos/clients/core/AbstractClient.java
@@ -45,7 +45,9 @@ public class AbstractClient implements Closeable {
@Override
public void close() throws IOException {
- managedChannel.shutdown();
+ if (managedChannel != null) {
+ managedChannel.shutdown();
+ }
}
public boolean isShutdown() {
diff --git a/custos-client-sdks/custos-java-clients/group-management-client/src/main/java/org/apache/custos/group/management/client/GroupManagementClient.java b/custos-client-sdks/custos-java-clients/group-management-client/src/main/java/org/apache/custos/group/management/client/GroupManagementClient.java
index 21fcddf..07d3f70 100644
--- a/custos-client-sdks/custos-java-clients/group-management-client/src/main/java/org/apache/custos/group/management/client/GroupManagementClient.java
+++ b/custos-client-sdks/custos-java-clients/group-management-client/src/main/java/org/apache/custos/group/management/client/GroupManagementClient.java
@@ -423,4 +423,11 @@ public class GroupManagementClient extends AbstractClient {
}
+ @Override
+ public void close() throws IOException {
+ if (managedChannel != null) {
+ managedChannel.shutdown();
+ }
+ }
+
}
diff --git a/custos-client-sdks/custos-java-clients/sharing-management-client/src/main/java/org/apache/custos/sharing/management/client/SharingManagementClient.java b/custos-client-sdks/custos-java-clients/sharing-management-client/src/main/java/org/apache/custos/sharing/management/client/SharingManagementClient.java
index 7e51e73..065545d 100644
--- a/custos-client-sdks/custos-java-clients/sharing-management-client/src/main/java/org/apache/custos/sharing/management/client/SharingManagementClient.java
+++ b/custos-client-sdks/custos-java-clients/sharing-management-client/src/main/java/org/apache/custos/sharing/management/client/SharingManagementClient.java
@@ -269,4 +269,11 @@ public class SharingManagementClient extends AbstractClient {
return managedChannel.isShutdown();
}
+ @Override
+ public void close() throws IOException {
+ if (managedChannel != null) {
+ managedChannel.shutdown();
+ }
+ }
+
}
diff --git a/custos-client-sdks/custos-java-clients/tenant-management-client/src/main/java/org/apache/custos/tenant/manamgement/client/SuperAdminOperationsClient.java b/custos-client-sdks/custos-java-clients/tenant-management-client/src/main/java/org/apache/custos/tenant/manamgement/client/SuperAdminOperationsClient.java
index 6b217ac..054c4f3 100644
--- a/custos-client-sdks/custos-java-clients/tenant-management-client/src/main/java/org/apache/custos/tenant/manamgement/client/SuperAdminOperationsClient.java
+++ b/custos-client-sdks/custos-java-clients/tenant-management-client/src/main/java/org/apache/custos/tenant/manamgement/client/SuperAdminOperationsClient.java
@@ -154,4 +154,6 @@ public class SuperAdminOperationsClient {
}
+
+
}
diff --git a/custos-client-sdks/custos-java-clients/user-management-client/src/main/java/org/apache/custos/user/management/client/UserManagementClient.java b/custos-client-sdks/custos-java-clients/user-management-client/src/main/java/org/apache/custos/user/management/client/UserManagementClient.java
index 00e65ae..d562861 100644
--- a/custos-client-sdks/custos-java-clients/user-management-client/src/main/java/org/apache/custos/user/management/client/UserManagementClient.java
+++ b/custos-client-sdks/custos-java-clients/user-management-client/src/main/java/org/apache/custos/user/management/client/UserManagementClient.java
@@ -560,4 +560,11 @@ public class UserManagementClient extends AbstractClient {
}
+ @Override
+ public void close() throws IOException {
+ if (managedChannel != null) {
+ managedChannel.shutdown();
+ }
+ }
+
}
diff --git a/custos-client-sdks/custos-java-sdk/src/main/java/org/apache/custos/clients/CustosClientProvider.java b/custos-client-sdks/custos-java-sdk/src/main/java/org/apache/custos/clients/CustosClientProvider.java
index 8a4d134..48fed0b 100644
--- a/custos-client-sdks/custos-java-sdk/src/main/java/org/apache/custos/clients/CustosClientProvider.java
+++ b/custos-client-sdks/custos-java-sdk/src/main/java/org/apache/custos/clients/CustosClientProvider.java
@@ -54,37 +54,54 @@ public class CustosClientProvider {
public IdentityManagementClient getIdentityManagementClient() throws IOException {
- return new IdentityManagementClient(this.serverHost, this.serverPort, this.clientId, this.clientSec);
+ try (IdentityManagementClient identityManagementClient = new IdentityManagementClient(this.serverHost, this.serverPort, this.clientId, this.clientSec)) {
+ return identityManagementClient;
+ }
+
}
public TenantManagementClient getTenantManagementClient() throws IOException {
- return new TenantManagementClient(this.serverHost, this.serverPort, this.clientId, this.clientSec);
+ try (TenantManagementClient tenantManagementClient = new TenantManagementClient(this.serverHost, this.serverPort, this.clientId, this.clientSec)) {
+ return tenantManagementClient;
+ }
}
public AgentManagementClient getAgentManagementClient() throws IOException {
- return new AgentManagementClient(this.serverHost, this.serverPort, this.clientId, this.clientSec);
+ try (AgentManagementClient agentManagementClient = new AgentManagementClient(this.serverHost, this.serverPort, this.clientId, this.clientSec)) {
+ return agentManagementClient;
+ }
}
public GroupManagementClient getGroupManagementClient() throws IOException {
- return new GroupManagementClient(this.serverHost, this.serverPort, this.clientId, this.clientSec);
+ try (GroupManagementClient groupManagementClient = new GroupManagementClient(this.serverHost, this.serverPort, this.clientId, this.clientSec)) {
+ return groupManagementClient;
+ }
}
public ResourceSecretManagementClient getResourceSecretManagementClient() throws IOException {
- return new ResourceSecretManagementClient(this.serverHost, this.serverPort, this.clientId, this.clientSec);
+ try (ResourceSecretManagementClient resourceSecretManagementClient = new ResourceSecretManagementClient(this.serverHost, this.serverPort, this.clientId, this.clientSec)) {
+ return resourceSecretManagementClient;
+ }
}
public SharingManagementClient getSharingManagementClient() throws IOException {
- return new SharingManagementClient(this.serverHost, this.serverPort, this.clientId, this.clientSec);
+ try (SharingManagementClient sharingManagementClient = new SharingManagementClient(this.serverHost, this.serverPort, this.clientId, this.clientSec)) {
+ return sharingManagementClient;
+ }
}
public UserManagementClient getUserManagementClient() throws IOException {
- return new UserManagementClient(this.serverHost, this.serverPort, this.clientId, this.clientSec);
+ try (UserManagementClient userManagementClient = new UserManagementClient(this.serverHost, this.serverPort, this.clientId, this.clientSec)) {
+ return userManagementClient;
+ }
}
public ResourceSecretManagementClient getResourceSecretManagementClientForAgents() throws IOException {
- return new ResourceSecretManagementAgentClient
- (this.serverHost, this.serverPort, this.clientId, this.clientSec);
+ try (ResourceSecretManagementClient resourceSecretManagementClient = new ResourceSecretManagementAgentClient
+ (this.serverHost, this.serverPort, this.clientId, this.clientSec)) {
+ return resourceSecretManagementClient;
+ }
}
diff --git a/custos-integration-services/custos-integration-services-swagger/src/main/resources/protos/IamAdminService.proto b/custos-integration-services/custos-integration-services-swagger/src/main/resources/protos/IamAdminService.proto
index 42aef71..77fe2bb 100644
--- a/custos-integration-services/custos-integration-services-swagger/src/main/resources/protos/IamAdminService.proto
+++ b/custos-integration-services/custos-integration-services-swagger/src/main/resources/protos/IamAdminService.proto
@@ -429,6 +429,12 @@ message GetExternalIDPsResponse {
repeated ExternalIDPLink idp_links = 1;
}
+message AddExternalIDPLinksRequest {
+ repeated ExternalIDPLink idp_links = 1;
+ int64 tenant_id= 2;
+ string client_id = 3;
+}
+
service IamAdminService {
rpc setUPTenant (SetUpTenantRequest) returns (SetUpTenantResponse);
@@ -453,6 +459,7 @@ service IamAdminService {
rpc removeAdminPrivilege (UserSearchRequest) returns (OperationStatus);
rpc deleteExternalIDPLinksOfUsers(DeleteExternalIDPsRequest) returns (OperationStatus);
rpc getExternalIDPLinksOfUsers(GetExternalIDPsRequest) returns (GetExternalIDPsResponse);
+ rpc addExternalIDPLinksOfUsers(AddExternalIDPLinksRequest) returns (OperationStatus);
rpc registerAndEnableUsers (RegisterUsersRequest) returns (RegisterUsersResponse);
rpc addUserAttributes (AddUserAttributesRequest) returns (OperationStatus);