@Override @Nullable public Object convert(@Nullable Object source, TypeDescriptor sourceType, TypeDescriptor targetType) { boolean byteBufferTarget = targetType.isAssignableTo(BYTE_BUFFER_TYPE); if (source instanceof ByteBuffer) { ByteBuffer buffer = (ByteBuffer) source; return (byteBufferTarget ? buffer.duplicate() : convertFromByteBuffer(buffer, targetType)); } if (byteBufferTarget) { return convertToByteBuffer(source, sourceType); } // Should not happen throw new IllegalStateException("Unexpected source/target types"); }
@Override public boolean matches(TypeDescriptor sourceType, TypeDescriptor targetType) { boolean byteBufferTarget = targetType.isAssignableTo(BYTE_BUFFER_TYPE); if (sourceType.isAssignableTo(BYTE_BUFFER_TYPE)) { return (byteBufferTarget || matchesFromByteBuffer(targetType)); } return (byteBufferTarget && matchesToByteBuffer(sourceType)); }
/** * Add converters appropriate for most environments. * @param converterRegistry the registry of converters to add to * (must also be castable to ConversionService, e.g. being a {@link ConfigurableConversionService}) * @throws ClassCastException if the given ConverterRegistry could not be cast to a ConversionService */ public static void addDefaultConverters(ConverterRegistry converterRegistry) { addScalarConverters(converterRegistry); addCollectionConverters(converterRegistry); converterRegistry.addConverter(new ByteBufferConverter((ConversionService) converterRegistry)); converterRegistry.addConverter(new StringToTimeZoneConverter()); converterRegistry.addConverter(new ZoneIdToTimeZoneConverter()); converterRegistry.addConverter(new ZonedDateTimeToCalendarConverter()); converterRegistry.addConverter(new ObjectToObjectConverter()); converterRegistry.addConverter(new IdToEntityConverter((ConversionService) converterRegistry)); converterRegistry.addConverter(new FallbackObjectToStringConverter()); converterRegistry.addConverter(new ObjectToOptionalConverter((ConversionService) converterRegistry)); }
/** * Add converters appropriate for most environments. * @param converterRegistry the registry of converters to add to * (must also be castable to ConversionService, e.g. being a {@link ConfigurableConversionService}) * @throws ClassCastException if the given ConverterRegistry could not be cast to a ConversionService */ public static void addDefaultConverters(ConverterRegistry converterRegistry) { addScalarConverters(converterRegistry); addCollectionConverters(converterRegistry); converterRegistry.addConverter(new ByteBufferConverter((ConversionService) converterRegistry)); converterRegistry.addConverter(new StringToTimeZoneConverter()); converterRegistry.addConverter(new ZoneIdToTimeZoneConverter()); converterRegistry.addConverter(new ZonedDateTimeToCalendarConverter()); converterRegistry.addConverter(new ObjectToObjectConverter()); converterRegistry.addConverter(new IdToEntityConverter((ConversionService) converterRegistry)); converterRegistry.addConverter(new FallbackObjectToStringConverter()); converterRegistry.addConverter(new ObjectToOptionalConverter((ConversionService) converterRegistry)); }
@Override public boolean matches(TypeDescriptor sourceType, TypeDescriptor targetType) { boolean byteBufferTarget = targetType.isAssignableTo(BYTE_BUFFER_TYPE); if (sourceType.isAssignableTo(BYTE_BUFFER_TYPE)) { return (byteBufferTarget || matchesFromByteBuffer(targetType)); } return (byteBufferTarget && matchesToByteBuffer(sourceType)); }
@Override @Nullable public Object convert(@Nullable Object source, TypeDescriptor sourceType, TypeDescriptor targetType) { boolean byteBufferTarget = targetType.isAssignableTo(BYTE_BUFFER_TYPE); if (source instanceof ByteBuffer) { ByteBuffer buffer = (ByteBuffer) source; return (byteBufferTarget ? buffer.duplicate() : convertFromByteBuffer(buffer, targetType)); } if (byteBufferTarget) { return convertToByteBuffer(source, sourceType); } // Should not happen throw new IllegalStateException("Unexpected source/target types"); }
/** * Add converters appropriate for most environments. * @param converterRegistry the registry of converters to add to * (must also be castable to ConversionService, e.g. being a {@link ConfigurableConversionService}) * @throws ClassCastException if the given ConverterRegistry could not be cast to a ConversionService */ public static void addDefaultConverters(ConverterRegistry converterRegistry) { addScalarConverters(converterRegistry); addCollectionConverters(converterRegistry); converterRegistry.addConverter(new ByteBufferConverter((ConversionService) converterRegistry)); converterRegistry.addConverter(new StringToTimeZoneConverter()); converterRegistry.addConverter(new ZoneIdToTimeZoneConverter()); converterRegistry.addConverter(new ZonedDateTimeToCalendarConverter()); converterRegistry.addConverter(new ObjectToObjectConverter()); converterRegistry.addConverter(new IdToEntityConverter((ConversionService) converterRegistry)); converterRegistry.addConverter(new FallbackObjectToStringConverter()); converterRegistry.addConverter(new ObjectToOptionalConverter((ConversionService) converterRegistry)); }
@Override public boolean matches(TypeDescriptor sourceType, TypeDescriptor targetType) { boolean byteBufferTarget = targetType.isAssignableTo(BYTE_BUFFER_TYPE); if (sourceType.isAssignableTo(BYTE_BUFFER_TYPE)) { return (byteBufferTarget || matchesFromByteBuffer(targetType)); } return (byteBufferTarget && matchesToByteBuffer(sourceType)); }
@Override @Nullable public Object convert(@Nullable Object source, TypeDescriptor sourceType, TypeDescriptor targetType) { boolean byteBufferTarget = targetType.isAssignableTo(BYTE_BUFFER_TYPE); if (source instanceof ByteBuffer) { ByteBuffer buffer = (ByteBuffer) source; return (byteBufferTarget ? buffer.duplicate() : convertFromByteBuffer(buffer, targetType)); } if (byteBufferTarget) { return convertToByteBuffer(source, sourceType); } // Should not happen throw new IllegalStateException("Unexpected source/target types"); }
/** * Add converters appropriate for most environments. * @param converterRegistry the registry of converters to add to * (must also be castable to ConversionService, e.g. being a {@link ConfigurableConversionService}) * @throws ClassCastException if the given ConverterRegistry could not be cast to a ConversionService */ public static void addDefaultConverters(ConverterRegistry converterRegistry) { addScalarConverters(converterRegistry); addCollectionConverters(converterRegistry); converterRegistry.addConverter(new ByteBufferConverter((ConversionService) converterRegistry)); converterRegistry.addConverter(new StringToTimeZoneConverter()); converterRegistry.addConverter(new ZoneIdToTimeZoneConverter()); converterRegistry.addConverter(new ZonedDateTimeToCalendarConverter()); converterRegistry.addConverter(new ObjectToObjectConverter()); converterRegistry.addConverter(new IdToEntityConverter((ConversionService) converterRegistry)); converterRegistry.addConverter(new FallbackObjectToStringConverter()); converterRegistry.addConverter(new ObjectToOptionalConverter((ConversionService) converterRegistry)); }
@Override public boolean matches(TypeDescriptor sourceType, TypeDescriptor targetType) { boolean byteBufferTarget = targetType.isAssignableTo(BYTE_BUFFER_TYPE); if (sourceType.isAssignableTo(BYTE_BUFFER_TYPE)) { return (byteBufferTarget || matchesFromByteBuffer(targetType)); } return (byteBufferTarget && matchesToByteBuffer(sourceType)); }
@Override @Nullable public Object convert(@Nullable Object source, TypeDescriptor sourceType, TypeDescriptor targetType) { boolean byteBufferTarget = targetType.isAssignableTo(BYTE_BUFFER_TYPE); if (source instanceof ByteBuffer) { ByteBuffer buffer = (ByteBuffer) source; return (byteBufferTarget ? buffer.duplicate() : convertFromByteBuffer(buffer, targetType)); } if (byteBufferTarget) { return convertToByteBuffer(source, sourceType); } // Should not happen throw new IllegalStateException("Unexpected source/target types"); }