private void initForShortValue(short v) { this.value = (VALUE) (Short) v; switch (operator) { case EQUAL: nativeDelegate = ObjectFilter.eqShort(name, v); break; case NOT_EQUAL: nativeDelegate = ObjectFilter.notEqShort(name, v); break; case LESS_THAN: nativeDelegate = ObjectFilter.ltShort(name, v); break; case LESS_THAN_EQUAL: nativeDelegate = ObjectFilter.lteShort(name, v); break; case GREATER_THAN: nativeDelegate = ObjectFilter.gtShort(name, v); break; case GREATER_THAN_EQUAL: nativeDelegate = ObjectFilter.gteShort(name, v); break; case IN: nativeDelegate = ObjectFilter.inShorts(name, Conversions.sarray(values)); break; case BETWEEN: nativeDelegate = ObjectFilter.betweenShort(name, (v), Conversions.toShort(values[1])); break; case NOT_IN: nativeDelegate = ObjectFilter.notInShorts(name, Conversions.sarray(values)); break; default: useDelegate = false; } }
private void initIfNeeded() { if (initialized) return; initialized = true; String name = this.name.toString(); FieldAccess field = field(); if (field == null) { return; } Class type = field.type(); if (!type.isPrimitive() && type != Typ.date) { return; } if (type == Typ.date) { if (!(value instanceof Date)) { initForDate(); } return; } useDelegate = true; if (type == Typ.intgr) { int v = Conversions.toInt(value); initForInt(v); } else if (type == Typ.bt) { byte v = Conversions.toByte(value); initForByte(v); } else if (type == Typ.shrt) { short v = Conversions.toShort(value); initForShortValue(v); } else if (type == Typ.lng) { long v = Conversions.toLong(value); initForLong(v); } else if (type == Typ.flt) { float v = Conversions.toFloat(value); initForFloat(v); } else if (type == Typ.dbl) { double v = Conversions.toDouble(value); initForDouble(v); } else if (type == Typ.bln) { switch (operator) { case EQUAL: nativeDelegate = ObjectFilter.eqBoolean(name, Conversions.toBoolean(value)); break; case NOT_EQUAL: nativeDelegate = ObjectFilter.notEqBoolean(name, Conversions.toBoolean(value)); break; default: useDelegate = false; } } else if (type == Typ.chr) { char v = Conversions.toChar(value); initForChar(v); } }