Package org.apache.iceberg.transforms
Class Hours<T>
java.lang.Object
org.apache.iceberg.transforms.Hours<T>
- All Implemented Interfaces:
Serializable
,Transform<T,
Integer>
- See Also:
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionReturns a function that applies this transform to values of the giventype
.boolean
canTransform
(Type type) Checks whether this function can be applied to the givenType
.Return the unique transform name to check if similar transforms for the same source field are added multiple times in partition spec builder.protected static <R> R
fromSourceType
(Type type, R dateResult, R microsResult, R nanosResult) getResultType
(Type sourceType) Returns theType
produced by this transform given a source type.protected ChronoUnit
boolean
Whether the transform preserves the order of values (is monotonic).project
(String name, BoundPredicate<T> predicate) Transforms apredicate
to an inclusive predicate on the partition values produced by the transform.projectStrict
(String name, BoundPredicate<T> predicate) Transforms apredicate
to a strict predicate on the partition values produced by the transform.boolean
satisfiesOrderOf
(Transform<?, ?> other) Whether ordering by this transform's result satisfies the ordering of another transform's result.toHumanString
(Type alwaysInt, Integer value) toString()
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.apache.iceberg.transforms.Transform
apply, isIdentity, isVoid, toHumanString
-
Constructor Details
-
Hours
public Hours()
-
-
Method Details
-
granularity
-
toEnum
-
canTransform
Description copied from interface:Transform
Checks whether this function can be applied to the givenType
.- Specified by:
canTransform
in interfaceTransform<T,
Integer> - Parameters:
type
- a type- Returns:
- true if this transform can be applied to the type, false otherwise
-
getResultType
Description copied from interface:Transform
Returns theType
produced by this transform given a source type.- Parameters:
sourceType
- a type- Returns:
- the result type created by the apply method for the given type
-
toHumanString
-
toString
-
fromSourceType
-
bind
Description copied from interface:Transform
Returns a function that applies this transform to values of the giventype
. -
preservesOrder
public boolean preservesOrder()Description copied from interface:Transform
Whether the transform preserves the order of values (is monotonic).A transform preserves order for values when for any given a and b, if a < b then apply(a) <= apply(b).
- Specified by:
preservesOrder
in interfaceTransform<S,
Integer> - Returns:
- true if the transform preserves the order of values
-
satisfiesOrderOf
Description copied from interface:Transform
Whether ordering by this transform's result satisfies the ordering of another transform's result.For example, sorting by day(ts) will produce an ordering that is also by month(ts) or year(ts). However, sorting by day(ts) will not satisfy the order of hour(ts) or identity(ts).
- Specified by:
satisfiesOrderOf
in interfaceTransform<S,
Integer> - Returns:
- true if ordering by this transform is equivalent to ordering by the other transform
-
project
Description copied from interface:Transform
Transforms apredicate
to an inclusive predicate on the partition values produced by the transform.This inclusive transform guarantees that if pred(v) is true, then projected(apply(v)) is true.
-
projectStrict
Description copied from interface:Transform
Transforms apredicate
to a strict predicate on the partition values produced by the transform.This strict transform guarantees that if strict(apply(v)) is true, then pred(v) is also true.
- Specified by:
projectStrict
in interfaceTransform<S,
Integer> - Parameters:
name
- the field name for partition valuespredicate
- a predicate for source values- Returns:
- an inclusive predicate on partition values
-
dedupName
Description copied from interface:Transform
Return the unique transform name to check if similar transforms for the same source field are added multiple times in partition spec builder.
-