/** * Creates a new {@link DateConvertingAuditableBeanWrapper}. */ public DateConvertingAuditableBeanWrapper() { DefaultFormattingConversionService conversionService = new DefaultFormattingConversionService(); JodaTimeConverters.getConvertersToRegister().forEach(conversionService::addConverter); Jsr310Converters.getConvertersToRegister().forEach(conversionService::addConverter); ThreeTenBackPortConverters.getConvertersToRegister().forEach(conversionService::addConverter); this.conversionService = conversionService; }
/** * Checks whether the given field has a type that is a supported date type. * @param field */ private void assertValidDateFieldType(Optional<Field> field) { field.ifPresent(it -> { if (SUPPORTED_DATE_TYPES.contains(it.getType().getName())) { return; } Class<?> type = it.getType(); if (Jsr310Converters.supports(type) || ThreeTenBackPortConverters.supports(type)) { return; } throw new IllegalStateException(String.format( "Found created/modified date field with type %s but only %s as well as java.time types are supported!", type, SUPPORTED_DATE_TYPES)); }); }
/** * Creates a new {@link DateConvertingAuditableBeanWrapper}. */ public DateConvertingAuditableBeanWrapper() { DefaultFormattingConversionService conversionService = new DefaultFormattingConversionService(); JodaTimeConverters.getConvertersToRegister() .forEach(conversionService::addConverter); Jsr310Converters.getConvertersToRegister() .forEach(conversionService::addConverter); ThreeTenBackPortConverters.getConvertersToRegister() .forEach(conversionService::addConverter); this.conversionService = conversionService; }
/** * Checks whether the given field has a type that is a supported date type. * * @param field */ private void assertValidDateFieldType(Optional<Field> field) { field.ifPresent(it -> { if (SUPPORTED_DATE_TYPES.contains(it.getType().getName())) { return; } Class<?> type = it.getType(); if (Jsr310Converters.supports(type) || ThreeTenBackPortConverters.supports(type)) { return; } throw new IllegalStateException(String.format( "Found created/modified date field with type %s but only %s as well as java.time types are supported!", type, SUPPORTED_DATE_TYPES)); }); }
public MongoDbConnectionFactory(final List<Converter> converters) { converters.add(new BaseConverters.LoggerConverter()); converters.add(new BaseConverters.ClassConverter()); converters.add(new BaseConverters.CommonsLogConverter()); converters.add(new BaseConverters.PersonAttributesConverter()); converters.add(new BaseConverters.CacheLoaderConverter()); converters.add(new BaseConverters.RunnableConverter()); converters.add(new BaseConverters.ReferenceQueueConverter()); converters.add(new BaseConverters.ThreadLocalConverter()); converters.add(new BaseConverters.CertPathConverter()); converters.add(new BaseConverters.CaffeinCacheConverter()); converters.add(new BaseConverters.CaffeinCacheLoaderConverter()); converters.add(new BaseConverters.CacheConverter()); converters.add(new BaseConverters.PatternToStringConverter()); converters.add(new BaseConverters.StringToPatternConverter()); converters.add(new BaseConverters.CacheBuilderConverter()); converters.add(new BaseConverters.ObjectIdToLongConverter()); converters.addAll(JodaTimeConverters.getConvertersToRegister()); converters.addAll(Jsr310Converters.getConvertersToRegister()); converters.add(new BaseConverters.BsonTimestampToStringConverter()); converters.add(new BaseConverters.ZonedDateTimeToDateConverter()); converters.add(new BaseConverters.DateToZonedDateTimeConverter()); converters.add(new BaseConverters.BsonTimestampToDateConverter()); converters.add(new BaseConverters.ZonedDateTimeToStringConverter()); converters.add(new BaseConverters.StringToZonedDateTimeConverter()); this.customConversions = new CustomConversions(converters); }