X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;f=runtime%2Forg.argeo.slc.core%2Fsrc%2Fmain%2Fjava%2Forg%2Fargeo%2Fslc%2Fcore%2Fexecution%2FPrimitiveSpecAttribute.java;h=0186a1c3cb584be1a04c4eabdf299bed1b425fc8;hb=82da8aeebe37e93f26158678590f94341f8ea325;hp=27910bf905229eac0b91a5ff55874a5f314c6cd9;hpb=ee6c3543a0ff9403420ce6a9c647723269f14331;p=gpl%2Fargeo-slc.git diff --git a/runtime/org.argeo.slc.core/src/main/java/org/argeo/slc/core/execution/PrimitiveSpecAttribute.java b/runtime/org.argeo.slc.core/src/main/java/org/argeo/slc/core/execution/PrimitiveSpecAttribute.java index 27910bf90..0186a1c3c 100644 --- a/runtime/org.argeo.slc.core/src/main/java/org/argeo/slc/core/execution/PrimitiveSpecAttribute.java +++ b/runtime/org.argeo.slc.core/src/main/java/org/argeo/slc/core/execution/PrimitiveSpecAttribute.java @@ -1,5 +1,6 @@ package org.argeo.slc.core.execution; +import org.argeo.slc.SlcException; public class PrimitiveSpecAttribute extends AbstractSpecAttribute implements PrimitiveAccessor { @@ -29,8 +30,33 @@ public class PrimitiveSpecAttribute extends AbstractSpecAttribute implements return type; } + public Class getTypeAsClass() { + return typeAsClass(type); + } + public void setType(String type) { this.type = type; + + // check whether type is recognized. + // TODO: make validation cleaner + typeAsClass(type); + } + + public static Class typeAsClass(String type) { + if (TYPE_STRING.equals(type)) + return String.class; + else if (TYPE_INTEGER.equals(type)) + return Integer.class; + else if (TYPE_LONG.equals(type)) + return Long.class; + else if (TYPE_FLOAT.equals(type)) + return Float.class; + else if (TYPE_DOUBLE.equals(type)) + return Double.class; + else if (TYPE_BOOLEAN.equals(type)) + return Boolean.class; + else + throw new SlcException("Unrecognized type " + type); } }