DRYer error classes
authorGu1 <gu1@aeroxteam.fr>
Sun, 30 Jun 2013 13:27:52 +0000 (15:27 +0200)
committerGu1 <gu1@aeroxteam.fr>
Sun, 30 Jun 2013 13:31:40 +0000 (15:31 +0200)
index.php

index ad479dc..a15a131 100644 (file)
--- a/index.php
+++ b/index.php
@@ -105,17 +105,25 @@ class APIError implements JsonSerializable, IteratorAggregate {
     }
 }
 
-class APIObjectNotFoundError extends APIError {
-    const error='dolibarr.api.ObjectNotFound';
-    const error_code=1003;
+class APISimpleError extends APIError {
     public function __construct($message) {
-        parent::__construct($message, self::error, self::error_code);
+        parent::__construct($message, static::error, static::error_code);
     }
 }
 
+class APIObjectNotFoundError extends APISimpleError {
+    const error='dolibarr.api.ObjectNotFound';
+    const error_code=1003;
+}
+
+class APIInputError extends APISimpleError {
+    const error='dolibarr.api.InputError';
+    const error_code=1010;
+}
+
 class APIMissingParamError extends APIError {
     const error_base='dolibarr.api.MissingParam';
-    const error_code=1010;
+    const error_code=1011;
     public function __construct($target, $message) {
         $error=self::error_base.".$target";
         parent::__construct($message, $error, self::error_code);
@@ -124,14 +132,14 @@ class APIMissingParamError extends APIError {
 
 class APIInvalidParamError extends APIError {
     const error_base='dolibarr.api.InvalidParam';
-    const error_code=1011;
+    const error_code=1012;
     public function __construct($target, $message) {
         $error=self::error_base.".$target";
         parent::__construct($message, $error, self::error_code);
     }
 }
 
-class APIInternalError extends APIError {
+class APIInternalError extends APISimpleError {
     const error='dolibarr.api.InternalError';
     const error_code=1020;
 }