Package Torello.Java.JSON
Class JsonBindingObjException
- java.lang.Object
-
- java.lang.Throwable
-
- java.lang.Exception
-
- java.lang.RuntimeException
-
- javax.json.JsonException
-
- Torello.Java.JSON.JsonBindingException
-
- Torello.Java.JSON.JsonBindingObjException
-
- All Implemented Interfaces:
java.io.Serializable
- Direct Known Subclasses:
JsonArithmeticObjException
,JsonNullObjException
,JsonNullPrimitiveObjException
,JsonPropMissingException
,JsonStrParseObjException
,JsonTypeObjException
public abstract class JsonBindingObjException extends JsonBindingException
JsonBindingObjException 🠞Json
- This exception is thrown by the Json Reader Classes
Binding
- This is the super-class of all Json Exceptions that handle errors withJsonObject's
Obj
- Since these exceptions contain 'convenience fields' which provide some simple data about the Json that caused the exception throw, and since the 'relevant information' about aJsonObject
property and aJsonArray
index are somewhat different - there are two different exceptions for them! (An Exception forObject's
and an exception forArray's
).
Thisabstract
class reports errors that occur when retrieving data fromJsonObject's
Exception
- This class inherits classException
The parent class of all Json Binding Exceptions that are used forJsonObject
property retrieval errors. In order to hopefully continue to make easy-code actually look easy, the following keywords used in this exception's name are broken down below.
NOTE: This class is abstract, and cannot be instantiated.
The following'final'
Convenience Fields are exported by this Exception Class:Inherited Field Field Type Inherited From propertyName
java.lang.String
Not Inherited, Class Field errorSourceJsonStruct
JsonStructure
JsonBindingException
expectedJsonType
JsonValue.ValueType
JsonBindingException
methodReturnJavaType
java.lang.Class
JsonBindingException
valueRetrieved
JsonValue
JsonBindingException
- See Also:
- Serialized Form
Hi-Lited Source-Code:- View Here: Torello/Java/JSON/JsonBindingObjException.java
- Open New Browser-Tab: Torello/Java/JSON/JsonBindingObjException.java
File Size: 9,278 Bytes Line Count: 206 '\n' Characters Found
-
-
Field Summary
Serializable ID Modifier and Type Field static long
serialVersionUID
'final'
Exception Convenience FieldsModifier and Type Field String
propertyName
-
Fields inherited from class Torello.Java.JSON.JsonBindingException
errorSourceJsonStruct, expectedJsonType, methodReturnJavaType, valueRetrieved
-
-
Constructor Summary
Constructors Constructor Description JsonBindingObjException(String message, Throwable cause, JsonObject errorSourceJsonObject, String propertyName, JsonValue.ValueType expectedJsonType, JsonValue valueRetrieved, Class<?> methodReturnJavaType)
Constructs a newJsonBindingObjException
with the specified detail message and cause
NOTE: The detail message associated with cause is not automatically incorporated in this exception's detail message.JsonBindingObjException(String message, JsonObject errorSourceJsonObject, String propertyName, JsonValue.ValueType expectedJsonType, JsonValue valueRetrieved, Class<?> methodReturnJavaType)
Constructs aJsonBindingObjException
with the specified detail message, and user-provided convenience-field values.JsonBindingObjException(Throwable cause, JsonObject errorSourceJsonObject, String propertyName, JsonValue.ValueType expectedJsonType, JsonValue valueRetrieved, Class<?> methodReturnJavaType, String endingNote)
Constructs a newJsonBindingObjException
with the specified cause and a detail message of(cause==null ? null : cause.toString())
(which typically contains the class and detail message of cause).JsonBindingObjException(JsonObject errorSourceJsonObject, String propertyName, JsonValue.ValueType expectedJsonType, JsonValue valueRetrieved, Class<?> methodReturnJavaType, String endingNote)
Constructs aJsonBindingObjException
with no specified detail messsage, and the user-provided convenience-field values.
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method protected static String
BASE_MESSAGE_OBJ(JsonObject errorSourceJsonObject, String propertyName, JsonValue.ValueType expectedJsonType, JsonValue valueRetrieved, Class<?> methodReturnJavaType, String endingNote, Throwable... causes)
-
Methods inherited from class Torello.Java.JSON.JsonBindingException
BASE_MESSAGE
-
-
-
-
Field Detail
-
serialVersionUID
public static final long serialVersionUID
This fulfils the SerialVersion UID requirement for all classes that implement Java'sinterface java.io.Serializable
. Using theSerializable
Implementation offered by java is very easy, and can make saving program state when debugging a lot easier. It can also be used in place of more complicated systems like "hibernate" to store data as well.
Note that Java'sjava.lang.Exception
andjava.lang.Error
classes implement theSerializable interface
, and a warning-free build expects this field be defined here.- See Also:
- Constant Field Values
- Code:
- Exact Field Declaration Expression:
public static final long serialVersionUID = 1;
-
propertyName
public final java.lang.String propertyName
This field is provided to the user as a matter of convenience. All instances of thisException
ought to guarantee that when an instance is thrown - any & all "Convenience Fields" have been properly set.
If this package is extended, or if this exception is used elsewhere, try to remember to not to accidentally leave this field null when using this class' constructors.
In Summary:
All this is really trying to explain is that, when debugging your code, if in the analysis of a particularException
, that analysis causes another exception throw (NullPointerException
) - BECAUSE THIS CONVENIENCE FIELD WAS LEFT NULL - you would likely get pretty angry.
TheJsonObject
property-name that has caused this exception to throw.
-
-
Constructor Detail
-
JsonBindingObjException
public JsonBindingObjException(JsonObject errorSourceJsonObject, java.lang.String propertyName, JsonValue.ValueType expectedJsonType, JsonValue valueRetrieved, java.lang.Class<?> methodReturnJavaType, java.lang.String endingNote)
Constructs aJsonBindingObjException
with no specified detail messsage, and the user-provided convenience-field values.- Parameters:
errorSourceJsonObject
- TheJsonObject
from which the property is being retrieved / extracted.propertyName
- This is the property-name into theJsonObject
from which the property is being retrieved / extracted.expectedJsonType
- This is the Json-Type that was expected to be retrieved fromJsonObject
.valueRetrieved
- This is theJsonValue
that was extracted from theJsonObject
which caused an exception. Note that if the entity did not exist, then this parameter will be Java-Null. If Json-Null was found, then this parameter should beJsonValue.NULL
methodReturnJavaType
- ClassReadJSON
will always provide the ultimate Java-Type that is to be returned by the method where this exception is being thrown.endingNote
- The distinct message for the exception sub-class.
-
JsonBindingObjException
public JsonBindingObjException(java.lang.String message, JsonObject errorSourceJsonObject, java.lang.String propertyName, JsonValue.ValueType expectedJsonType, JsonValue valueRetrieved, java.lang.Class<?> methodReturnJavaType)
Constructs aJsonBindingObjException
with the specified detail message, and user-provided convenience-field values.- Parameters:
message
- the detail message.errorSourceJsonObject
- TheJsonObject
from which the property is being retrieved / extracted.propertyName
- This is the property-name into theJsonObject
from which the property is being retrieved / extracted.expectedJsonType
- This is the Json-Type that was expected to be retrieved fromJsonObject
.valueRetrieved
- This is theJsonValue
that was extracted from theJsonObject
which caused an exception. Note that if the entity did not exist, then this parameter will be Java-Null. If Json-Null was found, then this parameter should beJsonValue.NULL
methodReturnJavaType
- ClassReadJSON
will always provide the ultimate Java-Type that is to be returned by the method where this exception is being thrown.
-
JsonBindingObjException
public JsonBindingObjException(java.lang.String message, java.lang.Throwable cause, JsonObject errorSourceJsonObject, java.lang.String propertyName, JsonValue.ValueType expectedJsonType, JsonValue valueRetrieved, java.lang.Class<?> methodReturnJavaType)
Constructs a newJsonBindingObjException
with the specified detail message and cause
NOTE: The detail message associated with cause is not automatically incorporated in this exception's detail message.- Parameters:
message
- The detail message (which is saved for later retrieval by theThrowable.getMessage()
method).cause
- the cause (which is saved for later retrieval by theThrowable.getCause()
method). (A null value is permitted, and indicates that the cause is nonexistent or unknown.)errorSourceJsonObject
- TheJsonObject
from which the property is being retrieved / extracted.propertyName
- This is the property-name into theJsonObject
from which the property is being retrieved / extracted.expectedJsonType
- This is the Json-Type that was expected to be retrieved fromJsonObject
.valueRetrieved
- This is theJsonValue
that was extracted from theJsonObject
which caused an exception. Note that if the entity did not exist, then this parameter will be Java-Null. If Json-Null was found, then this parameter should beJsonValue.NULL
methodReturnJavaType
- ClassReadJSON
will always provide the ultimate Java-Type that is to be returned by the method where this exception is being thrown.
-
JsonBindingObjException
public JsonBindingObjException(java.lang.Throwable cause, JsonObject errorSourceJsonObject, java.lang.String propertyName, JsonValue.ValueType expectedJsonType, JsonValue valueRetrieved, java.lang.Class<?> methodReturnJavaType, java.lang.String endingNote)
Constructs a newJsonBindingObjException
with the specified cause and a detail message of(cause==null ? null : cause.toString())
(which typically contains the class and detail message of cause). This constructor is useful for exceptions that are little more than wrappers for other throwables.- Parameters:
cause
- The cause (which is saved for later retrieval by theThrowable.getCause()
method). (A null value is permitted, and indicates that the cause is nonexistent or unknown.)errorSourceJsonObject
- TheJsonObject
from which the property is being retrieved / extracted.propertyName
- This is the property-name into theJsonObject
from which the property is being retrieved / extracted.expectedJsonType
- This is the Json-Type that was expected to be retrieved fromJsonObject
.valueRetrieved
- This is theJsonValue
that was extracted from theJsonObject
which caused an exception. Note that if the entity did not exist, then this parameter will be Java-Null. If Json-Null was found, then this parameter should beJsonValue.NULL
methodReturnJavaType
- ClassReadJSON
will always provide the ultimate Java-Type that is to be returned by the method where this exception is being thrown.endingNote
- The distinct message for the exception sub-class.
-
-
Method Detail
-
BASE_MESSAGE_OBJ
protected static java.lang.String BASE_MESSAGE_OBJ (JsonObject errorSourceJsonObject, java.lang.String propertyName, JsonValue.ValueType expectedJsonType, JsonValue valueRetrieved, java.lang.Class<?> methodReturnJavaType, java.lang.String endingNote, java.lang.Throwable... causes)
A simple helper method for printing a consistent error messge using the input-data convenience fields ofJsonArray's
.- Parameters:
errorSourceJsonObject
- TheJsonObject
from which the property is being retrieved / extracted.propertyName
- This is the property-name into theJsonObject
from which the property is being retrieved / extracted.expectedJsonType
- This is the Json-Type that was expected to be retrieved fromJsonObject
.valueRetrieved
- This is theJsonValue
that was extracted from theJsonObject
which caused an exception. Note that if the entity did not exist, then this parameter will be Java-Null. If Json-Null was found, then this parameter should beJsonValue.NULL
methodReturnJavaType
- ClassReadJSON
will always provide the ultimate Java-Type that is to be returned by the method where this exception is being thrown.endingNote
- The distinct message for the exception sub-class.causes
- Optional Parameter. At most 1 cause is printed.- Returns:
- The error message
String
. - Code:
- Exact Method Body:
return ((endingNote != null) ? endingNote : "") +"\n" + CAUSE_MESSAGE(causes) + "\tFound In JsonObject: " + ABBREV_STRUCT(errorSourceJsonObject) + "\n" + "\tProperty-Name: " + propertyName + "\n" + "\tExpected Json-Type: " + JT_STR(expectedJsonType) + "\n" + "\tContained JsonValue: " + ABBREV_VAL(valueRetrieved) + "\n" + "\tHaving Actual Json-Type: " + JT_STR((valueRetrieved != null) ? valueRetrieved.getValueType() : null ) + "\n" + "\tConverting To Java-Type: " + ((methodReturnJavaType != null) ? methodReturnJavaType.getCanonicalName() : "Java-Type Unknown" );
-
-