53 lines
1.5 KiB
Java
53 lines
1.5 KiB
Java
/************************************************************
|
|
*
|
|
* @packageName : io.company.localhost.common.dto
|
|
* @fileName : ApiResponse.java
|
|
* @author : 조인제
|
|
* @date : 24.12.06
|
|
* @description :
|
|
*
|
|
* ===========================================================
|
|
* DATE AUTHOR NOTE
|
|
* -----------------------------------------------------------
|
|
* 24.12.06 조인제 최초 생성
|
|
*
|
|
*************************************************************/
|
|
package io.company.localhost.common.dto;
|
|
|
|
import org.springframework.http.HttpStatus;
|
|
|
|
import lombok.Getter;
|
|
|
|
@Getter
|
|
public class ApiResponse<T> {
|
|
private int code;
|
|
private HttpStatus status;
|
|
private String message;
|
|
private T data;
|
|
|
|
public ApiResponse(HttpStatus status, String message, T data) {
|
|
this.code = status.value();
|
|
this.status = status;
|
|
this.message = message;
|
|
this.data = data;
|
|
}
|
|
|
|
public static <T> ApiResponse<T> of(HttpStatus status, String message, T data) {
|
|
return new ApiResponse<>(status, message, data);
|
|
}
|
|
|
|
public static <T> ApiResponse<T> of(HttpStatus status, T data) {
|
|
return ApiResponse.of(status, status.name(), data);
|
|
}
|
|
|
|
public static <T> ApiResponse<T> ok(T data) {
|
|
return ApiResponse.of(HttpStatus.OK, HttpStatus.OK.name(), data);
|
|
}
|
|
|
|
public static <T> ApiResponse<T> error(HttpStatus status, String message) {
|
|
return new ApiResponse<>(status, message, null);
|
|
}
|
|
public static <T> ApiResponse<T> okMessage(String message) {
|
|
return new ApiResponse<>(HttpStatus.OK, message, null);
|
|
}
|
|
} |