1 package org.openecomp.sdc.common.log.enums;
3 import java.util.Arrays;
4 import java.util.Optional;
7 * Created by dd4296 on 12/26/2017.
9 public enum EcompLoggerErrorCode {
11 PERMISSION_ERROR(100),
12 AVAILABILITY_TIMEOUTS_ERROR(200),
15 BUSINESS_PROCESS_ERROR(500),
18 private int errorCode;
20 EcompLoggerErrorCode(int errorCode) {
21 this.errorCode = errorCode;
24 public int getErrorCode() {
28 public static EcompLoggerErrorCode getByValue(String ecompErrorCode) {
29 String errorPrefix = parseCode(ecompErrorCode);
30 Optional<EcompLoggerErrorCode> optionalCode = Arrays.stream(values()).filter(v->isCode(v, errorPrefix)).findFirst();
31 return optionalCode.orElse(UNKNOWN_ERROR);
34 private static boolean isCode(EcompLoggerErrorCode ecompLoggerErrorCode, String errorPrefix) {
35 return String.valueOf(ecompLoggerErrorCode.getErrorCode()).contains(errorPrefix);
38 private static String parseCode(String errorCode) {
40 return errorCode.substring("E_".length(), 3);
41 } catch (StringIndexOutOfBoundsException ex) {
42 return UNKNOWN_ERROR.name();