Package org.elasticsearch.common
Class Rounding
java.lang.Object
org.elasticsearch.common.Rounding
- All Implemented Interfaces:
Writeable
public abstract class Rounding extends java.lang.Object implements Writeable
A strategy for rounding date/time based values.
There are two implementations for rounding.
The first one requires a date time unit and rounds to the supplied date time unit (i.e. quarter of year, day of month)
The second one allows you to specify an interval to round to
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classRounding.Builderstatic classRounding.DateTimeUnitNested classes/interfaces inherited from interface org.elasticsearch.common.io.stream.Writeable
Writeable.Reader<V>, Writeable.Writer<V> -
Constructor Summary
Constructors Constructor Description Rounding() -
Method Summary
Modifier and Type Method Description static Rounding.Builderbuilder(Rounding.DateTimeUnit unit)static Rounding.Builderbuilder(TimeValue interval)abstract booleanequals(java.lang.Object obj)abstract inthashCode()abstract byteid()abstract voidinnerWriteTo(StreamOutput out)abstract longnextRoundingValue(long value)Given the rounded value (which was potentially generated byround(long), returns the next rounding value.abstract longoffset()Deprecated.We're in the process of abstracting offset *into* Rounding so keep any usage to migratory shimsstatic Roundingread(StreamInput in)abstract longround(long value)Rounds the given value.abstract RoundingwithoutOffset()Strip theoffsetfrom these bounds.voidwriteTo(StreamOutput out)Write this into the StreamOutput.
-
Constructor Details
-
Rounding
public Rounding()
-
-
Method Details
-
innerWriteTo
- Throws:
java.io.IOException
-
writeTo
Description copied from interface:WriteableWrite this into the StreamOutput. -
id
public abstract byte id() -
round
public abstract long round(long value)Rounds the given value. -
nextRoundingValue
public abstract long nextRoundingValue(long value)Given the rounded value (which was potentially generated byround(long), returns the next rounding value. For example, with interval based rounding, if the interval is 3,nextRoundValue(6) = 9.- Parameters:
value- The current rounding value- Returns:
- The next rounding value
-
offset
@Deprecated public abstract long offset()Deprecated.We're in the process of abstracting offset *into* Rounding so keep any usage to migratory shimsHow "offset" this rounding is from the traditional "start" of the period. -
withoutOffset
Strip theoffsetfrom these bounds. -
equals
public abstract boolean equals(java.lang.Object obj)- Overrides:
equalsin classjava.lang.Object
-
hashCode
public abstract int hashCode()- Overrides:
hashCodein classjava.lang.Object
-
builder
-
builder
-
read
- Throws:
java.io.IOException
-