@Override protected LocalDateTimeValue build( MapValue map, Supplier<ZoneId> defaultZone ) { return LocalDateTimeValue.build( map, defaultZone ); }
public static LocalDateTimeValue truncate( TemporalUnit unit, TemporalValue input, MapValue fields, Supplier<ZoneId> defaultZone ) { Pair<LocalDate,LocalTime> pair = getTruncatedDateAndTime( unit, input, "local date time" ); LocalDate truncatedDate = pair.first(); LocalTime truncatedTime = pair.other(); LocalDateTime truncatedLDT = LocalDateTime.of( truncatedDate, truncatedTime ); if ( fields.size() == 0 ) { return localDateTime( truncatedLDT ); } else { return updateFieldMapWithConflictingSubseconds( fields, unit, truncatedLDT, ( mapValue, localDateTime ) -> { if ( mapValue.size() == 0 ) { return localDateTime( localDateTime ); } else { return build( mapValue.updatedWith( "datetime", localDateTime( localDateTime ) ), defaultZone ); } } ); } }
@Override protected LocalDateTimeValue build( MapValue map, Supplier<ZoneId> defaultZone ) { return LocalDateTimeValue.build( map, defaultZone ); }
public static LocalDateTimeValue truncate( TemporalUnit unit, TemporalValue input, MapValue fields, Supplier<ZoneId> defaultZone ) { Pair<LocalDate,LocalTime> pair = getTruncatedDateAndTime( unit, input, "local date time" ); LocalDate truncatedDate = pair.first(); LocalTime truncatedTime = pair.other(); LocalDateTime truncatedLDT = LocalDateTime.of( truncatedDate, truncatedTime ); if ( fields.size() == 0 ) { return localDateTime( truncatedLDT ); } else { return updateFieldMapWithConflictingSubseconds( fields, unit, truncatedLDT, ( mapValue, localDateTime ) -> { if ( mapValue.size() == 0 ) { return localDateTime( localDateTime ); } else { return build( mapValue.updatedWith( "datetime", localDateTime( localDateTime ) ), defaultZone ); } } ); } }