diff options
Diffstat (limited to 'config-model-api/src/main/java/com/yahoo/config/application/api/FileRegistry.java')
-rw-r--r-- | config-model-api/src/main/java/com/yahoo/config/application/api/FileRegistry.java | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/config-model-api/src/main/java/com/yahoo/config/application/api/FileRegistry.java b/config-model-api/src/main/java/com/yahoo/config/application/api/FileRegistry.java index cb4917fe919..1f1e73c8eed 100644 --- a/config-model-api/src/main/java/com/yahoo/config/application/api/FileRegistry.java +++ b/config-model-api/src/main/java/com/yahoo/config/application/api/FileRegistry.java @@ -1,10 +1,13 @@ // Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.config.application.api; +import java.nio.ByteBuffer; import java.util.List; import java.util.Set; import com.yahoo.config.FileReference; +import com.yahoo.text.Utf8; +import net.jpountz.xxhash.XXHashFactory; /** * @author tonytv @@ -31,4 +34,16 @@ public interface FileRegistry { } } + static String uriToRelativeFile(String uri) { + String relative = "uri/" + String.valueOf(XXHashFactory.nativeInstance().hash64().hash(ByteBuffer.wrap(Utf8.toBytes(uri)), 0)); + if (uri.endsWith(".json")) { + relative += ".json"; + } else if (uri.endsWith(".json.lz4")) { + relative += ".json.lz4"; + } else if (uri.endsWith(".lz4")) { + relative += ".lz4"; + } + return relative; + } + } |