@@ -35,106 +35,59 @@ public static long packLiteral(Literal literal) {
3535 if (xsdDataType == null ) {
3636 return 0L ;
3737 }
38- switch (xsdDataType ) {
39- case DECIMAL :
40- return packDecimal (literal .decimalValue ());
41- case DOUBLE :
42- return packDouble (literal .doubleValue ());
43- case FLOAT :
44- return packFloat (literal .floatValue ());
45- case INTEGER :
46- return packInteger (literal );
47- case LONG :
48- return packLong (literal );
49- case INT :
50- return packInt (literal );
51- case SHORT :
52- return packShort (literal );
53- case BYTE :
54- return packByte (literal );
55- case UNSIGNED_LONG :
56- return packUnsignedLong (literal );
57- case UNSIGNED_INT :
58- return packUnsignedInt (literal );
59- case UNSIGNED_SHORT :
60- return packUnsignedShort (literal );
61- case UNSIGNED_BYTE :
62- return packUnsignedByte (literal );
63- case POSITIVE_INTEGER :
64- return packPositiveInteger (literal );
65- case NEGATIVE_INTEGER :
66- return packNegativeInteger (literal );
67- case NON_NEGATIVE_INTEGER :
68- return packNonNegativeInteger (literal );
69- case NON_POSITIVE_INTEGER :
70- return packNonPositiveInteger (literal );
71- case STRING :
72- return packString (literal );
73- case DATETIME :
74- return packDateTime (literal );
75- case DATETIMESTAMP :
76- return packDateTimeStamp (literal );
77- case DATE :
78- return packDate (literal );
79- case BOOLEAN :
80- return packBoolean (literal );
81- default :
38+ return switch (xsdDataType ) {
39+ case DECIMAL -> packDecimal (literal .decimalValue ());
40+ case DOUBLE -> packDouble (literal .doubleValue ());
41+ case FLOAT -> packFloat (literal .floatValue ());
42+ case INTEGER -> packInteger (literal );
43+ case LONG -> packLong (literal );
44+ case INT -> packInt (literal );
45+ case SHORT -> packShort (literal );
46+ case BYTE -> packByte (literal );
47+ case UNSIGNED_LONG -> packUnsignedLong (literal );
48+ case UNSIGNED_INT -> packUnsignedInt (literal );
49+ case UNSIGNED_SHORT -> packUnsignedShort (literal );
50+ case UNSIGNED_BYTE -> packUnsignedByte (literal );
51+ case POSITIVE_INTEGER -> packPositiveInteger (literal );
52+ case NEGATIVE_INTEGER -> packNegativeInteger (literal );
53+ case NON_NEGATIVE_INTEGER -> packNonNegativeInteger (literal );
54+ case NON_POSITIVE_INTEGER -> packNonPositiveInteger (literal );
55+ case STRING -> packString (literal );
56+ case DATETIME -> packDateTime (literal );
57+ case DATETIMESTAMP -> packDateTimeStamp (literal );
58+ case DATE -> packDate (literal );
59+ case BOOLEAN -> packBoolean (literal );
60+ default ->
8261 // unsupported type
83- return 0L ;
84- }
62+ 0L ;
63+ };
8564 }
8665
8766 public static Literal unpackLiteral (long value , ValueFactory valueFactory ) {
88- // special handling for double values
89- if (isDouble (value )) {
90- return unpackDouble (value , valueFactory );
91- }
92-
9367 int idType = ValueIds .getIdType (value );
94-
95- switch (idType ) {
96- case ValueIds .T_DECIMAL :
97- return unpackDecimal (value , valueFactory );
98- case ValueIds .T_FLOAT :
99- return unpackFloat (value , valueFactory );
100- case ValueIds .T_INTEGER :
101- return unpackInteger (value , valueFactory );
102- case ValueIds .T_LONG :
103- return unpackLong (value , valueFactory );
104- case ValueIds .T_INT :
105- return unpackInt (value , valueFactory );
106- case ValueIds .T_SHORT :
107- return unpackShort (value , valueFactory );
108- case ValueIds .T_BYTE :
109- return unpackByte (value , valueFactory );
110- case ValueIds .T_UNSIGNEDLONG :
111- return unpackUnsignedLong (value , valueFactory );
112- case ValueIds .T_UNSIGNEDINT :
113- return unpackUnsignedInt (value , valueFactory );
114- case ValueIds .T_UNSIGNEDSHORT :
115- return unpackUnsignedShort (value , valueFactory );
116- case ValueIds .T_UNSIGNEDBYTE :
117- return unpackUnsignedByte (value , valueFactory );
118- case ValueIds .T_POSITIVE_INTEGER :
119- return unpackPositiveInteger (value , valueFactory );
120- case ValueIds .T_NEGATIVE_INTEGER :
121- return unpackNegativeInteger (value , valueFactory );
122- case ValueIds .T_NON_NEGATIVE_INTEGER :
123- return unpackNonNegativeInteger (value , valueFactory );
124- case ValueIds .T_NON_POSITIVE_INTEGER :
125- return unpackNonPositiveInteger (value , valueFactory );
126- case ValueIds .T_SHORTSTRING :
127- return unpackString (value , valueFactory );
128- case ValueIds .T_DATETIME :
129- return unpackDateTime (value , valueFactory );
130- case ValueIds .T_DATETIMESTAMP :
131- return unpackDateTimeStamp (value , valueFactory );
132- case ValueIds .T_DATE :
133- return unpackDate (value , valueFactory );
134- case ValueIds .T_BOOLEAN :
135- return unpackBoolean (value , valueFactory );
136- default :
137- throw new IllegalArgumentException ("Invalid packed value with id type: " + idType );
138- }
68+ return switch (idType ) {
69+ case ValueIds .T_DOUBLE -> unpackDouble (value , valueFactory );
70+ case ValueIds .T_DECIMAL -> unpackDecimal (value , valueFactory );
71+ case ValueIds .T_FLOAT -> unpackFloat (value , valueFactory );
72+ case ValueIds .T_INTEGER -> unpackInteger (value , valueFactory );
73+ case ValueIds .T_LONG -> unpackLong (value , valueFactory );
74+ case ValueIds .T_INT -> unpackInt (value , valueFactory );
75+ case ValueIds .T_SHORT -> unpackShort (value , valueFactory );
76+ case ValueIds .T_BYTE -> unpackByte (value , valueFactory );
77+ case ValueIds .T_UNSIGNEDLONG -> unpackUnsignedLong (value , valueFactory );
78+ case ValueIds .T_UNSIGNEDINT -> unpackUnsignedInt (value , valueFactory );
79+ case ValueIds .T_UNSIGNEDSHORT -> unpackUnsignedShort (value , valueFactory );
80+ case ValueIds .T_UNSIGNEDBYTE -> unpackUnsignedByte (value , valueFactory );
81+ case ValueIds .T_POSITIVE_INTEGER -> unpackPositiveInteger (value , valueFactory );
82+ case ValueIds .T_NEGATIVE_INTEGER -> unpackNegativeInteger (value , valueFactory );
83+ case ValueIds .T_NON_NEGATIVE_INTEGER -> unpackNonNegativeInteger (value , valueFactory );
84+ case ValueIds .T_NON_POSITIVE_INTEGER -> unpackNonPositiveInteger (value , valueFactory );
85+ case ValueIds .T_SHORTSTRING -> unpackString (value , valueFactory );
86+ case ValueIds .T_DATETIME -> unpackDateTime (value , valueFactory );
87+ case ValueIds .T_DATETIMESTAMP -> unpackDateTimeStamp (value , valueFactory );
88+ case ValueIds .T_DATE -> unpackDate (value , valueFactory );
89+ case ValueIds .T_BOOLEAN -> unpackBoolean (value , valueFactory );
90+ default -> throw new IllegalArgumentException ("Invalid packed value with id type: " + idType );
91+ };
13992 }
14093}
0 commit comments