Class TokenFilterContext
- java.lang.Object
-
- com.fasterxml.jackson.core.JsonStreamContext
-
- com.fasterxml.jackson.core.filter.TokenFilterContext
-
public class TokenFilterContext extends JsonStreamContext
Alternative variant ofJsonStreamContext
, used when filtering content being read or written (based onTokenFilter
).- Since:
- 2.6
-
-
Field Summary
-
Fields inherited from class com.fasterxml.jackson.core.JsonStreamContext
TYPE_ARRAY, TYPE_OBJECT, TYPE_ROOT
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description TokenFilter
checkValue(TokenFilter filter)
Method called to check whether value is to be included at current output position, either as Object property, Array element, or root value.TokenFilterContext
closeArray(JsonGenerator gen)
TokenFilterContext
closeObject(JsonGenerator gen)
TokenFilterContext
createChildArrayContext(TokenFilter filter, boolean writeStart)
TokenFilterContext
createChildObjectContext(TokenFilter filter, boolean writeStart)
static TokenFilterContext
createRootContext(TokenFilter filter)
void
ensureFieldNameWritten(JsonGenerator gen)
Method called to ensure that field name, if present, has been written; may result (but does not always) in a call using given generatorTokenFilterContext
findChildOf(TokenFilterContext parent)
java.lang.String
getCurrentName()
Method for accessing name associated with the current location.java.lang.Object
getCurrentValue()
Method for accessing currently active value being used by data-binding (as the source of streaming data to write, or destination of data being read), at this level in hierarchy.TokenFilter
getFilter()
TokenFilterContext
getParent()
Accessor for finding parent context of this context; will return null for root context.boolean
hasCurrentName()
boolean
isStartHandled()
JsonToken
nextTokenToRead()
void
setCurrentValue(java.lang.Object v)
Method to call to pass value to be returned viaJsonStreamContext.getCurrentValue()
; typically called indirectly throughJsonParser.setCurrentValue(java.lang.Object)
orJsonGenerator.setCurrentValue(java.lang.Object)
).TokenFilter
setFieldName(java.lang.String name)
void
skipParentChecks()
java.lang.String
toString()
Overridden to provide developer readable "JsonPath" representation of the context.void
writePath(JsonGenerator gen)
Method called to ensure that parent path from root is written up to and including this node.-
Methods inherited from class com.fasterxml.jackson.core.JsonStreamContext
getCurrentIndex, getEntryCount, getNestingDepth, getStartLocation, getTypeDesc, hasCurrentIndex, hasPathSegment, inArray, inObject, inRoot, pathAsPointer, pathAsPointer, startLocation, typeDesc
-
-
-
-
Method Detail
-
createRootContext
public static TokenFilterContext createRootContext(TokenFilter filter)
-
createChildArrayContext
public TokenFilterContext createChildArrayContext(TokenFilter filter, boolean writeStart)
-
createChildObjectContext
public TokenFilterContext createChildObjectContext(TokenFilter filter, boolean writeStart)
-
setFieldName
public TokenFilter setFieldName(java.lang.String name) throws JsonProcessingException
- Throws:
JsonProcessingException
-
checkValue
public TokenFilter checkValue(TokenFilter filter)
Method called to check whether value is to be included at current output position, either as Object property, Array element, or root value.- Parameters:
filter
- Currently active filter- Returns:
- Filter to use for value
-
ensureFieldNameWritten
public void ensureFieldNameWritten(JsonGenerator gen) throws java.io.IOException
Method called to ensure that field name, if present, has been written; may result (but does not always) in a call using given generator- Parameters:
gen
- Generator to use to write the property name, if necessary- Throws:
java.io.IOException
- If there is a problem writing property name (typically thrown byJsonGenerator
)
-
writePath
public void writePath(JsonGenerator gen) throws java.io.IOException
Method called to ensure that parent path from root is written up to and including this node.- Parameters:
gen
- Generator to use to write the path, if necessary- Throws:
java.io.IOException
- If there is a problem writing property name (typically thrown byJsonGenerator
)
-
closeArray
public TokenFilterContext closeArray(JsonGenerator gen) throws java.io.IOException
- Throws:
java.io.IOException
-
closeObject
public TokenFilterContext closeObject(JsonGenerator gen) throws java.io.IOException
- Throws:
java.io.IOException
-
skipParentChecks
public void skipParentChecks()
-
getCurrentValue
public java.lang.Object getCurrentValue()
Description copied from class:JsonStreamContext
Method for accessing currently active value being used by data-binding (as the source of streaming data to write, or destination of data being read), at this level in hierarchy.Note that "current value" is NOT populated (or used) by Streaming parser or generator; it is only used by higher-level data-binding functionality. The reason it is included here is that it can be stored and accessed hierarchically, and gets passed through data-binding.
- Overrides:
getCurrentValue
in classJsonStreamContext
- Returns:
- Currently active value, if one has been assigned.
-
setCurrentValue
public void setCurrentValue(java.lang.Object v)
Description copied from class:JsonStreamContext
Method to call to pass value to be returned viaJsonStreamContext.getCurrentValue()
; typically called indirectly throughJsonParser.setCurrentValue(java.lang.Object)
orJsonGenerator.setCurrentValue(java.lang.Object)
).- Overrides:
setCurrentValue
in classJsonStreamContext
- Parameters:
v
- Current value to assign to this context
-
getParent
public final TokenFilterContext getParent()
Description copied from class:JsonStreamContext
Accessor for finding parent context of this context; will return null for root context.- Specified by:
getParent
in classJsonStreamContext
- Returns:
- Parent context of this context, if any;
null
for Root contexts
-
getCurrentName
public final java.lang.String getCurrentName()
Description copied from class:JsonStreamContext
Method for accessing name associated with the current location. Non-null forFIELD_NAME
and value events that directly follow field names; null for root level and array values.- Specified by:
getCurrentName
in classJsonStreamContext
- Returns:
- Current field name within context, if any;
null
if none
-
hasCurrentName
public boolean hasCurrentName()
- Overrides:
hasCurrentName
in classJsonStreamContext
- Returns:
True
if a call toJsonStreamContext.getCurrentName()
would return non-null
name;false
otherwise
-
getFilter
public TokenFilter getFilter()
-
isStartHandled
public boolean isStartHandled()
-
nextTokenToRead
public JsonToken nextTokenToRead()
-
findChildOf
public TokenFilterContext findChildOf(TokenFilterContext parent)
-
toString
public java.lang.String toString()
Description copied from class:JsonStreamContext
Overridden to provide developer readable "JsonPath" representation of the context.- Overrides:
toString
in classJsonStreamContext
- Returns:
- Simple developer-readable description this context layer
(note: NOT constructed with parents, unlike
JsonStreamContext.pathAsPointer()
)
-
-