]> git.argeo.org Git - gpl/argeo-slc.git/blob - runtime/org.argeo.slc.core/src/main/java/org/argeo/slc/core/execution/PrimitiveUtils.java
7c0fb0f096ca0d5f55e2b57943335b6259d8336f
[gpl/argeo-slc.git] / runtime / org.argeo.slc.core / src / main / java / org / argeo / slc / core / execution / PrimitiveUtils.java
1 package org.argeo.slc.core.execution;
2
3
4 public class PrimitiveUtils {
5 public final static String TYPE_STRING = "string";
6 public final static String TYPE_INTEGER = "integer";
7 public final static String TYPE_LONG = "long";
8 public final static String TYPE_FLOAT = "float";
9 public final static String TYPE_DOUBLE = "double";
10 public final static String TYPE_BOOLEAN = "boolean";
11
12 private PrimitiveUtils() {
13
14 }
15
16 /** @return the class or null if the provided type is not a primitive */
17 public static Class<?> typeAsClass(String type) {
18 if (TYPE_STRING.equals(type))
19 return String.class;
20 else if (TYPE_INTEGER.equals(type))
21 return Integer.class;
22 else if (TYPE_LONG.equals(type))
23 return Long.class;
24 else if (TYPE_FLOAT.equals(type))
25 return Float.class;
26 else if (TYPE_DOUBLE.equals(type))
27 return Double.class;
28 else if (TYPE_BOOLEAN.equals(type))
29 return Boolean.class;
30 else
31 return null;
32 }
33
34 /** @return the type or null if the provided class is not a primitive */
35 public static String classAsType(Class<?> clss) {
36 if (String.class.isAssignableFrom(clss))
37 return TYPE_STRING;
38 else if (Integer.class.isAssignableFrom(clss))
39 return TYPE_INTEGER;
40 else if (Long.class.isAssignableFrom(clss))
41 return TYPE_LONG;
42 else if (Float.class.isAssignableFrom(clss))
43 return TYPE_FLOAT;
44 else if (Double.class.isAssignableFrom(clss))
45 return TYPE_DOUBLE;
46 else if (Boolean.class.isAssignableFrom(clss))
47 return TYPE_BOOLEAN;
48 else
49 return null;
50 }
51
52 public static Object convert(String type, String str) {
53 if (TYPE_STRING.equals(type)) {
54 return str;
55 } else if (TYPE_INTEGER.equals(type)) {
56 return (Integer.parseInt(str));
57 } else if (TYPE_LONG.equals(type)) {
58 return (Long.parseLong(str));
59 } else if (TYPE_FLOAT.equals(type)) {
60 return (Float.parseFloat(str));
61 } else if (TYPE_DOUBLE.equals(type)) {
62 return (Double.parseDouble(str));
63 } else if (TYPE_BOOLEAN.equals(type)) {
64 return (Boolean.parseBoolean(str));
65 } else {
66 return str;
67 }
68 }
69
70 }