public class ScriptAttributeImpl extends AttributeImpl implements ScriptAttribute, Cloneable
ScriptAttribute
that stores the script
as an integer.Constructor and Description |
---|
ScriptAttributeImpl()
Initializes this attribute with
UScript.COMMON |
Modifier and Type | Method and Description |
---|---|
void |
clear()
Clears the values in this AttributeImpl and resets it to its
default value.
|
void |
copyTo(AttributeImpl target)
Copies the values from this Attribute into the passed-in
target attribute.
|
boolean |
equals(Object other) |
int |
getCode()
Get the numeric code for this script value.
|
String |
getName()
Get the full name.
|
String |
getShortName()
Get the abbreviated name.
|
int |
hashCode() |
void |
reflectWith(AttributeReflector reflector)
This method is for introspection of attributes, it should simply
add the key/values this attribute holds to the given
AttributeReflector . |
void |
setCode(int code)
Set the numeric code for this script value.
|
clone, reflectAsString
public ScriptAttributeImpl()
UScript.COMMON
public int getCode()
ScriptAttribute
UScript
.getCode
in interface ScriptAttribute
public void setCode(int code)
ScriptAttribute
UScript
.setCode
in interface ScriptAttribute
code
- numeric codepublic String getName()
ScriptAttribute
getName
in interface ScriptAttribute
public String getShortName()
ScriptAttribute
getShortName
in interface ScriptAttribute
public void clear()
AttributeImpl
clear
in class AttributeImpl
public void copyTo(AttributeImpl target)
AttributeImpl
copyTo
in class AttributeImpl
public void reflectWith(AttributeReflector reflector)
AttributeImpl
AttributeReflector
.
Implementations look like this (e.g. for a combined attribute implementation):
public void reflectWith(AttributeReflector reflector) { reflector.reflect(CharTermAttribute.class, "term", term()); reflector.reflect(PositionIncrementAttribute.class, "positionIncrement", getPositionIncrement()); }
If you implement this method, make sure that for each invocation, the same set of Attribute
interfaces and keys are passed to AttributeReflector.reflect(java.lang.Class<? extends org.apache.lucene.util.Attribute>, java.lang.String, java.lang.Object)
in the same order, but possibly
different values. So don't automatically exclude e.g. null
properties!
Important for migration to Lucene 6: The default implementation is
implemented for backwards compatibility in Lucene 5 and calls
AttributeReflector.reflect(java.lang.Class<? extends org.apache.lucene.util.Attribute>, java.lang.String, java.lang.Object)
for all non-static fields from the implementing
class, using the field name as key and the field value as value. The Attribute class
is also determined by reflection. Please note that the default implementation can
only handle single-Attribute implementations.
Please don't use the default implementation anymore, because it will be made abstract in Lucene 6! See above for implementation example.
reflectWith
in class AttributeImpl
AttributeImpl.reflectAsString(boolean)
Copyright © 2000–2015 The Apache Software Foundation. All rights reserved.