public class Field extends com.yahoo.vespa.objects.FieldBase implements FieldSet, Comparable, Serializable
Modifier and Type | Field and Description |
---|---|
protected DataType |
dataType |
protected int |
fieldId |
private int |
fieldIdV6 |
private boolean |
forcedId |
private boolean |
isHeader |
Constructor and Description |
---|
Field(String name) |
Field(String name,
DataType dataType)
Constructor for header fields
|
Field(String name,
DataType dataType,
boolean isHeader)
Creates a new field.
|
Field(String name,
DataType dataType,
boolean isHeader,
DocumentType owner)
Creates a new field.
|
Field(String name,
Field field)
Creates a field with a new name and the other properties
(excluding the id and owner) copied from another field
|
Field(String name,
int id,
DataType dataType,
boolean isHeader)
Creates a new field.
|
Modifier and Type | Method and Description |
---|---|
private int |
calculateIdV6(DocumentType owner)
The field id must be unique within a document type, and also
within a (unknown at this time) hierarchy of document types.
|
protected int |
calculateIdV7(DocumentType owner)
The field id must be unique within a document type, and also
within a (unknown at this time) hierarchy of document types.
|
FieldSet |
clone() |
int |
compareTo(Object o) |
boolean |
contains(FieldSet o) |
boolean |
equals(Object o)
Two fields are equal if they have the same name and the same data type
|
DataType |
getDataType() |
int |
getId() |
int |
getId(int version)
Returns the numeric ID used to represent this field when serialized
|
int |
getIdV6() |
boolean |
hasForcedId() |
int |
hashCode() |
boolean |
isHeader() |
void |
setDataType(DataType type)
Deprecated.
do not use
|
void |
setHeader(boolean header)
Sets whether this is a header field
|
void |
setId(int newId,
DocumentType owner)
Sets the id of this field.
|
String |
toString() |
private void |
validateId(int newId,
DocumentType owner,
int version) |
protected DataType dataType
protected int fieldId
private int fieldIdV6
private boolean isHeader
private boolean forcedId
public Field(String name, int id, DataType dataType, boolean isHeader)
name
- The name of the fielddataType
- The datatype of the fieldisHeader
- Whether this is a "header" field or a "content" field
(true = "header").public Field(String name)
public Field(String name, DataType dataType, boolean isHeader, DocumentType owner)
name
- The name of the fielddataType
- The datatype of the fieldisHeader
- Whether this is a "header" field or a "content" field
(true = "header").owner
- the owning document (used to check for id collisions)public Field(String name, DataType dataType, boolean isHeader)
name
- The name of the fielddataType
- The datatype of the fieldisHeader
- Whether this is a "header" field or a "content" field
(true = "header").public Field(String name, DataType dataType)
name
- The name of the fielddataType
- The datatype of the fieldprivate int calculateIdV6(DocumentType owner)
public int compareTo(Object o)
compareTo
in interface Comparable
protected int calculateIdV7(DocumentType owner)
public void setId(int newId, DocumentType owner)
newId
- the id - if this is less than 100 it will cause document to serialize
using just one byte for this field id. 100-127 are reserved valuesowner
- the owning document, this is checked for collisions and notified
of the id change. It can not be nullprivate void validateId(int newId, DocumentType owner, int version)
public final DataType getDataType()
@Deprecated public void setDataType(DataType type)
type
- The new type of the field.public final int getId(int version)
public final int getId()
public final int getIdV6()
public final boolean hasForcedId()
public boolean isHeader()
public void setHeader(boolean header)
public boolean equals(Object o)
equals
in class com.yahoo.vespa.objects.FieldBase
public int hashCode()
hashCode
in class com.yahoo.vespa.objects.FieldBase
public String toString()
toString
in class com.yahoo.vespa.objects.FieldBase
public FieldSet clone() throws CloneNotSupportedException
clone
in interface FieldSet
clone
in class Object
CloneNotSupportedException
Copyright © 2018. All rights reserved.