|
Eclipse Remote Application Platform | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.eclipse.rap.json.JsonValue
public abstract class JsonValue
Represents a JSON value. According to RFC 4627, a JSON value must be an object, an array, a number, a string, or one of the literal names true, false, and null.
The literal names true, false, and null are
represented by the constants TRUE, FALSE, and NULL.
JSON objects and arrays are represented by the subtypes
JsonObject and JsonArray. Instances of these types can be created using the
public constructors.
Instances for JSON numbers and strings can be created using the
static factory methods valueOf(String), valueOf(long), valueOf(double)
, etc.
In order to find out whether an instance of this class is of a certain type, the methods
isObject(), isArray(), isString(), isNumber() etc. can be
used.
If there is no doubt about the type of a JSON value, one of the methods asObject(),
asArray(), asString(), asInt(), etc. can be used to get this value
directly in the appropriate target type.
This class is not supposed to be extended by clients.
| Field Summary | |
|---|---|
static JsonValue |
FALSE
Represents the JSON literal false. |
static JsonValue |
NULL
The JSON literal null. |
static JsonValue |
TRUE
Represents the JSON literal true. |
| Method Summary | |
|---|---|
JsonArray |
asArray()
Returns this JSON value as JsonArray, assuming that this value represents a JSON
array. |
boolean |
asBoolean()
Returns this JSON value as a boolean value, assuming that this value is either
true or false. |
double |
asDouble()
Returns this JSON value as a double value, assuming that this value represents a
JSON number. |
float |
asFloat()
Returns this JSON value as a float value, assuming that this value represents a
JSON number. |
int |
asInt()
Returns this JSON value as an int value, assuming that this value represents a
JSON number that can be interpreted as Java int. |
long |
asLong()
Returns this JSON value as a long value, assuming that this value represents a
JSON number that can be interpreted as Java long. |
JsonObject |
asObject()
Returns this JSON value as JsonObject, assuming that this value represents a JSON
object. |
java.lang.String |
asString()
Returns this JSON value as String, assuming that this value represents a JSON string. |
boolean |
equals(java.lang.Object object)
Indicates whether some other object is "equal to" this one according to the contract specified in Object.equals(Object). |
int |
hashCode()
|
boolean |
isArray()
Detects whether this value represents a JSON array. |
boolean |
isBoolean()
Detects whether this value represents a boolean value. |
boolean |
isFalse()
Detects whether this value represents the JSON literal false. |
boolean |
isNull()
Detects whether this value represents the JSON literal null. |
boolean |
isNumber()
Detects whether this value represents a JSON number. |
boolean |
isObject()
Detects whether this value represents a JSON object. |
boolean |
isString()
Detects whether this value represents a JSON string. |
boolean |
isTrue()
Detects whether this value represents the JSON literal true. |
static JsonValue |
readFrom(java.io.Reader reader)
Reads a JSON value from the given reader. |
static JsonValue |
readFrom(java.lang.String text)
Reads a JSON value from the given string. |
java.lang.String |
toString()
Returns the JSON string for this value in its minimal form, without any additional whitespace. |
static JsonValue |
valueOf(boolean value)
Returns a JsonValue instance that represents the given boolean value. |
static JsonValue |
valueOf(double value)
Returns a JsonValue instance that represents the given double value. |
static JsonValue |
valueOf(float value)
Returns a JsonValue instance that represents the given float value. |
static JsonValue |
valueOf(long value)
Returns a JsonValue instance that represents the given long value. |
static JsonValue |
valueOf(java.lang.String string)
Returns a JsonValue instance that represents the given string. |
protected abstract void |
write(org.eclipse.rap.json.JsonWriter writer)
|
void |
writeTo(java.io.Writer writer)
Writes the JSON representation for this object to the given writer. |
| Methods inherited from class java.lang.Object |
|---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
public static final JsonValue TRUE
true.
public static final JsonValue FALSE
false.
public static final JsonValue NULL
null.
| Method Detail |
|---|
public static JsonValue readFrom(java.io.Reader reader)
throws java.io.IOException
reader - the reader to read the JSON value from
java.io.IOException - if an I/O error occurs in the reader
ParseException - if the input is not valid JSONpublic static JsonValue readFrom(java.lang.String text)
text - the string that contains the JSON value
ParseException - if the input is not valid JSONpublic static JsonValue valueOf(long value)
long value.
value - the value to get a JSON representation for
public static JsonValue valueOf(float value)
float value.
value - the value to get a JSON representation for
public static JsonValue valueOf(double value)
double value.
value - the value to get a JSON representation for
public static JsonValue valueOf(java.lang.String string)
string - the string to get a JSON representation for
public static JsonValue valueOf(boolean value)
boolean value.
value - the value to get a JSON representation for
public boolean isObject()
JsonObject.
true if this value is an instance of JsonObjectpublic boolean isArray()
JsonArray.
true if this value is an instance of JsonArraypublic boolean isNumber()
true if this value represents a JSON numberpublic boolean isString()
true if this value represents a JSON stringpublic boolean isBoolean()
true if this value represents either the JSON literal
true or falsepublic boolean isTrue()
true.
true if this value represents the JSON literal
truepublic boolean isFalse()
false.
true if this value represents the JSON literal
falsepublic boolean isNull()
null.
true if this value represents the JSON literal
nullpublic JsonObject asObject()
JsonObject, assuming that this value represents a JSON
object. If this is not the case, an exception is thrown.
java.lang.UnsupportedOperationException - if this value is not a JSON objectpublic JsonArray asArray()
JsonArray, assuming that this value represents a JSON
array. If this is not the case, an exception is thrown.
java.lang.UnsupportedOperationException - if this value is not a JSON arraypublic int asInt()
int value, assuming that this value represents a
JSON number that can be interpreted as Java int. If this is not the case, an
exception is thrown.
To be interpreted as Java int, the JSON number must neither contain an exponent
nor a fraction part. Moreover, the number must be in the Integer range.
int
java.lang.UnsupportedOperationException - if this value is not a JSON number
java.lang.NumberFormatException - if this JSON number can not be interpreted as int valuepublic long asLong()
long value, assuming that this value represents a
JSON number that can be interpreted as Java long. If this is not the case, an
exception is thrown.
To be interpreted as Java long, the JSON number must neither contain an exponent
nor a fraction part. Moreover, the number must be in the Long range.
long
java.lang.UnsupportedOperationException - if this value is not a JSON number
java.lang.NumberFormatException - if this JSON number can not be interpreted as long valuepublic float asFloat()
float value, assuming that this value represents a
JSON number. If this is not the case, an exception is thrown.
If the JSON number is out of the Float range, Float.POSITIVE_INFINITY or
Float.NEGATIVE_INFINITY is returned.
float
java.lang.UnsupportedOperationException - if this value is not a JSON numberpublic double asDouble()
double value, assuming that this value represents a
JSON number. If this is not the case, an exception is thrown.
If the JSON number is out of the Double range, Double.POSITIVE_INFINITY or
Double.NEGATIVE_INFINITY is returned.
double
java.lang.UnsupportedOperationException - if this value is not a JSON numberpublic java.lang.String asString()
java.lang.UnsupportedOperationException - if this value is not a JSON stringpublic boolean asBoolean()
boolean value, assuming that this value is either
true or false. If this is not the case, an exception is thrown.
boolean
java.lang.UnsupportedOperationException - if this value is neither true or false
public void writeTo(java.io.Writer writer)
throws java.io.IOException
writer - the writer to write this value to
java.io.IOException - if an I/O error occurs in the writerpublic java.lang.String toString()
readFrom(String) and to
create a value that is equal to this object.
toString in class java.lang.Objectpublic boolean equals(java.lang.Object object)
Object.equals(Object).
Two JsonValues are considered equal if and only if they represent the same JSON text. As a consequence, two given JsonObjects may be different even though they contain the same set of names with the same values, but in a different order.
equals in class java.lang.Objectobject - the reference object with which to compare
public int hashCode()
hashCode in class java.lang.Object
protected abstract void write(org.eclipse.rap.json.JsonWriter writer)
throws java.io.IOException
java.io.IOException
|
Eclipse Remote Application Platform | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
Copyright (c) EclipseSource and others 2002, 2013. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0