public abstract class TimeMapper extends java.lang.Object implements DomainMapper
A java (IEEE 754) double has 52+1 bits of precision, which I make 52*ln(2)/ln(10)=15.65 decimal places, and a year contains 3.15e7 seconds, which gives you the following precisions:
| Modifier and Type | Field and Description |
|---|---|
static TimeMapper |
DECIMAL_YEAR
Mapper for numeric values in decimal year (since 0 AD).
|
static TimeMapper |
ISO_8601
Mapper for ISO-8601 strings.
|
static TimeMapper |
JD
Mapper for numeric values in Julian Day.
|
static TimeMapper |
MJD
Mapper for numeric values in Modified Julian Date.
|
static java.lang.String |
TARGET_NAME
Returns target domain name ("Time").
|
static TimeMapper |
UNIX_SECONDS
Mapper for numeric values (already) in unix seconds.
|
| Modifier | Constructor and Description |
|---|---|
protected |
TimeMapper(java.lang.Class sourceClass,
java.lang.String sourceName,
java.lang.String sourceDescription)
Constructor.
|
| Modifier and Type | Method and Description |
|---|---|
java.lang.Class |
getSourceClass()
Returns the type of values from which this mapper instance can
convert.
|
java.lang.String |
getSourceDescription()
Returns a description of the type of source values which this mapper
can convert from.
|
java.lang.String |
getSourceName()
Returns a short name for the type of source values which this mapper
can convert from.
|
java.lang.String |
getTargetName()
Returns
TARGET_NAME. |
static TimeMapper[] |
getTimeMappers()
Returns a selection of time mapper instances.
|
abstract double |
toUnixSeconds(java.lang.Object sourceValue)
Maps a source value to time in seconds since the Unix epoch.
|
public static final java.lang.String TARGET_NAME
public static final TimeMapper DECIMAL_YEAR
public static final TimeMapper MJD
public static final TimeMapper JD
public static final TimeMapper UNIX_SECONDS
public static final TimeMapper ISO_8601
protected TimeMapper(java.lang.Class sourceClass,
java.lang.String sourceName,
java.lang.String sourceDescription)
sourceClass - sourceName - source type namesourceDescription - source type descriptionpublic final java.lang.String getTargetName()
TARGET_NAME.getTargetName in interface DomainMapperpublic java.lang.Class getSourceClass()
DomainMappergetSourceClass in interface DomainMapperpublic java.lang.String getSourceName()
DomainMappergetSourceName in interface DomainMapperpublic java.lang.String getSourceDescription()
DomainMappergetSourceDescription in interface DomainMapperpublic abstract double toUnixSeconds(java.lang.Object sourceValue)
sourceValue - value in source domainpublic static TimeMapper[] getTimeMappers()
Copyright © 2017 Central Laboratory of the Research Councils. All Rights Reserved.