mirror of
https://github.com/msgpack/msgpack-c.git
synced 2025-03-19 21:18:23 +01:00
java: refactor org.msgpack.util.codegen.*.java
This commit is contained in:
parent
3473800ab6
commit
57446de875
@ -68,58 +68,6 @@ public interface Constants {
|
||||
|
||||
String METHOD_NAME_UNPACK = "unpack";
|
||||
|
||||
String METHOD_NAME_UNPACKBOOLEAN = "unpackBoolean";
|
||||
|
||||
String METHOD_NAME_UNPACKBYTE = "unpackByte";
|
||||
|
||||
String METHOD_NAME_UNPACKDOUBLE = "unpackDouble";
|
||||
|
||||
String METHOD_NAME_UNPACKFLOAT = "unpackFloat";
|
||||
|
||||
String METHOD_NAME_UNPACKINT = "unpackInt";
|
||||
|
||||
String METHOD_NAME_UNPACKLONG = "unpackLong";
|
||||
|
||||
String METHOD_NAME_UNPACKSHORT = "unpackShort";
|
||||
|
||||
String METHOD_NAME_UNPACKSTRING = "unpackString";
|
||||
|
||||
String METHOD_NAME_UNPACKBIGINTEGER = "unpackBigInteger";
|
||||
|
||||
String METHOD_NAME_UNPACKOBJECT = "unpackObject";
|
||||
|
||||
String METHOD_NAME_UNPACKBYTEARRAY = "unpackByteArray";
|
||||
|
||||
String METHOD_NAME_UNPACKARRAY = "unpackArray";
|
||||
|
||||
String METHOD_NAME_UNPACKMAP = "unpackMap";
|
||||
|
||||
String METHOD_NAME_ASARRAY = "asArray";
|
||||
|
||||
String METHOD_NAME_ASBOOLEAN = "asBoolean";
|
||||
|
||||
String METHOD_NAME_ASBYTE = "asByte";
|
||||
|
||||
String METHOD_NAME_ASSHORT = "asShort";
|
||||
|
||||
String METHOD_NAME_ASINT = "asInt";
|
||||
|
||||
String METHOD_NAME_ASFLOAT = "asFloat";
|
||||
|
||||
String METHOD_NAME_ASLONG = "asLong";
|
||||
|
||||
String METHOD_NAME_ASDOUBLE = "asDouble";
|
||||
|
||||
String METHOD_NAME_ASSTRING = "asString";
|
||||
|
||||
String METHOD_NAME_ASBYTEARRAY = "asByteArray";
|
||||
|
||||
String METHOD_NAME_ASBIGINTEGER = "asBigInteger";
|
||||
|
||||
String METHOD_NAME_ASLIST = "asList";
|
||||
|
||||
String METHOD_NAME_ASMAP = "asMap";
|
||||
|
||||
String STATEMENT_PACKER_PACKERMETHODBODY_01 = "%s _$$_t = (%s)$2; ";
|
||||
|
||||
String STATEMENT_PACKER_PACKERMETHODBODY_02 = "$1.packArray(%d); ";
|
||||
|
@ -207,11 +207,11 @@ public class DynamicCodeGenBase implements Constants {
|
||||
}
|
||||
}
|
||||
|
||||
static interface TemplateAccessor {
|
||||
public static interface TemplateAccessor {
|
||||
void setTemplates(Template[] templates);
|
||||
}
|
||||
|
||||
static class TemplateAccessorImpl implements TemplateAccessor {
|
||||
protected static class TemplateAccessorImpl implements TemplateAccessor {
|
||||
public Class<?> type;
|
||||
|
||||
public Template[] _$$_templates;
|
||||
@ -416,67 +416,6 @@ public class DynamicCodeGenBase implements Constants {
|
||||
}
|
||||
}
|
||||
|
||||
public String getUnpackMethodName(Class<?> c)
|
||||
throws DynamicCodeGenException {
|
||||
if (c.equals(boolean.class) || c.equals(Boolean.class)) {
|
||||
return METHOD_NAME_UNPACKBOOLEAN;
|
||||
} else if (c.equals(byte.class) || c.equals(Byte.class)) {
|
||||
return METHOD_NAME_UNPACKBYTE;
|
||||
} else if (c.equals(short.class) || c.equals(Short.class)) {
|
||||
return METHOD_NAME_UNPACKSHORT;
|
||||
} else if (c.equals(int.class) || c.equals(Integer.class)) {
|
||||
return METHOD_NAME_UNPACKINT;
|
||||
} else if (c.equals(float.class) || c.equals(Float.class)) {
|
||||
return METHOD_NAME_UNPACKFLOAT;
|
||||
} else if (c.equals(long.class) || c.equals(Long.class)) {
|
||||
return METHOD_NAME_UNPACKLONG;
|
||||
} else if (c.equals(double.class) || c.equals(Double.class)) {
|
||||
return METHOD_NAME_UNPACKDOUBLE;
|
||||
} else if (c.equals(String.class)) {
|
||||
return METHOD_NAME_UNPACKSTRING;
|
||||
} else if (c.equals(byte[].class)) {
|
||||
return METHOD_NAME_UNPACKBYTEARRAY;
|
||||
} else if (c.equals(BigInteger.class)) {
|
||||
return METHOD_NAME_UNPACKBIGINTEGER;
|
||||
} else if (List.class.isAssignableFrom(c)) {
|
||||
return METHOD_NAME_UNPACK;
|
||||
} else if (Map.class.isAssignableFrom(c)) {
|
||||
return METHOD_NAME_UNPACK;
|
||||
} else {
|
||||
throw new DynamicCodeGenException("Type error: " + c.getName());
|
||||
}
|
||||
}
|
||||
|
||||
public String getAsMethodName(Class<?> c) {
|
||||
if (c.equals(boolean.class) || c.equals(Boolean.class)) {
|
||||
return METHOD_NAME_ASBOOLEAN;
|
||||
} else if (c.equals(byte.class) || c.equals(Byte.class)) {
|
||||
return METHOD_NAME_ASBYTE;
|
||||
} else if (c.equals(short.class) || c.equals(Short.class)) {
|
||||
return METHOD_NAME_ASSHORT;
|
||||
} else if (c.equals(int.class) || c.equals(Integer.class)) {
|
||||
return METHOD_NAME_ASINT;
|
||||
} else if (c.equals(float.class) || c.equals(Float.class)) {
|
||||
return METHOD_NAME_ASFLOAT;
|
||||
} else if (c.equals(long.class) || c.equals(Long.class)) {
|
||||
return METHOD_NAME_ASLONG;
|
||||
} else if (c.equals(double.class) || c.equals(Double.class)) {
|
||||
return METHOD_NAME_ASDOUBLE;
|
||||
} else if (c.equals(String.class)) {
|
||||
return METHOD_NAME_ASSTRING;
|
||||
} else if (c.equals(byte[].class)) {
|
||||
return METHOD_NAME_ASBYTEARRAY;
|
||||
} else if (c.equals(BigInteger.class)) {
|
||||
return METHOD_NAME_ASBIGINTEGER;
|
||||
} else if (List.class.isAssignableFrom(c)) {
|
||||
return METHOD_NAME_ASLIST;
|
||||
} else if (Map.class.isAssignableFrom(c)) {
|
||||
return METHOD_NAME_ASMAP;
|
||||
} else {
|
||||
throw new DynamicCodeGenException("Type error: " + c.getName());
|
||||
}
|
||||
}
|
||||
|
||||
public static MessagePacker toMessagePacker(Template tmpl) {
|
||||
if (tmpl instanceof BigIntegerTemplate) {
|
||||
return BigIntegerPacker.getInstance();
|
||||
|
@ -37,8 +37,8 @@ public class DynamicPacker {
|
||||
Constructor<?> cons = packerClass
|
||||
.getDeclaredConstructor(new Class[] { Class.class });
|
||||
Object obj = cons.newInstance(new Object[] { c });
|
||||
((MessagePackerAccessor) obj).setMessagePackers(gen
|
||||
.getMessagePackers(c));
|
||||
MessagePacker[] packers = gen.getMessagePackers(c);
|
||||
((MessagePackerAccessor) obj).setMessagePackers(packers);
|
||||
return (MessagePacker) obj;
|
||||
} catch (InstantiationException e) {
|
||||
throw new DynamicCodeGenException(e.getMessage(), e);
|
||||
|
Loading…
x
Reference in New Issue
Block a user