com.espertech.esper.client.annotation
Enum HintEnum

java.lang.Object
  extended by java.lang.Enum<HintEnum>
      extended by com.espertech.esper.client.annotation.HintEnum
All Implemented Interfaces:
java.io.Serializable, java.lang.Comparable<HintEnum>

public enum HintEnum
extends java.lang.Enum<HintEnum>

Enumeration of hint values. Since hints may be a comma-separate list in a single @Hint annotation they are listed as enumeration values here.


Enum Constant Summary
DISABLE_RECLAIM_GROUP
          For use with group-by, disabled reclaim groups.
DISABLE_UNIQUE_IMPLICIT_IDX
          For use everywhere where unique data window are used
DISABLE_WINDOW_SUBQUERY_INDEXSHARE
          If ENABLE_WINDOW_SUBQUERY_INDEXSHARE is not specified for a named window (the default) then this instruction is ignored.
ENABLE_WINDOW_SUBQUERY_INDEXSHARE
          For use with create-named-window statements only, to indicate that statements that subquery the named window use named window data structures (unless the subquery statement specifies below DISBABLE hint and as listed below).
EXCLUDE_PLAN
          For use where query planning applies.
FORCE_NESTED_ITER
          For use with join query plans to force a nested iteration plan.
INDEX
          For use everywhere where indexes are used (subquery, joins, fire-and-forget, onl-select etc.), index hint.
ITERATE_ONLY
          For use with match_recognize, iterate-only matching.
MAX_FILTER_WIDTH
          For use when filter expression optimization may widen the filter expression.
PREFER_MERGE_JOIN
          For use with join query plans to indicate preferance of the merge-join query plan.
RECLAIM_GROUP_AGED
          For use with group-by and std:groupwin, reclaim groups for unbound streams based on time.
RECLAIM_GROUP_FREQ
          For use with group-by and std:groupwin, reclaim groups for unbound streams based on time, this number is the frequency in seconds at which a sweep occurs for aged groups, if not provided then the sweep frequency is the same number as the age.
SET_NOINDEX
          For use with subqueries and on-select, on-merge, on-update and on-delete to specify the query engine neither build an implicit index nor use an existing index, always performing a full table scan.
 
Method Summary
 Hint getHint(java.lang.annotation.Annotation[] annotations)
          Check if the hint is present in the annotations provided.
 java.lang.String getHintAssignedValue(Hint annotation)
          Returns hint value.
 java.util.List<java.lang.String> getHintAssignedValues(java.lang.annotation.Annotation[] annotations)
          Returns all values assigned for a given hint, if any
 java.lang.String getValue()
          Returns the constant.
 boolean isAcceptsParameters()
          True if the hint accepts params.
 boolean isRequiresParameters()
          True if the hint requires params.
static java.lang.String[] splitCommaUnlessInParen(java.lang.String line)
          Split a line of comma-separated values allowing parenthesis.
static java.util.Map<HintEnum,java.util.List<java.lang.String>> validateGetListed(java.lang.annotation.Annotation annotation)
          Validate a hint annotation ensuring it contains only recognized hints.
static HintEnum valueOf(java.lang.String name)
          Returns the enum constant of this type with the specified name.
static HintEnum[] values()
          Returns an array containing the constants of this enum type, in the order they are declared.
 
Methods inherited from class java.lang.Enum
clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 

Enum Constant Detail

ITERATE_ONLY

public static final HintEnum ITERATE_ONLY
For use with match_recognize, iterate-only matching.


DISABLE_RECLAIM_GROUP

public static final HintEnum DISABLE_RECLAIM_GROUP
For use with group-by, disabled reclaim groups.


RECLAIM_GROUP_AGED

public static final HintEnum RECLAIM_GROUP_AGED
For use with group-by and std:groupwin, reclaim groups for unbound streams based on time. The number of seconds after which a groups is reclaimed if inactive.


RECLAIM_GROUP_FREQ

public static final HintEnum RECLAIM_GROUP_FREQ
For use with group-by and std:groupwin, reclaim groups for unbound streams based on time, this number is the frequency in seconds at which a sweep occurs for aged groups, if not provided then the sweep frequency is the same number as the age.


ENABLE_WINDOW_SUBQUERY_INDEXSHARE

public static final HintEnum ENABLE_WINDOW_SUBQUERY_INDEXSHARE
For use with create-named-window statements only, to indicate that statements that subquery the named window use named window data structures (unless the subquery statement specifies below DISBABLE hint and as listed below).

By default and if this hint is not specified or subqueries specify a stream filter on a named window, subqueries use statement-local data structures representing named window contents (table, index). Such data structure is maintained by consuming the named window insert and remove stream.


DISABLE_WINDOW_SUBQUERY_INDEXSHARE

public static final HintEnum DISABLE_WINDOW_SUBQUERY_INDEXSHARE
If ENABLE_WINDOW_SUBQUERY_INDEXSHARE is not specified for a named window (the default) then this instruction is ignored.

For use with statements that subquery a named window and that benefit from a statement-local data structure representing named window contents (table, index), maintained through consuming the named window insert and remove stream.


SET_NOINDEX

public static final HintEnum SET_NOINDEX
For use with subqueries and on-select, on-merge, on-update and on-delete to specify the query engine neither build an implicit index nor use an existing index, always performing a full table scan.


FORCE_NESTED_ITER

public static final HintEnum FORCE_NESTED_ITER
For use with join query plans to force a nested iteration plan.


PREFER_MERGE_JOIN

public static final HintEnum PREFER_MERGE_JOIN
For use with join query plans to indicate preferance of the merge-join query plan.


INDEX

public static final HintEnum INDEX
For use everywhere where indexes are used (subquery, joins, fire-and-forget, onl-select etc.), index hint.


EXCLUDE_PLAN

public static final HintEnum EXCLUDE_PLAN
For use where query planning applies.


DISABLE_UNIQUE_IMPLICIT_IDX

public static final HintEnum DISABLE_UNIQUE_IMPLICIT_IDX
For use everywhere where unique data window are used


MAX_FILTER_WIDTH

public static final HintEnum MAX_FILTER_WIDTH
For use when filter expression optimization may widen the filter expression.

Method Detail

values

public static HintEnum[] values()
Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:
for (HintEnum c : HintEnum.values())
    System.out.println(c);

Returns:
an array containing the constants of this enum type, in the order they are declared

valueOf

public static HintEnum valueOf(java.lang.String name)
Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)

Parameters:
name - the name of the enum constant to be returned.
Returns:
the enum constant with the specified name
Throws:
java.lang.IllegalArgumentException - if this enum type has no constant with the specified name
java.lang.NullPointerException - if the argument is null

getValue

public java.lang.String getValue()
Returns the constant.

Returns:
constant

isAcceptsParameters

public boolean isAcceptsParameters()
True if the hint accepts params.

Returns:
indicator

isRequiresParameters

public boolean isRequiresParameters()
True if the hint requires params.

Returns:
indicator

getHint

public Hint getHint(java.lang.annotation.Annotation[] annotations)
Check if the hint is present in the annotations provided.

Parameters:
annotations - the annotations to inspect
Returns:
indicator

validateGetListed

public static java.util.Map<HintEnum,java.util.List<java.lang.String>> validateGetListed(java.lang.annotation.Annotation annotation)
                                                                                  throws AnnotationException
Validate a hint annotation ensuring it contains only recognized hints.

Parameters:
annotation - to validate
Returns:
validated hint enums and their parameter list
Throws:
AnnotationException - if an invalid text was found

getHintAssignedValue

public java.lang.String getHintAssignedValue(Hint annotation)
Returns hint value.

Parameters:
annotation - to look for
Returns:
hint assigned first value provided

getHintAssignedValues

public java.util.List<java.lang.String> getHintAssignedValues(java.lang.annotation.Annotation[] annotations)
Returns all values assigned for a given hint, if any

Parameters:
annotations - to be interogated
Returns:
hint assigned values or null if none found

splitCommaUnlessInParen

public static java.lang.String[] splitCommaUnlessInParen(java.lang.String line)
Split a line of comma-separated values allowing parenthesis.

Parameters:
line - to split
Returns:
parameters

© 2006-2015 EsperTech Inc.
All rights reserved.
Visit us at espertech.com