Ejemplo n.º 1
0
        public static HttpStatusCode GetHttpCode(this AppWebExceptionType type)
        {
            switch (type)
            {
            case AppWebExceptionType.MissingConfiguration:
            case AppWebExceptionType.RecordNotDeleted:
            case AppWebExceptionType.RecordNotCreated:
            case AppWebExceptionType.RecordNotUpdated:
            case AppWebExceptionType.RecordNotSaved:
            case AppWebExceptionType.ServerError:
                return(HttpStatusCode.InternalServerError);

            case AppWebExceptionType.RecordDoesNotExist:
                return(HttpStatusCode.NotFound);

            case AppWebExceptionType.InvalidParameter:
                return(HttpStatusCode.BadRequest);

            case AppWebExceptionType.RecordAlreadyExists:
                return(HttpStatusCode.Found);

            case AppWebExceptionType.InvalidOperation:
                return(HttpStatusCode.Forbidden);

            case AppWebExceptionType.InvalidSession:
            case AppWebExceptionType.InvalidUsernamePassword:
                return(HttpStatusCode.Unauthorized);

            default:
                return(HttpStatusCode.BadRequest);
            }
        }
Ejemplo n.º 2
0
 public AppWebException(
     AppWebExceptionType error
     , LoggerData loggerData = null
     , Exception exception   = null
     )
     : base(error.GetMessage(), error.GetHttpCode(), exception)
 {
     Log.Fatal(ExceptionMessage, loggerData, exception ?? this);
 }
Ejemplo n.º 3
0
 public AppWebException(
     AppWebExceptionType error
     , HttpStatusCode status
     , string customMessage
     , LoggerData loggerData = null
     , Exception exception   = null
     )
     : base(error.GetMessage() + ": " + customMessage, status, exception)
 {
     Log.Fatal(ExceptionMessage, loggerData, exception ?? this);
 }
Ejemplo n.º 4
0
        public static string GetMessage(this AppWebExceptionType type, string moreInfo = null)
        {
            string msg = Regex.Replace(type.ToString(), @"(\P{Ll})(\P{Ll}\p{Ll})", "$1 $2");

            msg = Regex.Replace(msg, @"(\p{Ll})(\P{Ll})", "$1 $2");

            if (!string.IsNullOrWhiteSpace(moreInfo))
            {
                msg += ". " + moreInfo;
            }

            return(msg);
        }