@Override public byte[] toBytes(Object object) { if (object == null) { throw newIllegalDataException(this + " may not be null"); } byte[] bytes = new byte[getByteSize()]; toBytes(object, bytes, 0); return bytes; }
@Override public boolean isCoercibleTo(PDataType targetType) { return equalsAny(targetType, this, PUnsignedTime.INSTANCE, PUnsignedTimestamp.INSTANCE) || PDate.INSTANCE.isCoercibleTo(targetType); }
@Override public int toBytes(Object object, byte[] bytes, int offset) { if (object == null) { throw newIllegalDataException(this + " may not be null"); } getCodec().encodeLong(((java.util.Date) object).getTime(), bytes, offset); return this.getByteSize(); }
@Override public int toBytes(Object object, byte[] bytes, int offset) { return PUnsignedDate.INSTANCE.toBytes(object, bytes, offset); }
@Override protected PDataCodec getKeyRangeCodec(PDataType columnDataType) { return columnDataType == PTimestamp.INSTANCE ? PDate.INSTANCE.getCodec() : columnDataType == PUnsignedTimestamp.INSTANCE ? PUnsignedDate.INSTANCE.getCodec() : super.getKeyRangeCodec(columnDataType); }
@Override public Object toObject(Object object, PDataType actualType) { Date d = (Date) PDate.INSTANCE.toObject(object, actualType); throwIfNonNegativeDate(d); return d; }
@Override public boolean isCastableTo(PDataType targetType) { return PUnsignedDate.INSTANCE.isCastableTo(targetType); }
@Override public boolean isCoercibleTo(PDataType targetType) { return PUnsignedDate.INSTANCE.isCoercibleTo(targetType); }
@Override public String toStringLiteral(Object o, Format formatter) { return PUnsignedDate.INSTANCE.toStringLiteral(o, formatter); }
@Override public void coerceBytes(ImmutableBytesWritable ptr, Object object, PDataType actualType, Integer maxLength, Integer scale, SortOrder actualModifier, Integer desiredMaxLength, Integer desiredScale, SortOrder expectedModifier) { if (ptr.getLength() > getByteSize()) { ptr.set(ptr.get(), ptr.getOffset(), getByteSize()); } super.coerceBytes(ptr, object, actualType, maxLength, scale, actualModifier, desiredMaxLength, desiredScale, expectedModifier); }
private PUnsignedDateArray() { super("UNSIGNED_DATE ARRAY", PDataType.ARRAY_TYPE_BASE + PUnsignedDate.INSTANCE.getSqlType(), PhoenixArray.class, null, 41); }
@Override public byte[] toBytes(Object object) { return PUnsignedDate.INSTANCE.toBytes(object); }
@Override protected PDataCodec getKeyRangeCodec(PDataType columnDataType) { return columnDataType == PTimestamp.INSTANCE ? PDate.INSTANCE.getCodec() : columnDataType == PUnsignedTimestamp.INSTANCE ? PUnsignedDate.INSTANCE.getCodec() : super.getKeyRangeCodec(columnDataType); }
@Override public Object toObject(byte[] b, int o, int l, PDataType actualType, SortOrder sortOrder, Integer maxLength, Integer scale) { Date d = (Date) PDate.INSTANCE.toObject(b, o, l, actualType, sortOrder); throwIfNonNegativeDate(d); return d; }
@Override public boolean isCastableTo(PDataType targetType) { return PUnsignedDate.INSTANCE.isCastableTo(targetType); }
@Override public boolean isCoercibleTo(PDataType targetType) { return targetType.equals(this) || PUnsignedDate.INSTANCE.isCoercibleTo(targetType); }
@Override public String toStringLiteral(byte[] b, int offset, int length, Format formatter) { return PUnsignedDate.INSTANCE.toStringLiteral(b, offset, length, formatter); }
@Override public void coerceBytes(ImmutableBytesWritable ptr, Object object, PDataType actualType, Integer maxLength, Integer scale, SortOrder actualModifier, Integer desiredMaxLength, Integer desiredScale, SortOrder expectedModifier) { if (ptr.getLength() > getByteSize()) { ptr.set(ptr.get(), ptr.getOffset(), getByteSize()); } super.coerceBytes(ptr, object, actualType, maxLength, scale, actualModifier, desiredMaxLength, desiredScale, expectedModifier); }
private PUnsignedDateArray() { super("UNSIGNED_DATE ARRAY", PDataType.ARRAY_TYPE_BASE + PUnsignedDate.INSTANCE.getSqlType(), PhoenixArray.class, null, 41); }
@Override public byte[] toBytes(Object object) { if (object == null) { throw newIllegalDataException(this + " may not be null"); } byte[] bytes = new byte[getByteSize()]; toBytes(object, bytes, 0); return bytes; }