1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.apache.logging.log4j.catalog.api;
18
19
20
21
22 public enum DataType {
23
24 STRING("String", null),
25 BIG_DECIMAL("BigDecimal", "java.math.BigDecimal"),
26 DOUBLE("double", null),
27 FLOAT("float", null),
28 INT("int", null),
29 LONG("long", null),
30 BOOLEAN("boolean", null),
31 LIST("List<String>", "java.util.List"),
32 MAP("Map<String, String>", "java.util.Map");
33
34 private final String typeName;
35
36 public final String importClass;
37
38 DataType(String typeName, String importClass) {
39 this.typeName = typeName;
40 this.importClass = importClass;
41 }
42
43 public String getTypeName() {
44 return typeName;
45 }
46
47 public String getImportClass() {
48 return importClass;
49 }
50
51 public static DataType fromName(String typeName) {
52 for (DataType dataType: DataType.values()) {
53 if (dataType.typeName.equalsIgnoreCase(typeName)) {
54 return dataType;
55 }
56 }
57 throw new IllegalArgumentException("Unknown data type: " + typeName);
58 }
59
60 }