private static void HandleUnknownExceptions(HttpContext context, Exception ex, DefaultErrors errors)
        {
            if (errors.ErrorList.Count > 1)
            {
                return;
            }
            const HttpStatusCode code = HttpStatusCode.InternalServerError;

            context.Response.ContentType = "application/json";
            context.Response.StatusCode  = (int)code;
            errors.Reject("UNKNOWN", "Unknown Exception Occurred");
        }
        private static void HandleClientException(HttpContext context, Exception ex, DefaultErrors errors)
        {
            if (!(ex is ClientException))
            {
                return;
            }
            const HttpStatusCode code = HttpStatusCode.InternalServerError;

            context.Response.ContentType = "application/json";
            context.Response.StatusCode  = (int)code;
            var clientException = (ClientException)ex;

            errors.Reject(clientException.ErrorCode, clientException.Message, clientException.Message);
        }
        private static void HandleNotFoundException(HttpContext context, Exception ex, DefaultErrors errors)
        {
            if (!(ex is NotFoundException))
            {
                return;
            }
            const HttpStatusCode code = HttpStatusCode.NotFound;
            var result = JsonConvert.SerializeObject(new { error = ex.Message });

            context.Response.ContentType = "application/json";
            context.Response.StatusCode  = (int)code;
            var clientException = (ClientException)ex;

            errors.Reject(clientException.ErrorCode, clientException.Message, clientException.Message);
        }