private String convertTimestampToString()

in c3r-sdk-core/src/main/java/com/amazonaws/c3r/data/CsvValueFactory.java [97:114]


    private String convertTimestampToString(final ClientValueWithMetadata.Timestamp timestamp) {
        if (timestamp.getValue() == null) {
            return null;
        }

        final DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.SSSSSS");
        final ZoneId zone = timestamp.getIsUtc() ? ZoneOffset.UTC : ZoneId.systemDefault();

        if (timestamp.getUnit() == Units.Seconds.MILLIS) {
            return formatter.format(LocalDateTime.ofInstant(Instant.EPOCH.plus(timestamp.getValue(), ChronoUnit.MILLIS), zone));
        } else if (timestamp.getUnit() == Units.Seconds.MICROS) {
            return formatter.format(LocalDateTime.ofInstant(Instant.EPOCH.plus(timestamp.getValue(), ChronoUnit.MICROS), zone));
        } else if (timestamp.getUnit() == Units.Seconds.NANOS) {
            return formatter.format(LocalDateTime.ofInstant(Instant.EPOCH.plus(timestamp.getValue(), ChronoUnit.NANOS), zone));
        } else {
            throw new C3rRuntimeException("Unexpected time unit found.");
        }
    }