Package com.fasterxml.jackson.databind
Class PropertyName
- java.lang.Object
-
- com.fasterxml.jackson.databind.PropertyName
-
- All Implemented Interfaces:
java.io.Serializable
public class PropertyName extends java.lang.Object implements java.io.Serializable
Simple value class used for containing names of properties as defined by annotations (and possibly other configuration sources).- Since:
- 2.1
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected com.fasterxml.jackson.core.SerializableString
_encodedSimple
Lazily-constructed efficient representation of the simple name.protected java.lang.String
_namespace
Additional namespace, for formats that have such concept (JSON does not, XML does, for example).protected java.lang.String
_simpleName
Basic name of the property.static PropertyName
NO_NAME
Special placeholder value that indicates that there is no name associated.static PropertyName
USE_DEFAULT
Special placeholder value that indicates that name to use should be based on the standard heuristics.
-
Constructor Summary
Constructors Constructor Description PropertyName(java.lang.String simpleName)
PropertyName(java.lang.String simpleName, java.lang.String namespace)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static PropertyName
construct(java.lang.String simpleName)
static PropertyName
construct(java.lang.String simpleName, java.lang.String ns)
boolean
equals(java.lang.Object o)
java.lang.String
getNamespace()
java.lang.String
getSimpleName()
int
hashCode()
boolean
hasNamespace()
boolean
hasSimpleName()
boolean
hasSimpleName(java.lang.String str)
PropertyName
internSimpleName()
boolean
isEmpty()
Method that is basically equivalent of:protected java.lang.Object
readResolve()
com.fasterxml.jackson.core.SerializableString
simpleAsEncoded(MapperConfig<?> config)
Accessor that may be used to get lazily-constructed efficient representation of the simple name.java.lang.String
toString()
PropertyName
withNamespace(java.lang.String ns)
Fluent factory method for constructing an instance with different namespace.PropertyName
withSimpleName(java.lang.String simpleName)
Fluent factory method for constructing an instance with different simple name.
-
-
-
Field Detail
-
USE_DEFAULT
public static final PropertyName USE_DEFAULT
Special placeholder value that indicates that name to use should be based on the standard heuristics. This can be different from returning null, as null means "no information available, whereas this value indicates explicit defaulting.
-
NO_NAME
public static final PropertyName NO_NAME
Special placeholder value that indicates that there is no name associated. Exact semantics to use (if any) depend on actual annotation in use, but commonly this value disables behavior for which name would be needed.
-
_simpleName
protected final java.lang.String _simpleName
Basic name of the property.
-
_namespace
protected final java.lang.String _namespace
Additional namespace, for formats that have such concept (JSON does not, XML does, for example).
-
_encodedSimple
protected com.fasterxml.jackson.core.SerializableString _encodedSimple
Lazily-constructed efficient representation of the simple name.NOTE: not defined as volatile to avoid performance problem with concurrent access in multi-core environments; due to statelessness of
SerializedString
at most leads to multiple instantiations.- Since:
- 2.4
-
-
Method Detail
-
readResolve
protected java.lang.Object readResolve()
-
construct
public static PropertyName construct(java.lang.String simpleName)
- Since:
- 2.6
-
construct
public static PropertyName construct(java.lang.String simpleName, java.lang.String ns)
-
internSimpleName
public PropertyName internSimpleName()
-
withSimpleName
public PropertyName withSimpleName(java.lang.String simpleName)
Fluent factory method for constructing an instance with different simple name.
-
withNamespace
public PropertyName withNamespace(java.lang.String ns)
Fluent factory method for constructing an instance with different namespace.
-
getSimpleName
public java.lang.String getSimpleName()
-
simpleAsEncoded
public com.fasterxml.jackson.core.SerializableString simpleAsEncoded(MapperConfig<?> config)
Accessor that may be used to get lazily-constructed efficient representation of the simple name.- Since:
- 2.4
-
getNamespace
public java.lang.String getNamespace()
-
hasSimpleName
public boolean hasSimpleName()
-
hasSimpleName
public boolean hasSimpleName(java.lang.String str)
- Since:
- 2.3
-
hasNamespace
public boolean hasNamespace()
-
isEmpty
public boolean isEmpty()
Method that is basically equivalent of:!hasSimpleName() << !hasNamespace();
- Since:
- 2.4
-
equals
public boolean equals(java.lang.Object o)
- Overrides:
equals
in classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classjava.lang.Object
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
-