public class DefaultKeyBuilderFactory extends Object implements IKeyBuilderFactory, Serializable
IKeyBuilder
s. This does NOT generate
thread-local instances. The factory serializes all properties that were
required to generate a configuration so that the same configuration may be
materialized on another JVM or host by de-serializing an instance of this
factory.ThreadLocalKeyBuilderFactory
,
Serialized FormModifier and Type | Field and Description |
---|---|
static String |
ICU_NOT_AVAILABLE
Text of the exception thrown when the ICU library is required but is not
available.
|
protected static org.apache.log4j.Logger |
log |
Constructor and Description |
---|
DefaultKeyBuilderFactory(Properties properties)
Create a factory for
IKeyBuilder instances configured according
to the specified properties. |
Modifier and Type | Method and Description |
---|---|
CollatorEnum |
getCollator()
The selected collator.
|
DecompositionEnum |
getDecompositionMode()
The selected decomposition mode (MAY be
null , which means
no override). |
int |
getInitialCapacity()
The initial buffer capacity (the actual capacity grows as needed at
runtime).
|
IKeyBuilder |
getKeyBuilder()
Return an instance of the configured
IKeyBuilder . |
Locale |
getLocale()
The selected
Locale . |
IKeyBuilder |
getPrimaryKeyBuilder()
Return an instance of the configured
IKeyBuilder that has been
overridden to have StrengthEnum.Primary collation strength. |
Object |
getStrength()
The selected collator strength.
|
static boolean |
isICUAvailable()
Figures out whether or not the ICU library is available.
|
String |
toString()
Representation includes all aspects of the
Serializable state. |
protected static final transient org.apache.log4j.Logger log
public static final String ICU_NOT_AVAILABLE
public DefaultKeyBuilderFactory(Properties properties)
IKeyBuilder
instances configured according
to the specified properties. Any properties NOT explicitly given
will be defaulted from System.getProperties()
. The pre-defined
properties KeyBuilder.Options.USER_LANGUAGE
, KeyBuilder.Options.USER_COUNTRY
,
and KeyBuilder.Options.USER_VARIANT
MAY be overridden. The factory will
support Unicode unless CollatorEnum.ASCII
is explicitly specified
for the KeyBuilder.Options.COLLATOR
property.properties
- The properties to be used (optional). When null
the System properties
are used.UnsupportedOperationException
-
The ICU library was required but was not located. Make sure
that the ICU JAR is on the classpath. See
KeyBuilder.Options.COLLATOR
.
Note: If you are trying to use ICU4JNI then that has to be locatable as a native library. How you do this is different for Windows and Un*x.
KeyBuilder.Options
public final int getInitialCapacity()
public final CollatorEnum getCollator()
public final Object getStrength()
StrengthEnum
, an Integer
, or
null
(which means no override).public final DecompositionEnum getDecompositionMode()
null
, which means
no override).public String toString()
Serializable
state.public IKeyBuilder getKeyBuilder()
IKeyBuilderFactory
IKeyBuilder
.getKeyBuilder
in interface IKeyBuilderFactory
public IKeyBuilder getPrimaryKeyBuilder()
IKeyBuilderFactory
IKeyBuilder
that has been
overridden to have StrengthEnum.Primary
collation strength. This
may be used to form successors for Unicode prefix scans without having
the secondary sort ordering characteristics mucking things up.getPrimaryKeyBuilder
in interface IKeyBuilderFactory
public static boolean isICUAvailable()
true
iff the ICU library is available.Copyright © 2006–2019 SYSTAP, LLC DBA Blazegraph. All rights reserved.