X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=dmaap-adaptor-java%2Fsrc%2Fmain%2Fjava%2Forg%2Foran%2Fdmaapadapter%2Fcontrollers%2FErrorResponse.java;fp=dmaap-adaptor-java%2Fsrc%2Fmain%2Fjava%2Forg%2Foran%2Fdmaapadapter%2Fcontrollers%2FErrorResponse.java;h=0000000000000000000000000000000000000000;hb=248487e4d6f6417da3d0f6784e20e81bcb4330d7;hp=39f62fb30c6b313a78cfc40a65aae4d2924787ec;hpb=844931b62f35ce6ee2d9dc7274573fc54e14407a;p=nonrtric.git diff --git a/dmaap-adaptor-java/src/main/java/org/oran/dmaapadapter/controllers/ErrorResponse.java b/dmaap-adaptor-java/src/main/java/org/oran/dmaapadapter/controllers/ErrorResponse.java deleted file mode 100644 index 39f62fb3..00000000 --- a/dmaap-adaptor-java/src/main/java/org/oran/dmaapadapter/controllers/ErrorResponse.java +++ /dev/null @@ -1,112 +0,0 @@ -/*- - * ========================LICENSE_START================================= - * O-RAN-SC - * %% - * Copyright (C) 2021 Nordix Foundation - * %% - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ========================LICENSE_END=================================== - */ - -package org.oran.dmaapadapter.controllers; - -import com.google.gson.Gson; -import com.google.gson.GsonBuilder; -import com.google.gson.annotations.SerializedName; - -import io.swagger.v3.oas.annotations.media.Schema; - -import org.oran.dmaapadapter.exceptions.ServiceException; -import org.springframework.http.HttpHeaders; -import org.springframework.http.HttpStatus; -import org.springframework.http.MediaType; -import org.springframework.http.ResponseEntity; -import reactor.core.publisher.Mono; - -public class ErrorResponse { - private static Gson gson = new GsonBuilder() // - .create(); // - - // Returned as body for all failed REST calls - @Schema(name = "error_information", description = "Problem as defined in https://tools.ietf.org/html/rfc7807") - public static class ErrorInfo { - @SerializedName("type") - private String type = "about:blank"; - - @SerializedName("title") - private String title = null; - - @SerializedName("status") - private final Integer status; - - @SerializedName("detail") - private String detail = null; - - @SerializedName("instance") - private String instance = null; - - public ErrorInfo(String detail, Integer status) { - this.detail = detail; - this.status = status; - } - - @Schema(example = "503", - description = "The HTTP status code generated by the origin server for this occurrence of the problem. ") - public Integer getStatus() { - return status; - } - - @Schema(example = "Policy type not found", - description = " A human-readable explanation specific to this occurrence of the problem.") - public String getDetail() { - return this.detail; - } - - } - - @Schema(name = "message", description = "message") - public final String message; - - ErrorResponse(String message) { - this.message = message; - } - - static Mono> createMono(String text, HttpStatus code) { - return Mono.just(create(text, code)); - } - - static Mono> createMono(Exception e, HttpStatus code) { - return createMono(e.toString(), code); - } - - public static ResponseEntity create(String text, HttpStatus code) { - ErrorInfo p = new ErrorInfo(text, code.value()); - String json = gson.toJson(p); - HttpHeaders headers = new HttpHeaders(); - headers.setContentType(MediaType.APPLICATION_PROBLEM_JSON); - return new ResponseEntity<>(json, headers, code); - } - - public static ResponseEntity create(Throwable e, HttpStatus code) { - if (e instanceof RuntimeException) { - code = HttpStatus.INTERNAL_SERVER_ERROR; - } else if (e instanceof ServiceException) { - ServiceException se = (ServiceException) e; - if (se.getHttpStatus() != null) { - code = se.getHttpStatus(); - } - } - return create(e.toString(), code); - } - -}