Repository: airavata Updated Branches: refs/heads/master e060b47e8 -> c4c03f3fb
Fixed NPE from configuration loading Project: http://git-wip-us.apache.org/repos/asf/airavata/repo Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/c4c03f3f Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/c4c03f3f Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/c4c03f3f Branch: refs/heads/master Commit: c4c03f3fb917e2833a1f8c54287c019d278ecc39 Parents: e060b47 Author: Shameera Rathanyaka <[email protected]> Authored: Wed Jul 8 14:01:51 2015 -0400 Committer: Shameera Rathanyaka <[email protected]> Committed: Wed Jul 8 14:01:51 2015 -0400 ---------------------------------------------------------------------- .../gfac/core/config/GFacYamlConfigruation.java | 57 +++++++++++--------- 1 file changed, 31 insertions(+), 26 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/airavata/blob/c4c03f3f/modules/gfac/gfac-core/src/main/java/org/apache/airavata/gfac/core/config/GFacYamlConfigruation.java ---------------------------------------------------------------------- diff --git a/modules/gfac/gfac-core/src/main/java/org/apache/airavata/gfac/core/config/GFacYamlConfigruation.java b/modules/gfac/gfac-core/src/main/java/org/apache/airavata/gfac/core/config/GFacYamlConfigruation.java index 8b5aa22..5dbad87 100644 --- a/modules/gfac/gfac-core/src/main/java/org/apache/airavata/gfac/core/config/GFacYamlConfigruation.java +++ b/modules/gfac/gfac-core/src/main/java/org/apache/airavata/gfac/core/config/GFacYamlConfigruation.java @@ -27,6 +27,7 @@ import org.apache.airavata.model.appcatalog.computeresource.ResourceJobManagerTy import org.yaml.snakeyaml.Yaml; import java.io.InputStream; +import java.util.ArrayList; import java.util.List; import java.util.Map; @@ -46,9 +47,9 @@ public class GFacYamlConfigruation { private static final String EMAIL_PARSER = "emailParser"; private static final String RESOURCE_EMAIL_ADDRESS = "resourceEmailAddress"; - private List<JobSubmitterTaskConfig> jobSubmitters; - private List<DataTransferTaskConfig> fileTransferTasks; - private List<ResourceConfig> resources; + private List<JobSubmitterTaskConfig> jobSubmitters = new ArrayList<>(); + private List<DataTransferTaskConfig> fileTransferTasks = new ArrayList<>(); + private List<ResourceConfig> resources = new ArrayList<>(); public GFacYamlConfigruation() throws GFacException { @@ -72,39 +73,43 @@ public class GFacYamlConfigruation { String identifier; List<Map<String, String>> jobSubYamls = (List<Map<String, String>>) loadMap.get(JOB_SUBMITTERS); JobSubmitterTaskConfig jobSubmitterTaskConfig; - for (Map<String, String> jobSub : jobSubYamls) { - jobSubmitterTaskConfig = new JobSubmitterTaskConfig(); - identifier = jobSub.get (SUBMISSIO_PROTOCOL); - jobSubmitterTaskConfig.setSubmissionProtocol(JobSubmissionProtocol.valueOf(identifier)); - jobSubmitterTaskConfig.setTaskClass(jobSub.get(TASK_CLASS)); - jobSubmitters.add(jobSubmitterTaskConfig); + if (jobSubYamls != null) { + for (Map<String, String> jobSub : jobSubYamls) { + jobSubmitterTaskConfig = new JobSubmitterTaskConfig(); + identifier = jobSub.get (SUBMISSIO_PROTOCOL); + jobSubmitterTaskConfig.setSubmissionProtocol(JobSubmissionProtocol.valueOf(identifier)); + jobSubmitterTaskConfig.setTaskClass(jobSub.get(TASK_CLASS)); + jobSubmitters.add(jobSubmitterTaskConfig); + } } List<Map<String, String>> fileTransYamls = (List<Map<String, String>>) loadMap.get(FILE_TRANSFER_TASKS); DataTransferTaskConfig dataTransferTaskConfig; - for (Map<String, String> fileTransConfig : fileTransYamls) { - dataTransferTaskConfig = new DataTransferTaskConfig(); - identifier = fileTransConfig.get (TRANSFER_PROTOCOL); - dataTransferTaskConfig.setTransferProtocol(DataMovementProtocol.valueOf(identifier)); - dataTransferTaskConfig.setTaskClass(fileTransConfig.get(TASK_CLASS)); - fileTransferTasks.add(dataTransferTaskConfig); + if (fileTransYamls != null) { + for (Map<String, String> fileTransConfig : fileTransYamls) { + dataTransferTaskConfig = new DataTransferTaskConfig(); + identifier = fileTransConfig.get (TRANSFER_PROTOCOL); + dataTransferTaskConfig.setTransferProtocol(DataMovementProtocol.valueOf(identifier)); + dataTransferTaskConfig.setTaskClass(fileTransConfig.get(TASK_CLASS)); + fileTransferTasks.add(dataTransferTaskConfig); + } } List<Map<String, Object>> resourcesYaml = (List<Map<String, Object>>) loadMap.get(RESOURCES); ResourceConfig resourceConfig; - for (Map<String, Object> resource : resourcesYaml) { - resourceConfig = new ResourceConfig(); - identifier = resource.get(JOB_MANAGER_TYPE).toString(); - resourceConfig.setJobManagerType(ResourceJobManagerType.valueOf(identifier)); - resourceConfig.setCommandOutputParser(resource.get(COMMAND_OUTPUT_PARSER).toString()); - resourceConfig.setEmailParser(resource.get(EMAIL_PARSER).toString()); - List<String> emailAddressList = (List<String>) resource.get(RESOURCE_EMAIL_ADDRESS); - resourceConfig.setResourceEmailAddresses(emailAddressList); - resources.add(resourceConfig); + if (resourcesYaml != null) { + for (Map<String, Object> resource : resourcesYaml) { + resourceConfig = new ResourceConfig(); + identifier = resource.get(JOB_MANAGER_TYPE).toString(); + resourceConfig.setJobManagerType(ResourceJobManagerType.valueOf(identifier)); + resourceConfig.setCommandOutputParser(resource.get(COMMAND_OUTPUT_PARSER).toString()); + resourceConfig.setEmailParser(resource.get(EMAIL_PARSER).toString()); + List<String> emailAddressList = (List<String>) resource.get(RESOURCE_EMAIL_ADDRESS); + resourceConfig.setResourceEmailAddresses(emailAddressList); + resources.add(resourceConfig); + } } - } - } public List<JobSubmitterTaskConfig> getJobSbumitters() {
