|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.apache.sling.commons.json.jcr.JsonItemWriter
public class JsonItemWriter
Dumps JCR Items as JSON data. The dump methods are threadsafe.
Field Summary | |
---|---|
static java.util.Locale |
DATE_FORMAT_LOCALE
Used to format date values |
static java.lang.String |
ECMA_DATE_FORMAT
Used to format date values |
Constructor Summary | |
---|---|
JsonItemWriter(java.util.Set<java.lang.String> propertyNamesToIgnore)
Create a JsonItemWriter |
Method Summary | |
---|---|
void |
dump(javax.jcr.NodeIterator it,
java.io.Writer out)
Dump all Nodes of given NodeIterator in JSON |
protected void |
dump(javax.jcr.Node node,
JSONWriter w,
int currentRecursionLevel,
int maxRecursionLevels)
Dump given node in JSON, optionally recursing into its child nodes |
void |
dump(javax.jcr.Node node,
java.io.Writer w,
int maxRecursionLevels)
Dump given node in JSON, optionally recursing into its child nodes |
void |
dump(javax.jcr.Node node,
java.io.Writer w,
int maxRecursionLevels,
boolean tidy)
Dump given node in JSON, optionally recursing into its child nodes |
void |
dump(javax.jcr.Property p,
java.io.Writer w)
Dump given property in JSON |
protected void |
dumpSingleNode(javax.jcr.Node n,
JSONWriter w,
int currentRecursionLevel,
int maxRecursionLevels)
Dump a single node |
protected void |
dumpValue(JSONWriter w,
javax.jcr.Value v)
Writes the given value to the JSON writer. currently the following conversions are done: JSR Property Type JSON Value Type BINARY always 0 as long DATE converted date string as defined by ECMA BOOLEAN boolean LONG long DOUBLE double all other string 1 Currently not implemented and uses 0 as default. |
static java.lang.String |
format(java.util.Calendar date)
|
protected boolean |
recursionLevelActive(int currentRecursionLevel,
int maxRecursionLevels)
true if the current recursion level is active |
protected void |
writeProperty(JSONWriter w,
javax.jcr.Property p)
Write a single property |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final java.lang.String ECMA_DATE_FORMAT
public static final java.util.Locale DATE_FORMAT_LOCALE
Constructor Detail |
---|
public JsonItemWriter(java.util.Set<java.lang.String> propertyNamesToIgnore)
propertyNamesToIgnore
- if not null, a property having a name from
this set of values is ignored. TODO we should use a filtering
interface to make the selection of which Nodes and Properties
to dump more flexible.Method Detail |
---|
public void dump(javax.jcr.NodeIterator it, java.io.Writer out) throws javax.jcr.RepositoryException, JSONException
JSONException
javax.jcr.RepositoryException
public void dump(javax.jcr.Node node, java.io.Writer w, int maxRecursionLevels) throws javax.jcr.RepositoryException, JSONException
javax.jcr.RepositoryException
JSONException
public void dump(javax.jcr.Node node, java.io.Writer w, int maxRecursionLevels, boolean tidy) throws javax.jcr.RepositoryException, JSONException
tidy
- if true
the json dump is nicely formatted
javax.jcr.RepositoryException
JSONException
public void dump(javax.jcr.Property p, java.io.Writer w) throws JSONException, javax.jcr.ValueFormatException, javax.jcr.RepositoryException
JSONException
javax.jcr.ValueFormatException
javax.jcr.RepositoryException
protected void dump(javax.jcr.Node node, JSONWriter w, int currentRecursionLevel, int maxRecursionLevels) throws javax.jcr.RepositoryException, JSONException
javax.jcr.RepositoryException
JSONException
protected void dumpSingleNode(javax.jcr.Node n, JSONWriter w, int currentRecursionLevel, int maxRecursionLevels) throws javax.jcr.RepositoryException, JSONException
javax.jcr.RepositoryException
JSONException
protected boolean recursionLevelActive(int currentRecursionLevel, int maxRecursionLevels)
protected void writeProperty(JSONWriter w, javax.jcr.Property p) throws javax.jcr.ValueFormatException, javax.jcr.RepositoryException, JSONException
javax.jcr.ValueFormatException
javax.jcr.RepositoryException
JSONException
protected void dumpValue(JSONWriter w, javax.jcr.Value v) throws javax.jcr.ValueFormatException, java.lang.IllegalStateException, javax.jcr.RepositoryException, JSONException
JSR Property Type | JSON Value Type |
---|---|
BINARY | always 0 as long |
DATE | converted date string as defined by ECMA |
BOOLEAN | boolean |
LONG | long |
DOUBLE | double |
all other | string |
w
- json writerv
- value to dump
javax.jcr.ValueFormatException
java.lang.IllegalStateException
javax.jcr.RepositoryException
JSONException
public static java.lang.String format(java.util.Calendar date)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |