public interface DseFunctionMetadata extends FunctionMetadata
It adds support for the DSE-specific DETERMINISTIC
and MONOTONIC
keywords.
Modifier and Type | Interface and Description |
---|---|
static class |
DseFunctionMetadata.Monotonicity
The monotonicity of a function.
|
Modifier and Type | Method and Description |
---|---|
default String |
describe(boolean pretty)
Returns a single CQL statement that creates the element.
|
default Optional<Boolean> |
getDeterministic()
Indicates if this function is deterministic.
|
List<CqlIdentifier> |
getMonotonicArgumentNames()
Returns a list of argument names that are monotonic.
|
default Optional<DseFunctionMetadata.Monotonicity> |
getMonotonicity()
Returns this function's
DseFunctionMetadata.Monotonicity . |
boolean |
isDeterministic()
Deprecated.
Use
getDeterministic() instead. |
boolean |
isMonotonic()
Deprecated.
use
getMonotonicity() instead. |
describeWithChildren, getBody, getKeyspace, getLanguage, getParameterNames, getReturnType, getSignature, isCalledOnNullInput
@Deprecated boolean isDeterministic()
getDeterministic()
instead.default Optional<Boolean> getDeterministic()
This method returns empty if this information was not found in the system tables, regardless of the actual function characteristics; this is the case for all versions of DSE older than 6.0.0.
@Deprecated boolean isMonotonic()
getMonotonicity()
instead.default Optional<DseFunctionMetadata.Monotonicity> getMonotonicity()
DseFunctionMetadata.Monotonicity
.
A function can be either:
DseFunctionMetadata.Monotonicity.FULLY_MONOTONIC
,
and getMonotonicArgumentNames()
returns all the arguments;
DseFunctionMetadata.Monotonicity.PARTIALLY_MONOTONIC
, and getMonotonicArgumentNames()
returns a singleton list;
DseFunctionMetadata.Monotonicity.NOT_MONOTONIC
and
getMonotonicArgumentNames()
returns an empty list.
Full monotonicity is required to use the function in a GROUP BY clause.
This method returns empty if this information was not found in the system tables, regardless of the actual function characteristics; this is the case for all versions of DSE older than 6.0.0.
DseFunctionMetadata.Monotonicity
; or empty if such
information is not available in the system tables.@NonNull List<CqlIdentifier> getMonotonicArgumentNames()
See getMonotonicity()
for explanations on monotonicity, and the possible values
returned by this method.
NOTE: For versions of DSE older than 6.0.0, this method will always return an empty list, regardless of the actual function characteristics.
@NonNull default String describe(boolean pretty)
Describable
describe
in interface Describable
describe
in interface FunctionMetadata
pretty
- if true
, make the output more human-readable (line breaks, indents, and
pretty identifiers
). If false
, return the
statement on a single line with minimal formatting.Copyright © 2017–2020. All rights reserved.