Class ConfigTree

java.lang.Object
io.github.andreyzebin.gitSql.config.ConfigTree

public class ConfigTree extends Object
  • Constructor Details

    • ConfigTree

      public ConfigTree(io.github.zebin.javabash.sandbox.DirectoryTree delegate)
  • Method Details

    • getLeafs

      public Stream<io.github.zebin.javabash.sandbox.PosixPath> getLeafs()
    • getEffectivePropertyKeys

      public Set<String> getEffectivePropertyKeys(io.github.zebin.javabash.sandbox.PosixPath leaf)
      Get effective property list. Moving from root directory to given leaf, collect all unique property keys. Value of property declared closer to leaf on a downstream path has priority
      Parameters:
      leaf - Directory where leaf property stored
      Returns:
      Effective property list, consider all upstream property stores, starting from root directory
    • getEffectiveProperty

      public String getEffectiveProperty(io.github.zebin.javabash.sandbox.PosixPath leaf, String key)
      Get effective property value. Moving from root directory to given leaf, collect all unique property keys. Value of property declared closer to leaf on a downstream path has priority
      Parameters:
      leaf - Directory where leaf property stored
      Returns:
      Effective property value
    • setProperty

      public Optional<String> setProperty(io.github.zebin.javabash.sandbox.PosixPath leaf, String key, String value)
      Get effective property value. Moving from root directory to given leaf, collect all unique property keys. Value of property declared closer to leaf on a downstream path has priority
      Parameters:
      leaf - Directory where leaf property stored
      Returns:
      Effective property value
    • deleteProperty

      public Optional<String> deleteProperty(io.github.zebin.javabash.sandbox.PosixPath leaf, String key)
    • getDirectory

      public io.github.zebin.javabash.sandbox.DirectoryTree getDirectory()