52 lines
1.8 KiB
Java
52 lines
1.8 KiB
Java
/*
|
|
* Decompiled with CFR 0.152.
|
|
*/
|
|
package com.tridium.sys.schema;
|
|
|
|
import com.tridium.sys.schema.Introspector;
|
|
import com.tridium.sys.schema.SimpleType;
|
|
import java.lang.reflect.Modifier;
|
|
import java.util.HashMap;
|
|
import javax.baja.sys.BSimple;
|
|
import javax.baja.sys.Type;
|
|
|
|
class SimpleIntrospector
|
|
extends Introspector {
|
|
static HashMap dataTypes = new HashMap();
|
|
|
|
Type introspect() throws Exception {
|
|
if (!this.isAbstract && !Modifier.isFinal(this.cls.getModifiers())) {
|
|
throw this.err("Concrete BSimples must be declared final");
|
|
}
|
|
return new SimpleType(this, (BSimple)this.getConstantFieldObject("DEFAULT"), SimpleIntrospector.getDataTypeSymbol(this.cls));
|
|
}
|
|
|
|
static char getDataTypeSymbol(Class clazz) {
|
|
Character c = (Character)dataTypes.get(clazz.getName());
|
|
if (c == null) {
|
|
return '\u0000';
|
|
}
|
|
return c.charValue();
|
|
}
|
|
|
|
SimpleIntrospector(int n, Class clazz) {
|
|
super(n, clazz);
|
|
}
|
|
|
|
static {
|
|
dataTypes.put("javax.baja.sys.BBoolean", new Character('b'));
|
|
dataTypes.put("javax.baja.sys.BInteger", new Character('i'));
|
|
dataTypes.put("javax.baja.sys.BLong", new Character('l'));
|
|
dataTypes.put("javax.baja.sys.BFloat", new Character('f'));
|
|
dataTypes.put("javax.baja.sys.BDouble", new Character('d'));
|
|
dataTypes.put("javax.baja.sys.BString", new Character('s'));
|
|
dataTypes.put("javax.baja.sys.BDynamicEnum", new Character('e'));
|
|
dataTypes.put("javax.baja.sys.BEnumRange", new Character('E'));
|
|
dataTypes.put("javax.baja.sys.BAbsTime", new Character('a'));
|
|
dataTypes.put("javax.baja.sys.BRelTime", new Character('r'));
|
|
dataTypes.put("javax.baja.timezone.BTimeZone", new Character('z'));
|
|
dataTypes.put("javax.baja.units.BUnit", new Character('u'));
|
|
}
|
|
}
|
|
|