Class ORuntimeKeyIndexDefinition<T>
java.lang.Object
com.orientechnologies.orient.core.index.OAbstractIndexDefinition
com.orientechnologies.orient.core.index.ORuntimeKeyIndexDefinition<T>
- All Implemented Interfaces:
OIndexCallback,OIndexDefinition
Index definition that use the serializer specified at run-time not based on type. This is useful
to have custom type keys for indexes.
- Author:
- Luca Garulli (l.garulli--(at)--orientdb.com)
-
Field Summary
Fields inherited from class com.orientechnologies.orient.core.index.OAbstractIndexDefinition
collate, document -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionComparable<?>createValue(Object... params) Calculates key value by passed in parameters.Comparable<?>createValue(List<?> params) Calculates key value by passed in parameters.booleanvoidfromStream(ODocument document) Deserialize internal index state from document.getDocumentValueToIndex(ODocument iDocument) intReturns amount of parameters that are used to calculate key value.OType[]getTypes()Return types of values from which index key consist.inthashCode()booleanprotected voidprotected voidtoCreateIndexDDL(String indexName, String indexType, String engine) toStream()Serializes internal index state to document.toString()Methods inherited from class com.orientechnologies.orient.core.index.OAbstractIndexDefinition
getCollate, isNullValuesIgnored, setCollate, setCollate, setNullValuesIgnored
-
Constructor Details
-
ORuntimeKeyIndexDefinition
public ORuntimeKeyIndexDefinition(byte iId) -
ORuntimeKeyIndexDefinition
public ORuntimeKeyIndexDefinition()
-
-
Method Details
-
getFields
- Returns:
- Names of fields which given index is used to calculate key value. Order of fields is important.
-
getFieldsToIndex
- Returns:
- Names of fields and their index modifiers (like "by value" for fields that hold
Mapvalues) which given index is used to calculate key value. Order of fields is important.
-
getClassName
- Returns:
- Name of the class which this index belongs to.
-
createValue
Description copied from interface:OIndexDefinitionCalculates key value by passed in parameters.If it is impossible to calculate key value by given parameters
nullwill be returned.- Parameters:
params- Parameters from which index key will be calculated.- Returns:
- Key value or null if calculation is impossible.
-
createValue
Description copied from interface:OIndexDefinitionCalculates key value by passed in parameters.If it is impossible to calculate key value by given parameters
nullwill be returned.- Parameters:
params- Parameters from which index key will be calculated.- Returns:
- Key value or null if calculation is impossible.
-
getParamCount
public int getParamCount()Description copied from interface:OIndexDefinitionReturns amount of parameters that are used to calculate key value. It does not mean that all parameters should be supplied. It only means that if you provide more parameters they will be ignored and will not participate in index key calculation.- Returns:
- Amount of that are used to calculate key value. Call result should be equals to
getTypes().length.
-
getTypes
Description copied from interface:OIndexDefinitionReturn types of values from which index key consist. In case of index that is built on single document property value single array that contains property type will be returned. In case of composite indexes result will contain several key types.- Returns:
- Types of values from which index key consist.
-
toStream
Description copied from interface:OIndexDefinitionSerializes internal index state to document.- Returns:
- Document that contains internal index state.
-
serializeToStream
protected void serializeToStream()- Overrides:
serializeToStreamin classOAbstractIndexDefinition
-
fromStream
Description copied from interface:OIndexDefinitionDeserialize internal index state from document.- Parameters:
document- Serialized index presentation.
-
serializeFromStream
protected void serializeFromStream()- Overrides:
serializeFromStreamin classOAbstractIndexDefinition
-
getDocumentValueToIndex
-
equals
Description copied from interface:OIndexDefinition- Specified by:
equalsin interfaceOIndexDefinition- Overrides:
equalsin classOAbstractIndexDefinition
-
hashCode
public int hashCode()Description copied from interface:OIndexDefinition- Specified by:
hashCodein interfaceOIndexDefinition- Overrides:
hashCodein classOAbstractIndexDefinition
-
toString
Description copied from interface:OIndexDefinition- Specified by:
toStringin interfaceOIndexDefinition- Overrides:
toStringin classObject
-
toCreateIndexDDL
-
getSerializer
-
isAutomatic
public boolean isAutomatic()
-