Class ClassLoaderFileSystem.ClassLoaderResourceId

java.lang.Object
org.apache.beam.sdk.io.ClassLoaderFileSystem.ClassLoaderResourceId
All Implemented Interfaces:
Serializable, ResourceId
Enclosing class:
ClassLoaderFileSystem

public static class ClassLoaderFileSystem.ClassLoaderResourceId extends Object implements ResourceId
See Also:
  • Method Details

    • resolve

      public ClassLoaderFileSystem.ClassLoaderResourceId resolve(String other, ResolveOptions resolveOptions)
      Description copied from interface: ResourceId
      Returns a child ResourceId under this.

      In order to write file system agnostic code, callers should not include delimiters in other, and should use ResolveOptions.StandardResolveOptions to specify whether to resolve a file or a directory.

      For example:

      
       ResourceId homeDir = ...;
       ResourceId tempOutput = homeDir
           .resolve("tempDir", StandardResolveOptions.RESOLVE_DIRECTORY)
           .resolve("output", StandardResolveOptions.RESOLVE_FILE);
       

      This ResourceId should represents a directory.

      It is up to each file system to resolve in their own way.

      Resolving special characters:

      • resourceId.resolve("..", StandardResolveOptions.RESOLVE_DIRECTORY) returns the parent directory of this ResourceId.
      • resourceId.resolve("*", StandardResolveOptions.RESOLVE_FILE) returns a ResourceId which matches all files in this ResourceId.
      • resourceId.resolve("*", StandardResolveOptions.RESOLVE_DIRECTORY) returns a ResourceId which matches all directories in this ResourceId.
      Specified by:
      resolve in interface ResourceId
    • getCurrentDirectory

      public ClassLoaderFileSystem.ClassLoaderResourceId getCurrentDirectory()
      Description copied from interface: ResourceId
      Returns the ResourceId that represents the current directory of this ResourceId.

      If it is already a directory, trivially returns this.

      Specified by:
      getCurrentDirectory in interface ResourceId
    • getScheme

      public String getScheme()
      Description copied from interface: ResourceId
      Get the scheme which defines the namespace of the ResourceId.

      The scheme is required to follow URI scheme syntax. See RFC 2396

      Specified by:
      getScheme in interface ResourceId
    • getFilename

      public @Nullable String getFilename()
      Description copied from interface: ResourceId
      Returns the name of the file or directory denoted by this ResourceId. The file name is the farthest element from the root in the directory hierarchy.
      Specified by:
      getFilename in interface ResourceId
      Returns:
      a string representing the name of file or directory, or null if there are zero components.
    • isDirectory

      public boolean isDirectory()
      Description copied from interface: ResourceId
      Returns true if this ResourceId represents a directory, false otherwise.
      Specified by:
      isDirectory in interface ResourceId