Class CellPathResolverView

  • All Implemented Interfaces:
    CellPathResolver

    public final class CellPathResolverView
    extends AbstractCellPathResolver
    View of a subset of cells of a cell path resolver.

    Views are used for non-root cells, to ensure that only the subset of cell names that the cell declares are visible within that cell.

    • Constructor Detail

    • Method Detail

      • getCellNameResolver

        public CellNameResolver getCellNameResolver()
        Description copied from interface: CellPathResolver
        Provides access to the CellNameResolver for this cell. This is to assist in migration to the new name/path resolvers.
      • getCellPath

        public Optional<Path> getCellPath​(Optional<String> cellName)
        Parameters:
        cellName - name of cell, Optional.empty() for root cell.
        Returns:
        Absolute path to the physical location of the cell, or Optional.empty() if the cell name cannot be resolved.
      • getCellPathsByRootCellExternalName

        public com.google.common.collect.ImmutableMap<String,​AbsPath> getCellPathsByRootCellExternalName()
        Returns:
        absolute paths to all cells this resolver knows about. The key is the name of the cell in the root cell's config (this is not necessarily the canonical name).
      • getCanonicalCellName

        public Optional<String> getCanonicalCellName​(Path cellPath)
        Description copied from interface: CellPathResolver
        Returns a cell name that can be used to refer to the cell at the given path.

        Returns Optional.empty() if the path refers to the root cell. Returns the lexicographically smallest name if the cell path has multiple names.

        Note: this is not the inverse of CellPathResolver.getCellPath(Optional), which returns the current, rather than the root, cell path if the cell name is empty.

      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object