You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by la...@apache.org on 2012/04/22 00:24:59 UTC

svn commit: r1328742 - /incubator/airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/core/gfac/utils/GfacUtils.java

Author: lahiru
Date: Sat Apr 21 22:24:58 2012
New Revision: 1328742

URL: http://svn.apache.org/viewvc?rev=1328742&view=rev
Log:
fixing an isssue when using forEach with gfac service.

Modified:
    incubator/airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/core/gfac/utils/GfacUtils.java

Modified: incubator/airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/core/gfac/utils/GfacUtils.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/core/gfac/utils/GfacUtils.java?rev=1328742&r1=1328741&r2=1328742&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/core/gfac/utils/GfacUtils.java (original)
+++ incubator/airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/core/gfac/utils/GfacUtils.java Sat Apr 21 22:24:58 2012
@@ -135,94 +135,177 @@ public class GfacUtils {
         return new URI(buf.toString());
     }
 
-   public static ActualParameter getInputActualParameter(Parameter parameter, OMElement element) {
+    public static ActualParameter getInputActualParameter(Parameter parameter, OMElement element) {
         OMElement innerelement = null;
         ActualParameter actualParameter = new ActualParameter();
         if ("String".equals(parameter.getParameterType().getName())) {
             actualParameter = new ActualParameter(StringParameterType.type);
-            innerelement = (OMElement) element.getChildrenWithLocalName("value").next();
-            ((StringParameterType) actualParameter.getType()).setValue(innerelement.getText());
+            if (element.getText() != null) {
+                ((StringParameterType) actualParameter.getType()).setValue(element.getText());
+            } else {
+                innerelement = (OMElement) element.getChildrenWithLocalName("value").next();
+                ((StringParameterType) actualParameter.getType()).setValue(innerelement.getText());
+            }
         } else if ("Double".equals(parameter.getParameterType().getName())) {
             actualParameter = new ActualParameter(DoubleParameterType.type);
-            innerelement = (OMElement) element.getChildrenWithLocalName("value").next();
-            ((DoubleParameterType) actualParameter.getType()).setValue(new Double(innerelement.getText()));
+            if (element.getText() != null) {
+                ((DoubleParameterType) actualParameter.getType()).setValue(new Double(innerelement.getText()));
+            } else {
+                innerelement = (OMElement) element.getChildrenWithLocalName("value").next();
+                ((DoubleParameterType) actualParameter.getType()).setValue(new Double(innerelement.getText()));
+            }
         } else if ("Integer".equals(parameter.getParameterType().getName())) {
             actualParameter = new ActualParameter(IntegerParameterType.type);
-            innerelement = (OMElement) element.getChildrenWithLocalName("value").next();
-            ((IntegerParameterType) actualParameter.getType()).setValue(new Integer(innerelement.getText()));
+            if (element.getText() != null) {
+                ((IntegerParameterType) actualParameter.getType()).setValue(new Integer(element.getText()));
+            } else {
+                innerelement = (OMElement) element.getChildrenWithLocalName("value").next();
+                ((IntegerParameterType) actualParameter.getType()).setValue(new Integer(innerelement.getText()));
+            }
         } else if ("Float".equals(parameter.getParameterType().getName())) {
             actualParameter = new ActualParameter(FloatParameterType.type);
-            innerelement = (OMElement) element.getChildrenWithLocalName("value").next();
-            ((FloatParameterType) actualParameter.getType()).setValue(new Float(innerelement.getText()));
+            if (element.getText() != null) {
+                ((FloatParameterType) actualParameter.getType()).setValue(new Float(element.getText()));
+            } else {
+                innerelement = (OMElement) element.getChildrenWithLocalName("value").next();
+                ((FloatParameterType) actualParameter.getType()).setValue(new Float(innerelement.getText()));
+            }
         } else if ("Boolean".equals(parameter.getParameterType().getName())) {
             actualParameter = new ActualParameter(BooleanParameterType.type);
-            innerelement = (OMElement) element.getChildrenWithLocalName("value").next();
-            ((BooleanParameterType) actualParameter.getType()).setValue(new Boolean(innerelement.getText()));
+            if (element.getText() != null) {
+                ((BooleanParameterType) actualParameter.getType()).setValue(new Boolean(element.getText()));
+            } else {
+                innerelement = (OMElement) element.getChildrenWithLocalName("value").next();
+                ((BooleanParameterType) actualParameter.getType()).setValue(Boolean.parseBoolean(innerelement.getText()));
+            }
         } else if ("File".equals(parameter.getParameterType().getName())) {
             actualParameter = new ActualParameter(FileParameterType.type);
-            innerelement = (OMElement) element.getChildrenWithLocalName("value").next();
-            ((FileParameterType) actualParameter.getType()).setValue(innerelement.getText());
+            if (element.getText() != null) {
+                ((FileParameterType) actualParameter.getType()).setValue(element.getText());
+            } else {
+                innerelement = (OMElement) element.getChildrenWithLocalName("value").next();
+                ((FileParameterType) actualParameter.getType()).setValue(innerelement.getText());
+            }
         } else if ("URI".equals(parameter.getParameterType().getName())) {
             actualParameter = new ActualParameter(URIParameterType.type);
-            innerelement = (OMElement) element.getChildrenWithLocalName("value").next();
-            System.out.println(actualParameter.getType().toString());
-            log.debug(actualParameter.getType().toString());
-            ((URIParameterType) actualParameter.getType()).setValue(innerelement.getText());
+            if (element.getText() != null) {
+                ((URIParameterType) actualParameter.getType()).setValue(element.getText());
+            } else {
+                innerelement = (OMElement) element.getChildrenWithLocalName("value").next();
+                System.out.println(actualParameter.getType().toString());
+                log.debug(actualParameter.getType().toString());
+                ((URIParameterType) actualParameter.getType()).setValue(innerelement.getText());
+            }
         } else if ("StringArray".equals(parameter.getParameterType().getName())) {
             actualParameter = new ActualParameter(StringArrayType.type);
             Iterator value = element.getChildrenWithLocalName("value");
             int i = 0;
-            while (value.hasNext()) {
-                innerelement = (OMElement) value.next();
-                ((StringArrayType) actualParameter.getType()).insertValue(i++, innerelement.getText());
+            if (element.getText() != null) {
+                while (value.hasNext()) {
+                    innerelement = (OMElement) value.next();
+                    ((StringArrayType) actualParameter.getType()).insertValue(i++, element.getText());
+                }
+            } else {
+                while (value.hasNext()) {
+                    innerelement = (OMElement) value.next();
+                    ((StringArrayType) actualParameter.getType()).insertValue(i++, innerelement.getText());
+                }
             }
         } else if ("DoubleArray".equals(parameter.getParameterType().getName())) {
             actualParameter = new ActualParameter(DoubleArrayType.type);
             Iterator value = element.getChildrenWithLocalName("value");
             int i = 0;
-            while (value.hasNext()) {
-                innerelement = (OMElement) value.next();
-                ((DoubleArrayType) actualParameter.getType()).insertValue(i++, new Double(innerelement.getText()));
+            if (element.getText() != null) {
+                while (value.hasNext()) {
+                    innerelement = (OMElement) value.next();
+                    ((DoubleArrayType) actualParameter.getType()).insertValue(i++, new Double(element.getText()));
+                }
+            } else {
+                while (value.hasNext()) {
+                    innerelement = (OMElement) value.next();
+                    ((DoubleArrayType) actualParameter.getType()).insertValue(i++, new Double(innerelement.getText()));
+                }
             }
+
         } else if ("IntegerArray".equals(parameter.getParameterType().getName())) {
             actualParameter = new ActualParameter(IntegerArrayType.type);
             Iterator value = element.getChildrenWithLocalName("value");
             int i = 0;
-            while (value.hasNext()) {
-                innerelement = (OMElement) value.next();
-                ((IntegerArrayType) actualParameter.getType()).insertValue(i++, new Integer(innerelement.getText()));
+            if (element.getText() != null) {
+                while (value.hasNext()) {
+                    innerelement = (OMElement) value.next();
+                    ((IntegerArrayType) actualParameter.getType()).insertValue(i++, new Integer(element.getText()));
+                }
+            } else {
+
+                while (value.hasNext()) {
+                    innerelement = (OMElement) value.next();
+                    ((IntegerArrayType) actualParameter.getType()).insertValue(i++, new Integer(innerelement.getText()));
+                }
             }
         } else if ("FloatArray".equals(parameter.getParameterType().getName())) {
             actualParameter = new ActualParameter(FloatArrayType.type);
             Iterator value = element.getChildrenWithLocalName("value");
             int i = 0;
-            while (value.hasNext()) {
-                innerelement = (OMElement) value.next();
-                ((FloatArrayType) actualParameter.getType()).insertValue(i++, new Float(innerelement.getText()));
+            if (element.getText() != null) {
+                while (value.hasNext()) {
+                    innerelement = (OMElement) value.next();
+                    ((FloatArrayType) actualParameter.getType()).insertValue(i++, new Float(element.getText()));
+                }
+            } else {
+
+                while (value.hasNext()) {
+                    innerelement = (OMElement) value.next();
+                    ((FloatArrayType) actualParameter.getType()).insertValue(i++, new Float(innerelement.getText()));
+                }
             }
         } else if ("BooleanArray".equals(parameter.getParameterType().getName())) {
             actualParameter = new ActualParameter(BooleanArrayType.type);
             Iterator value = element.getChildrenWithLocalName("value");
             int i = 0;
-            while (value.hasNext()) {
-                innerelement = (OMElement) value.next();
-                ((BooleanArrayType) actualParameter.getType()).insertValue(i++, new Boolean(innerelement.getText()));
+            if (element.getText() != null) {
+                while (value.hasNext()) {
+                    innerelement = (OMElement) value.next();
+                    ((BooleanArrayType) actualParameter.getType()).insertValue(i++, new Boolean(element.getText()));
+                }
+            } else {
+
+                while (value.hasNext()) {
+                    innerelement = (OMElement) value.next();
+                    ((BooleanArrayType) actualParameter.getType()).insertValue(i++, new Boolean(innerelement.getText()));
+                }
             }
         } else if ("FileArray".equals(parameter.getParameterType().getName())) {
             actualParameter = new ActualParameter(FileArrayType.type);
             Iterator value = element.getChildrenWithLocalName("value");
             int i = 0;
-            while (value.hasNext()) {
-                innerelement = (OMElement) value.next();
-                ((FileArrayType) actualParameter.getType()).insertValue(i++, innerelement.getText());
+            if (element.getText() != null) {
+                while (value.hasNext()) {
+                    innerelement = (OMElement) value.next();
+                    ((FileArrayType) actualParameter.getType()).insertValue(i++, element.getText());
+                }
+            } else {
+
+                while (value.hasNext()) {
+                    innerelement = (OMElement) value.next();
+                    ((FileArrayType) actualParameter.getType()).insertValue(i++, innerelement.getText());
+                }
             }
         } else if ("URIArray".equals(parameter.getParameterType().getName())) {
             actualParameter = new ActualParameter(URIArrayType.type);
             Iterator value = element.getChildrenWithLocalName("value");
             int i = 0;
-            while (value.hasNext()) {
-                innerelement = (OMElement) value.next();
-                ((URIArrayType) actualParameter.getType()).insertValue(i++, innerelement.getText());
+            if (element.getText() != null) {
+                while (value.hasNext()) {
+                    innerelement = (OMElement) value.next();
+                    ((URIArrayType) actualParameter.getType()).insertValue(i++, element.getText());
+                }
+            } else {
+
+                while (value.hasNext()) {
+                    innerelement = (OMElement) value.next();
+                    ((URIArrayType) actualParameter.getType()).insertValue(i++, innerelement.getText());
+                }
             }
         }
         return actualParameter;