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);