Package com.fasterxml.jackson.core
Class JsonLocation
- java.lang.Object
-
- com.fasterxml.jackson.core.JsonLocation
-
- All Implemented Interfaces:
java.io.Serializable
public class JsonLocation extends java.lang.Object implements java.io.Serializable
Object that encapsulates Location information used for reporting parsing (or potentially generation) errors, as well as current location within input streams.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected int
_columnNr
protected ContentReference
_contentReference
Reference to input source; never null (but may be that ofContentReference.unknown()
).protected int
_lineNr
protected java.lang.String
_sourceDescription
Lazily constructed description for source; constructed if and whensourceDescription()
is called, retained.protected long
_totalBytes
protected long
_totalChars
static int
MAX_CONTENT_SNIPPET
Deprecated.Since 2.13 useContentReference.DEFAULT_MAX_CONTENT_SNIPPET
insteadstatic JsonLocation
NA
Shared immutable "N/A location" that can be returned to indicate that no location information is available.
-
Constructor Summary
Constructors Constructor Description JsonLocation(ContentReference contentRef, long totalChars, int lineNr, int colNr)
JsonLocation(ContentReference contentRef, long totalBytes, long totalChars, int lineNr, int columnNr)
JsonLocation(java.lang.Object srcRef, long totalChars, int lineNr, int columnNr)
Deprecated.JsonLocation(java.lang.Object srcRef, long totalBytes, long totalChars, int lineNr, int columnNr)
Deprecated.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description protected static ContentReference
_wrap(java.lang.Object srcRef)
java.lang.StringBuilder
appendOffsetDescription(java.lang.StringBuilder sb)
ContentReference
contentReference()
Accessor for information about the original input source content is being read from.boolean
equals(java.lang.Object other)
long
getByteOffset()
long
getCharOffset()
int
getColumnNr()
Access for getting column position of this location, if available.int
getLineNr()
Access for getting line number of this location, if available.java.lang.Object
getSourceRef()
Deprecated.Since 2.13 UsecontentReference()
insteadint
hashCode()
java.lang.String
offsetDescription()
Accessor for a brief summary of Location offsets (line number, column position, or byte offset, if available).java.lang.String
sourceDescription()
Accessor for getting a textual description of source reference (Object returned bygetSourceRef()
), as included in description returned bytoString()
.java.lang.String
toString()
-
-
-
Field Detail
-
MAX_CONTENT_SNIPPET
@Deprecated public static final int MAX_CONTENT_SNIPPET
Deprecated.Since 2.13 useContentReference.DEFAULT_MAX_CONTENT_SNIPPET
instead- See Also:
- Constant Field Values
-
NA
public static final JsonLocation NA
Shared immutable "N/A location" that can be returned to indicate that no location information is available.NOTE: before 2.9, Location was given as String "N/A"; with 2.9 it was removed so that source should be indicated as "UNKNOWN".
-
_totalBytes
protected final long _totalBytes
-
_totalChars
protected final long _totalChars
-
_lineNr
protected final int _lineNr
-
_columnNr
protected final int _columnNr
-
_contentReference
protected final ContentReference _contentReference
Reference to input source; never null (but may be that ofContentReference.unknown()
).- Since:
- 2.13 (before we have
_sourceRef
(Object-valued)
-
_sourceDescription
protected transient java.lang.String _sourceDescription
Lazily constructed description for source; constructed if and whensourceDescription()
is called, retained.- Since:
- 2.13
-
-
Constructor Detail
-
JsonLocation
public JsonLocation(ContentReference contentRef, long totalChars, int lineNr, int colNr)
-
JsonLocation
public JsonLocation(ContentReference contentRef, long totalBytes, long totalChars, int lineNr, int columnNr)
-
JsonLocation
@Deprecated public JsonLocation(java.lang.Object srcRef, long totalChars, int lineNr, int columnNr)
Deprecated.
-
JsonLocation
@Deprecated public JsonLocation(java.lang.Object srcRef, long totalBytes, long totalChars, int lineNr, int columnNr)
Deprecated.
-
-
Method Detail
-
_wrap
protected static ContentReference _wrap(java.lang.Object srcRef)
-
contentReference
public ContentReference contentReference()
Accessor for information about the original input source content is being read from. Returned reference is nevernull
but may not contain useful information.NOTE: not getter, on purpose, to avoid inlusion if serialized using default Jackson serializer.
- Returns:
- Object with information about input source.
- Since:
- 2.13 (to replace
getSourceRef
)
-
getSourceRef
@Deprecated public java.lang.Object getSourceRef()
Deprecated.Since 2.13 UsecontentReference()
insteadReference to the original resource being read, if one available. For example, when a parser has been constructed by passing aFile
instance, this method would return that File. Will return null if no such reference is available, for example whenInputStream
was used to construct the parser instance.- Returns:
- Source reference this location was constructed with, if any;
null
if none
-
getLineNr
public int getLineNr()
Access for getting line number of this location, if available. Note that line number is typically not available for binary formats.- Returns:
- Line number of the location (1-based), if available;
-1
if not.
-
getColumnNr
public int getColumnNr()
Access for getting column position of this location, if available. Note that column position is typically not available for binary formats.- Returns:
- Column position of the location (1-based), if available;
-1
if not.
-
getCharOffset
public long getCharOffset()
- Returns:
- Character offset within underlying stream, reader or writer,
if available;
-1
if not.
-
getByteOffset
public long getByteOffset()
- Returns:
- Byte offset within underlying stream, reader or writer,
if available;
-1
if not.
-
sourceDescription
public java.lang.String sourceDescription()
Accessor for getting a textual description of source reference (Object returned bygetSourceRef()
), as included in description returned bytoString()
.Note: implementation will simply call
ContentReference.buildSourceDescription()
)NOTE: not added as a "getter" to prevent it from getting serialized.
- Returns:
- Description of the source reference (see
getSourceRef()
- Since:
- 2.9
-
offsetDescription
public java.lang.String offsetDescription()
Accessor for a brief summary of Location offsets (line number, column position, or byte offset, if available).- Returns:
- Description of available relevant location offsets; combination of line number and column position or byte offset
- Since:
- 2.13
-
appendOffsetDescription
public java.lang.StringBuilder appendOffsetDescription(java.lang.StringBuilder sb)
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classjava.lang.Object
-
equals
public boolean equals(java.lang.Object other)
- Overrides:
equals
in classjava.lang.Object
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
-