All Downloads are FREE. Search and download functionalities are using the official Maven repository.

grails.gorm.time.LocalDateTimeConverter.groovy Maven / Gradle / Ivy

There is a newer version: 8.1.2
Show newest version
package grails.gorm.time

import groovy.transform.CompileStatic

import java.time.Instant
import java.time.LocalDateTime
import java.time.ZoneId
import java.time.ZoneOffset

/**
 * A trait to convert a {@link java.time.LocalDateTime} to and from a long
 *
 * @author James Kleeh
 */
@CompileStatic
trait LocalDateTimeConverter implements TemporalConverter {

    @Override
    Long convert(LocalDateTime value) {
        value.toInstant(ZoneOffset.UTC).toEpochMilli()
    }

    @Override
    LocalDateTime convert(Long value) {
        LocalDateTime.ofInstant(Instant.ofEpochMilli(value), ZoneId.of('UTC'))
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy