public class OptionValue extends Object implements Comparable<OptionValue>
An option value
is used internally by an
OptionManager
to store a run-time setting. This setting, for example,
could affect a query in an execution stage. Instances of this class are JSON
serializable and can be stored in a persistent store
(see SystemOptionManager.options
), or in memory (see
InMemoryOptionManager.options
).
OptionValue.AccessibleScopes
defines the scopes at which the option can be set.
If it can be set at System level or Session level or so on. Whereas
OptionValue.OptionScope
defines the scope at which the option is being set. If
the option is being set at the BOOT time the scope of the option is BOOT. If
it is set at SYSTEM level the scope is SYSTEM. Although they look similar
there is a fine level which differentiates both of them which is at which
level of hierarchy they can be set and at what at level of hierarchy they
were actually set.
Modifier and Type | Class and Description |
---|---|
static class |
OptionValue.AccessibleScopes
Defines where an option can be configured.
|
static class |
OptionValue.Kind |
static class |
OptionValue.OptionScope
This defines where an option was actually configured.
|
Modifier and Type | Field and Description |
---|---|
OptionValue.AccessibleScopes |
accessibleScopes |
Boolean |
bool_val |
Double |
float_val |
static String |
JSON_ACCESSIBLE_SCOPES |
static String |
JSON_BOOL_VAL |
static String |
JSON_FLOAT_VAL |
static String |
JSON_INTEGER_VAL |
static String |
JSON_KIND |
static String |
JSON_NAME |
static String |
JSON_NUM_VAL |
static String |
JSON_SCOPE |
static String |
JSON_STRING_VAL |
OptionValue.Kind |
kind |
String |
name |
Long |
num_val |
OptionValue.OptionScope |
scope |
String |
string_val |
public static final String JSON_KIND
public static final String JSON_ACCESSIBLE_SCOPES
public static final String JSON_NAME
public static final String JSON_NUM_VAL
public static final String JSON_STRING_VAL
public static final String JSON_BOOL_VAL
public static final String JSON_FLOAT_VAL
public static final String JSON_INTEGER_VAL
public static final String JSON_SCOPE
public final String name
public final OptionValue.Kind kind
public final OptionValue.AccessibleScopes accessibleScopes
public final Long num_val
public final String string_val
public final Boolean bool_val
public final Double float_val
public final OptionValue.OptionScope scope
public static OptionValue create(OptionValue.AccessibleScopes accessibleScopes, String name, long val, OptionValue.OptionScope scope)
public static OptionValue create(OptionValue.AccessibleScopes accessibleScopes, String name, boolean bool, OptionValue.OptionScope scope)
public static OptionValue create(OptionValue.AccessibleScopes accessibleScopes, String name, String val, OptionValue.OptionScope scope)
public static OptionValue create(OptionValue.AccessibleScopes accessibleScopes, String name, double val, OptionValue.OptionScope scope)
public static OptionValue create(OptionValue.Kind kind, OptionValue.AccessibleScopes accessibleScopes, String name, String val, OptionValue.OptionScope scope)
public static OptionValue create(OptionValue.AccessibleScopes type, String name, Object val, OptionValue.OptionScope scope, OptionValue.Kind kind)
public String getName()
public Object getValue()
public Object getValueMinScope(OptionValue.OptionScope minScope)
minScope
- scope which the option's scope should be narrower thanpublic OptionValue.OptionScope getScope()
public PersistedOptionValue toPersisted()
public boolean equalsIgnoreType(Object obj)
public int compareTo(OptionValue o)
compareTo
in interface Comparable<OptionValue>
Copyright © 1970 The Apache Software Foundation. All rights reserved.