public class Annotation extends Object implements Comparable<Annotation>
SpanNode
.SpanNode
,
AnnotationType
Modifier and Type | Field and Description |
---|---|
private int |
scratchId
This scratch id is used to avoid using IdentityHashMaps as they are very costly.
|
private SpanNode |
spanNode |
private AnnotationType |
type |
private FieldValue |
value |
Constructor and Description |
---|
Annotation()
Constructs an Annotation without a type. BEWARE! Should only be used during deserialization.
|
Annotation(Annotation other)
Constructs a copy of the input annotation.
|
Annotation(AnnotationType type)
Constructs a new annotation of the specified type.
|
Annotation(AnnotationType type,
FieldValue value)
Constructs a new annotation of the specified type, and having the specified value.
|
Modifier and Type | Method and Description |
---|---|
int |
compareTo(Annotation annotation) |
boolean |
equals(Object o) |
FieldValue |
getFieldValue()
Returns the value of the annotation, if any.
|
int |
getScratchId() |
SpanNode |
getSpanNode()
Returns the
SpanNode this Annotation is annotating, if any. |
SpanNode |
getSpanNodeFast()
Returns the
SpanNode this Annotation is annotating, if any. |
AnnotationType |
getType()
Returns the type of this annotation.
|
boolean |
hasFieldValue()
Returns true if this Annotation has a value.
|
int |
hashCode() |
boolean |
hasSpanNode()
Returns true if this Annotation is associated with a SpanNode (irrespective of the SpanNode being valid or not).
|
boolean |
isSpanNodeValid()
Returns true iff. this Annotation is associated with a SpanNode and the SpanNode is valid.
|
void |
setFieldValue(FieldValue fieldValue)
Sets the value of the annotation.
|
void |
setScratchId(int id) |
void |
setSpanNode(SpanNode spanNode)
WARNING! Should only be used by deserializers! Sets the span node that this annotation points to.
|
void |
setSpanNodeFast(SpanNode spanNode)
WARNING! Should only be used by deserializers! Sets the span node that this annotation points to.
|
void |
setType(AnnotationType type)
Sets the type of this annotation. BEWARE! Should only be used during deserialization.
|
String |
toString() |
private AnnotationType type
private SpanNode spanNode
private FieldValue value
private int scratchId
public Annotation()
public Annotation(AnnotationType type)
type
- the type of the new annotationpublic Annotation(Annotation other)
other
- annotationpublic Annotation(AnnotationType type, FieldValue value)
type
- the type of the new annotationvalue
- the value of the new annotationUnsupportedOperationException
- if the annotation type does not allow this annotation to have values.public void setScratchId(int id)
public int getScratchId()
public AnnotationType getType()
public void setType(AnnotationType type)
type
- the type of this annotationpublic boolean hasSpanNode()
SpanNode.isValid()
public boolean isSpanNodeValid()
SpanNode.isValid()
public SpanNode getSpanNode()
SpanNode
this Annotation is annotating, if any.SpanNode
this Annotation is annotating, or nullIllegalStateException
- if this Annotation is associated with a SpanNode and the SpanNode is invalid.public final SpanNode getSpanNodeFast()
SpanNode
this Annotation is annotating, if any.SpanNode
this Annotation is annotating, or nullpublic void setSpanNode(SpanNode spanNode)
spanNode
- the span node that this annotation shall point to.public final void setSpanNodeFast(SpanNode spanNode)
spanNode
- the span node that this annotation shall point to.public FieldValue getFieldValue()
public void setFieldValue(FieldValue fieldValue)
fieldValue
- the value to setUnsupportedOperationException
- if the annotation type does not allow this annotation to have values.public boolean hasFieldValue()
public int compareTo(Annotation annotation)
compareTo
in interface Comparable<Annotation>
Copyright © 2018. All rights reserved.