diff --git a/airbyte-config/models/src/main/java/io/airbyte/config/Configs.java b/airbyte-config/models/src/main/java/io/airbyte/config/Configs.java index b1982b074a8d..cff3b5ceaffc 100644 --- a/airbyte-config/models/src/main/java/io/airbyte/config/Configs.java +++ b/airbyte-config/models/src/main/java/io/airbyte/config/Configs.java @@ -33,6 +33,10 @@ public interface Configs { String getAirbyteVersion(); + String getAirbyteApiUrl(); + + int getAirbyteApiPort(); + String getAirbyteVersionOrWarning(); Path getConfigRoot(); diff --git a/airbyte-config/models/src/main/java/io/airbyte/config/EnvConfigs.java b/airbyte-config/models/src/main/java/io/airbyte/config/EnvConfigs.java index e357c3613591..2dc242e83d7c 100644 --- a/airbyte-config/models/src/main/java/io/airbyte/config/EnvConfigs.java +++ b/airbyte-config/models/src/main/java/io/airbyte/config/EnvConfigs.java @@ -41,6 +41,7 @@ public class EnvConfigs implements Configs { public static final String AIRBYTE_ROLE = "AIRBYTE_ROLE"; public static final String AIRBYTE_VERSION = "AIRBYTE_VERSION"; + public static final String INTERNAL_API_HOST = "INTERNAL_API_HOST"; public static final String WORKER_ENVIRONMENT = "WORKER_ENVIRONMENT"; public static final String WORKSPACE_ROOT = "WORKSPACE_ROOT"; public static final String WORKSPACE_DOCKER_MOUNT = "WORKSPACE_DOCKER_MOUNT"; @@ -91,6 +92,16 @@ public String getAirbyteRole() { return getEnv(AIRBYTE_ROLE); } + @Override + public String getAirbyteApiUrl() { + return getEnsureEnv(INTERNAL_API_HOST).split(":")[0]; + } + + @Override + public int getAirbyteApiPort() { + return Integer.parseInt(getEnsureEnv(INTERNAL_API_HOST).split(":")[1]); + } + @Override public String getAirbyteVersion() { return getEnsureEnv(AIRBYTE_VERSION); diff --git a/airbyte-config/persistence/src/main/java/io/airbyte/config/persistence/ConfigNotFoundException.java b/airbyte-config/persistence/src/main/java/io/airbyte/config/persistence/ConfigNotFoundException.java index b27b29e470f0..363b258508c6 100644 --- a/airbyte-config/persistence/src/main/java/io/airbyte/config/persistence/ConfigNotFoundException.java +++ b/airbyte-config/persistence/src/main/java/io/airbyte/config/persistence/ConfigNotFoundException.java @@ -29,20 +29,24 @@ public class ConfigNotFoundException extends Exception { - private ConfigSchema type; + private final String type; private final String configId; - public ConfigNotFoundException(ConfigSchema type, String configId) { + public ConfigNotFoundException(String type, String configId) { super(String.format("config type: %s id: %s", type, configId)); this.type = type; this.configId = configId; } + public ConfigNotFoundException(ConfigSchema type, String configId) { + this(type.toString(), configId); + } + public ConfigNotFoundException(ConfigSchema type, UUID uuid) { - this(type, uuid.toString()); + this(type.toString(), uuid.toString()); } - public ConfigSchema getType() { + public String getType() { return type; } diff --git a/airbyte-server/src/main/java/io/airbyte/server/errors/InvalidInputExceptionMapper.java b/airbyte-server/src/main/java/io/airbyte/server/errors/InvalidInputExceptionMapper.java index 01fceb3e6de6..21eb9a6a19f6 100644 --- a/airbyte-server/src/main/java/io/airbyte/server/errors/InvalidInputExceptionMapper.java +++ b/airbyte-server/src/main/java/io/airbyte/server/errors/InvalidInputExceptionMapper.java @@ -52,7 +52,7 @@ public static InvalidInputExceptionInfo infoFromConstraints(ConstraintViolationE props.add(new InvalidInputProperty() .propertyPath(cv.getPropertyPath().toString()) .message(cv.getMessage()) - .invalidValue(cv.getInvalidValue().toString())); + .invalidValue(cv.getInvalidValue() != null ? cv.getInvalidValue().toString() : "null")); } exceptionInfo.validationErrors(props); return exceptionInfo;