diff options
Diffstat (limited to 'config-application-package/src/main/java/com/yahoo/config/model/application/provider/AppSubDirs.java')
-rw-r--r-- | config-application-package/src/main/java/com/yahoo/config/model/application/provider/AppSubDirs.java | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/config-application-package/src/main/java/com/yahoo/config/model/application/provider/AppSubDirs.java b/config-application-package/src/main/java/com/yahoo/config/model/application/provider/AppSubDirs.java new file mode 100644 index 00000000000..6e730ba8410 --- /dev/null +++ b/config-application-package/src/main/java/com/yahoo/config/model/application/provider/AppSubDirs.java @@ -0,0 +1,72 @@ +// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +package com.yahoo.config.model.application.provider; + +import com.yahoo.collections.Tuple2; +import com.yahoo.config.application.api.ApplicationPackage; + +import java.io.File; + +/** + * Definitions of sub-directories of an application package. + * + * @author <a href="mailto:musum@yahoo-inc.com">Harald Musum</a> + */ +public class AppSubDirs { + + final Tuple2<File, String> root; + final Tuple2<File, String> templates; + public final Tuple2<File, String> rules; + final Tuple2<File, String> searchchains; + final Tuple2<File, String> docprocchains; + final Tuple2<File, String> routingtables; + final Tuple2<File, String> configDefs; + final Tuple2<File, String> searchdefinitions; + + public AppSubDirs(File root) { + this.root = new Tuple2<>(root, root.getName()); + templates = createTuple(ApplicationPackage.TEMPLATES_DIR); + rules = createTuple(ApplicationPackage.RULES_DIR.getRelative()); + searchchains = createTuple(ApplicationPackage.SEARCHCHAINS_DIR); + docprocchains = createTuple(ApplicationPackage.DOCPROCCHAINS_DIR); + routingtables = createTuple(ApplicationPackage.ROUTINGTABLES_DIR); + configDefs = createTuple(ApplicationPackage.CONFIG_DEFINITIONS_DIR); + searchdefinitions = createTuple(ApplicationPackage.SEARCH_DEFINITIONS_DIR.getRelative()); + } + + private Tuple2<File, String> createTuple(String name) { + return new Tuple2<>(file(name), name); + } + + public File file(String subPath) { + return new File(root.first, subPath); + } + + public File root() { + return root.first; + } + + public File templates() { + return templates.first; + } + + public File rules() { + return rules.first; + } + + public File searchchains() { + return searchchains.first; + } + + public File docprocchains() { + return docprocchains.first; + } + + public File configDefs() { + return configDefs.first; + } + + public File searchdefinitions() { + return searchdefinitions.first; + } + +} |