diff --git a/java/src/main/java/adiom/Config.java b/java/src/main/java/adiom/Config.java index 1ac91631..25bea12a 100644 --- a/java/src/main/java/adiom/Config.java +++ b/java/src/main/java/adiom/Config.java @@ -1,9 +1,11 @@ package adiom; +import java.util.List; import java.util.Map; public class Config { public Map namespaces; + public List cosmosInternalKeys; } class NamespaceConfig { diff --git a/java/src/main/java/adiom/Main.java b/java/src/main/java/adiom/Main.java index 180d3aa9..571c9fa8 100644 --- a/java/src/main/java/adiom/Main.java +++ b/java/src/main/java/adiom/Main.java @@ -88,7 +88,8 @@ public class Main { private static final Logger logger = LoggerFactory.getLogger(Main.class); - private static List CosmosInternalKeys = Arrays.asList("_rid", "_self", "_etag", "_attachments", "_ts"); + private static final List DEFAULT_COSMOS_INTERNAL_KEYS = Arrays.asList("_rid", "_self", "_etag", "_attachments", "_ts"); + private static List CosmosInternalKeys; private static Config CONFIG; private static Cache CACHE = Caffeine.newBuilder().expireAfterAccess(150, TimeUnit.SECONDS) .build(); @@ -123,6 +124,12 @@ public static void main(String[] args) { return; } + if (CONFIG.cosmosInternalKeys != null && !CONFIG.cosmosInternalKeys.isEmpty()) { + CosmosInternalKeys = CONFIG.cosmosInternalKeys; + } else { + CosmosInternalKeys = DEFAULT_COSMOS_INTERNAL_KEYS; + } + String cert = System.getenv("CERT_FILE"); String key = System.getenv("KEY_FILE");