addFunctionIfNeeded(functions, inputType, DecimalType.instance, getDecimalConversionFunction(inputType)); addFunctionIfNeeded(functions, inputType, IntegerType.instance, p -> BigInteger.valueOf(p.longValue())); functions.add(CastAsTextFunction.create(inputType, AsciiType.instance)); functions.add(CastAsTextFunction.create(inputType, UTF8Type.instance)); functions.add(CastAsTextFunction.create(InetAddressType.instance, AsciiType.instance)); functions.add(CastAsTextFunction.create(InetAddressType.instance, UTF8Type.instance)); functions.add(CastAsTextFunction.create(BooleanType.instance, AsciiType.instance)); functions.add(CastAsTextFunction.create(BooleanType.instance, UTF8Type.instance)); functions.add(CastAsTextFunction.create(TimeUUIDType.instance, AsciiType.instance)); functions.add(CastAsTextFunction.create(TimeUUIDType.instance, UTF8Type.instance)); functions.add(CassandraFunctionWrapper.create(TimestampType.instance, SimpleDateType.instance, TimeFcts.timestampToDate)); functions.add(CastAsTextFunction.create(TimestampType.instance, AsciiType.instance)); functions.add(CastAsTextFunction.create(TimestampType.instance, UTF8Type.instance)); functions.add(CassandraFunctionWrapper.create(SimpleDateType.instance, TimestampType.instance, TimeFcts.dateToTimestamp)); functions.add(CastAsTextFunction.create(SimpleDateType.instance, AsciiType.instance)); functions.add(CastAsTextFunction.create(SimpleDateType.instance, UTF8Type.instance)); functions.add(CastAsTextFunction.create(TimeType.instance, AsciiType.instance)); functions.add(CastAsTextFunction.create(TimeType.instance, UTF8Type.instance)); functions.add(CastAsTextFunction.create(UUIDType.instance, AsciiType.instance)); functions.add(CastAsTextFunction.create(UUIDType.instance, UTF8Type.instance));
public ByteBuffer execute(ProtocolVersion protocolVersion, List<ByteBuffer> parameters) { ByteBuffer bb = parameters.get(0); if (bb == null) return null; return outputType().decompose(inputType().getSerializer().toCQLLiteral(bb)); } }
addFunctionIfNeeded(functions, inputType, DecimalType.instance, getDecimalConversionFunction(inputType)); addFunctionIfNeeded(functions, inputType, IntegerType.instance, p -> BigInteger.valueOf(p.longValue())); functions.add(CastAsTextFunction.create(inputType, AsciiType.instance)); functions.add(CastAsTextFunction.create(inputType, UTF8Type.instance)); functions.add(CastAsTextFunction.create(InetAddressType.instance, AsciiType.instance)); functions.add(CastAsTextFunction.create(InetAddressType.instance, UTF8Type.instance)); functions.add(CastAsTextFunction.create(BooleanType.instance, AsciiType.instance)); functions.add(CastAsTextFunction.create(BooleanType.instance, UTF8Type.instance)); functions.add(CastAsTextFunction.create(TimeUUIDType.instance, AsciiType.instance)); functions.add(CastAsTextFunction.create(TimeUUIDType.instance, UTF8Type.instance)); functions.add(CassandraFunctionWrapper.create(TimestampType.instance, SimpleDateType.instance, TimeFcts.timestampToDate)); functions.add(CastAsTextFunction.create(TimestampType.instance, AsciiType.instance)); functions.add(CastAsTextFunction.create(TimestampType.instance, UTF8Type.instance)); functions.add(CassandraFunctionWrapper.create(SimpleDateType.instance, TimestampType.instance, TimeFcts.dateToTimestamp)); functions.add(CastAsTextFunction.create(SimpleDateType.instance, AsciiType.instance)); functions.add(CastAsTextFunction.create(SimpleDateType.instance, UTF8Type.instance)); functions.add(CastAsTextFunction.create(TimeType.instance, AsciiType.instance)); functions.add(CastAsTextFunction.create(TimeType.instance, UTF8Type.instance)); functions.add(CastAsTextFunction.create(UUIDType.instance, AsciiType.instance)); functions.add(CastAsTextFunction.create(UUIDType.instance, UTF8Type.instance));
addFunctionIfNeeded(functions, inputType, DecimalType.instance, p -> BigDecimal.valueOf(p.doubleValue())); addFunctionIfNeeded(functions, inputType, IntegerType.instance, p -> BigInteger.valueOf(p.longValue())); functions.add(CastAsTextFunction.create(inputType, AsciiType.instance)); functions.add(CastAsTextFunction.create(inputType, UTF8Type.instance)); functions.add(CastAsTextFunction.create(InetAddressType.instance, AsciiType.instance)); functions.add(CastAsTextFunction.create(InetAddressType.instance, UTF8Type.instance)); functions.add(CastAsTextFunction.create(BooleanType.instance, AsciiType.instance)); functions.add(CastAsTextFunction.create(BooleanType.instance, UTF8Type.instance)); functions.add(CastAsTextFunction.create(TimeUUIDType.instance, AsciiType.instance)); functions.add(CastAsTextFunction.create(TimeUUIDType.instance, UTF8Type.instance)); functions.add(CassandraFunctionWrapper.create(TimestampType.instance, SimpleDateType.instance, TimeFcts.timestampToDate)); functions.add(CastAsTextFunction.create(TimestampType.instance, AsciiType.instance)); functions.add(CastAsTextFunction.create(TimestampType.instance, UTF8Type.instance)); functions.add(CassandraFunctionWrapper.create(SimpleDateType.instance, TimestampType.instance, TimeFcts.dateToTimestamp)); functions.add(CastAsTextFunction.create(SimpleDateType.instance, AsciiType.instance)); functions.add(CastAsTextFunction.create(SimpleDateType.instance, UTF8Type.instance)); functions.add(CastAsTextFunction.create(TimeType.instance, AsciiType.instance)); functions.add(CastAsTextFunction.create(TimeType.instance, UTF8Type.instance)); functions.add(CastAsTextFunction.create(UUIDType.instance, AsciiType.instance)); functions.add(CastAsTextFunction.create(UUIDType.instance, UTF8Type.instance));
public static <I> CastAsTextFunction<I> create(AbstractType<I> inputType, AbstractType<String> outputType) { return new CastAsTextFunction<I>(inputType, outputType); }
public ByteBuffer execute(ProtocolVersion protocolVersion, List<ByteBuffer> parameters) { ByteBuffer bb = parameters.get(0); if (bb == null) return null; return outputType().decompose(inputType().getSerializer().toCQLLiteral(bb)); } }
public static <I> CastAsTextFunction<I> create(AbstractType<I> inputType, AbstractType<String> outputType) { return new CastAsTextFunction<I>(inputType, outputType); }
public static <I> CastAsTextFunction<I> create(AbstractType<I> inputType, AbstractType<String> outputType) { return new CastAsTextFunction<I>(inputType, outputType); }
public ByteBuffer execute(ProtocolVersion protocolVersion, List<ByteBuffer> parameters) { ByteBuffer bb = parameters.get(0); if (bb == null) return null; return outputType().decompose(inputType().getSerializer().toCQLLiteral(bb)); } }