github.com/ismailbayram/bigpicture@v0.0.0-20231225173155-e4b21f5efcff/internal/browser/javaproject/src/main/com/shashi/constant/ResponseCode.java (about)

     1  package com.shashi.constant;
     2  
     3  import java.util.Arrays;
     4  import java.util.Optional;
     5  
     6  public enum ResponseCode {
     7  
     8      SUCCESS(200, "OK"),
     9      FAILURE(422, "Unprocessible Entity, Failed to Process"),
    10      NO_CONTENT(204, "No Items Found"),
    11      PAGE_NOT_FOUND(404, "The Page You are Searching For is Not available"),
    12      ACCESS_DENIED(403, "Please Login First to continue"),
    13      BAD_REQUEST(400, "Bad Request, Please Try Again"),
    14      UNAUTHORIZED(401,"Invalid Credentials, Try Again"),
    15      SESSION_EXPIRED(401, "Session Expired, Login Again to Continue"),
    16      INTERNAL_SERVER_ERROR(500, "Internal Server Error, Try Again!!"),
    17      DATABASE_CONNECTION_FAILURE(406,
    18              "Unable to Connect to DB, Please Check your db credentials in application.properties"),
    19      METHOD_NOT_ALLOWED(405, "Requested HTTP method is not supported by this URL"),
    20  
    21      ;
    22  
    23      private final String message;
    24      private final int code;
    25  
    26      ResponseCode(int code, String message) {
    27          this.message = message;
    28          this.code = code;
    29      }
    30  
    31      public String getMessage() {
    32          return message;
    33      }
    34  
    35      public int getCode() {
    36          return code;
    37      }
    38  
    39      // Reverse lookup methods
    40      public static Optional<ResponseCode> getMessageByStatusCode(int statusCode) {
    41          return Arrays.stream(ResponseCode.values())
    42                  .filter(error -> error.getCode() == statusCode)
    43                  .findFirst();
    44      }
    45  }