You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by ma...@apache.org on 2018/10/01 16:48:24 UTC

[airavata] branch develop updated: AIRAVATA-2865 Convert empty strings as nulls

This is an automated email from the ASF dual-hosted git repository.

machristie pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/airavata.git


The following commit(s) were added to refs/heads/develop by this push:
     new 3106345  AIRAVATA-2865 Convert empty strings as nulls
3106345 is described below

commit 3106345bdf2895fb62f91beac7bd1acf4fddd962
Author: Marcus Christie <ma...@apache.org>
AuthorDate: Mon Oct 1 12:44:59 2018 -0400

    AIRAVATA-2865 Convert empty strings as nulls
---
 .../migrator/airavata/AiravataDataMigrator.java    | 35 +++++++++++++++++-----
 1 file changed, 27 insertions(+), 8 deletions(-)

diff --git a/modules/sharing-registry/sharing-data-migrator/src/main/java/org/apache/airavata/sharing/registry/migrator/airavata/AiravataDataMigrator.java b/modules/sharing-registry/sharing-data-migrator/src/main/java/org/apache/airavata/sharing/registry/migrator/airavata/AiravataDataMigrator.java
index 74dafd8..8e7d907 100644
--- a/modules/sharing-registry/sharing-data-migrator/src/main/java/org/apache/airavata/sharing/registry/migrator/airavata/AiravataDataMigrator.java
+++ b/modules/sharing-registry/sharing-data-migrator/src/main/java/org/apache/airavata/sharing/registry/migrator/airavata/AiravataDataMigrator.java
@@ -560,7 +560,9 @@ public class AiravataDataMigrator {
         groupResourceProfile.setGatewayId(gatewayId);
         groupResourceProfile.setGroupResourceProfileName("Default");
         GatewayResourceProfile gatewayResourceProfile = registryServiceClient.getGatewayResourceProfile(gatewayId);
-        groupResourceProfile.setDefaultCredentialStoreToken(gatewayResourceProfile.getCredentialStoreToken());
+        if (isValid(gatewayResourceProfile.getCredentialStoreToken())) {
+            groupResourceProfile.setDefaultCredentialStoreToken(gatewayResourceProfile.getCredentialStoreToken());
+        }
         List<GroupComputeResourcePreference> groupComputeResourcePreferences = new ArrayList<>();
         List<ComputeResourcePolicy> computeResourcePolicies = new ArrayList<>();
         List<ComputeResourcePreference> computeResourcePreferences = registryServiceClient.getAllGatewayComputeResourcePreferences(gatewayId);
@@ -587,15 +589,29 @@ public class AiravataDataMigrator {
         groupComputeResourcePreference.setGroupResourceProfileId(groupResourceProfileId);
         groupComputeResourcePreference.setComputeResourceId(computeResourcePreference.getComputeResourceId());
         groupComputeResourcePreference.setOverridebyAiravata(computeResourcePreference.isOverridebyAiravata());
-        groupComputeResourcePreference.setLoginUserName(computeResourcePreference.getLoginUserName());
+        if (isValid(computeResourcePreference.getLoginUserName())) {
+            groupComputeResourcePreference.setLoginUserName(computeResourcePreference.getLoginUserName());
+        }
         groupComputeResourcePreference.setPreferredJobSubmissionProtocol(computeResourcePreference.getPreferredJobSubmissionProtocol());
         groupComputeResourcePreference.setPreferredDataMovementProtocol(computeResourcePreference.getPreferredDataMovementProtocol());
-        groupComputeResourcePreference.setPreferredBatchQueue(computeResourcePreference.getPreferredBatchQueue());
-        groupComputeResourcePreference.setScratchLocation(computeResourcePreference.getScratchLocation());
-        groupComputeResourcePreference.setAllocationProjectNumber(computeResourcePreference.getAllocationProjectNumber());
-        groupComputeResourcePreference.setResourceSpecificCredentialStoreToken(computeResourcePreference.getResourceSpecificCredentialStoreToken());
-        groupComputeResourcePreference.setUsageReportingGatewayId(computeResourcePreference.getUsageReportingGatewayId());
-        groupComputeResourcePreference.setQualityOfService(computeResourcePreference.getQualityOfService());
+        if (isValid(computeResourcePreference.getPreferredBatchQueue())) {
+            groupComputeResourcePreference.setPreferredBatchQueue(computeResourcePreference.getPreferredBatchQueue());
+        }
+        if (isValid(computeResourcePreference.getScratchLocation())) {
+            groupComputeResourcePreference.setScratchLocation(computeResourcePreference.getScratchLocation());
+        }
+        if (isValid(computeResourcePreference.getAllocationProjectNumber())) {
+            groupComputeResourcePreference.setAllocationProjectNumber(computeResourcePreference.getAllocationProjectNumber());
+        }
+        if (isValid(computeResourcePreference.getResourceSpecificCredentialStoreToken())) {
+            groupComputeResourcePreference.setResourceSpecificCredentialStoreToken(computeResourcePreference.getResourceSpecificCredentialStoreToken());
+        }
+        if (isValid(computeResourcePreference.getUsageReportingGatewayId())) {
+            groupComputeResourcePreference.setUsageReportingGatewayId(computeResourcePreference.getUsageReportingGatewayId());
+        }
+        if (isValid(groupComputeResourcePreference.getQualityOfService())) {
+            groupComputeResourcePreference.setQualityOfService(computeResourcePreference.getQualityOfService());
+        }
         // Note: skipping copying of reservation time and ssh account provisioner configuration for now
         return groupComputeResourcePreference;
     }
@@ -610,6 +626,9 @@ public class AiravataDataMigrator {
         return computeResourcePolicy;
     }
 
+    private static boolean isValid(String s) {
+        return s != null && !"".equals(s.trim());
+    }
 
     private static CredentialStoreService.Client getCredentialStoreServiceClient() throws TException, ApplicationSettingsException {
         final int serverPort = Integer.parseInt(ServerSettings.getCredentialStoreServerPort());