From 00fd23895d15cfe021a26e40a7141ed0cc441436 Mon Sep 17 00:00:00 2001 From: "Timothy J. Warren" Date: Wed, 6 Jan 2016 17:08:44 -0500 Subject: [PATCH] Add missing classes --- src/Aviat/Ion/Json.php | 119 ++++++++++++++++++++++++++++++++ src/Aviat/Ion/JsonException.php | 18 +++++ 2 files changed, 137 insertions(+) create mode 100644 src/Aviat/Ion/Json.php create mode 100644 src/Aviat/Ion/JsonException.php diff --git a/src/Aviat/Ion/Json.php b/src/Aviat/Ion/Json.php new file mode 100644 index 00000000..831f941e --- /dev/null +++ b/src/Aviat/Ion/Json.php @@ -0,0 +1,119 @@ +isJson(); + } + + /** + * Call the json error functions to check for errors encoding/decoding + * + * @throws JsonException + */ + protected static function check_json_error() + { + $constant_map = [ + JSON_ERROR_NONE => 'JSON_ERROR_NONE', + JSON_ERROR_DEPTH => 'JSON_ERROR_DEPTH', + JSON_ERROR_STATE_MISMATCH => 'JSON_ERROR_STATE_MISMATCH', + JSON_ERROR_CTRL_CHAR => 'JSON_ERROR_CTRL_CHAR', + JSON_ERROR_SYNTAX => 'JSON_ERROR_SYNTAX', + JSON_ERROR_UTF8 => 'JSON_ERROR_UTF8', + JSON_ERROR_RECURSION => 'JSON_ERROR_RECURSION', + JSON_ERROR_INF_OR_NAN => 'JSON_ERROR_INF_OR_NAN', + JSON_ERROR_UNSUPPORTED_TYPE => 'JSON_ERROR_UNSUPPORTED_TYPE' + ]; + + $error = json_last_error(); + $message = json_last_error_msg(); + + if (\JSON_ERROR_NONE !== $error) + { + throw new JsonException("{$constant_map[$error]} - {$message}", $error); + } + } +} +// End of JSON.php \ No newline at end of file diff --git a/src/Aviat/Ion/JsonException.php b/src/Aviat/Ion/JsonException.php new file mode 100644 index 00000000..5be77c4f --- /dev/null +++ b/src/Aviat/Ion/JsonException.php @@ -0,0 +1,18 @@ +