Package org.yamcs.yarch
Class TimePartitionSchema
- java.lang.Object
-
- org.yamcs.yarch.TimePartitionSchema
-
public abstract class TimePartitionSchema extends Object
Implements different schemes for partitioning by time. It gives back a partition start/end and a directory where data shall be stored. Currently the following are implemented: YYYY YYYY/DOY YYYY/MM
-
-
Constructor Summary
Constructors Constructor Description TimePartitionSchema()
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description static TimePartitionSchemagetInstance(String schema)StringgetName()name for the partitioning schema (YYYY/DOY, YYYY/MM, etc)abstract TimePartitionInfogetPartitionInfo(long instant)returns the directory where this instant shall be written.abstract TimePartitionInfoparseDir(String dir)Parses a string of the shape "A/B/..." into a PartitionInfo.
-
-
-
Method Detail
-
getPartitionInfo
public abstract TimePartitionInfo getPartitionInfo(long instant)
returns the directory where this instant shall be written. This is likely to be expensive operation - since instant has to be converted into a calendar taking into accounts leap seconds and all the rest.- Parameters:
instant-
-
parseDir
public abstract TimePartitionInfo parseDir(String dir)
Parses a string of the shape "A/B/..." into a PartitionInfo. It is used by the storage engines to parse the partitions from disk at startup. Returns null if the given string does not match the expected directory.
-
getInstance
public static TimePartitionSchema getInstance(String schema)
-
getName
public String getName()
name for the partitioning schema (YYYY/DOY, YYYY/MM, etc)- Returns:
- the name of the partitioning schema
-
-