Class Location

  • All Implemented Interfaces:
    java.lang.Comparable<Location>

    public final class Location
    extends java.lang.Object
    implements java.lang.Comparable<Location>
    A location to load migrations from.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static java.lang.String FILESYSTEM_PREFIX
      The prefix for filesystem locations.
    • Constructor Summary

      Constructors 
      Constructor Description
      Location​(java.lang.String descriptor)
      Creates a new location.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      int compareTo​(Location o)  
      boolean equals​(java.lang.Object o)  
      java.lang.String getDescriptor()  
      java.lang.String getPath()  
      java.util.regex.Pattern getPathRegex()  
      java.lang.String getPathRelativeToThis​(java.lang.String path)
      Returns the path relative to this location.
      java.lang.String getPrefix()
      The prefix part of the location.
      java.lang.String getRootPath()
      The first folder in the path.
      int hashCode()  
      boolean isAwsS3()
      Checks whether this denotes a location in AWS S3.
      boolean isClassPath()
      Checks whether this denotes a location on the classpath.
      boolean isFileSystem()
      Checks whether this denotes a location on the filesystem.
      boolean isGCS()
      Checks whether this denotes a location in Google cloud storage.
      boolean isParentOf​(Location other)
      Checks whether this location is a parent of this other location.
      boolean matchesPath​(java.lang.String path)  
      java.lang.String toString()  
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, notify, notifyAll, wait, wait, wait
    • Field Detail

      • FILESYSTEM_PREFIX

        public static final java.lang.String FILESYSTEM_PREFIX
        The prefix for filesystem locations.
        See Also:
        Constant Field Values
    • Constructor Detail

      • Location

        public Location​(java.lang.String descriptor)
        Creates a new location.
        Parameters:
        descriptor - The location descriptor.
    • Method Detail

      • matchesPath

        public boolean matchesPath​(java.lang.String path)
        Returns:
        Whether the given path matches this locations regex. Will always return true when the location did not contain any wildcards.
      • getPathRelativeToThis

        public java.lang.String getPathRelativeToThis​(java.lang.String path)
        Returns the path relative to this location. If the location path contains wildcards, the returned path will be relative to the last non-wildcard folder in the path.
        Returns:
        the path relative to this location
      • isClassPath

        public boolean isClassPath()
        Checks whether this denotes a location on the classpath.
        Returns:
        true if it does, false if it doesn't.
      • isFileSystem

        public boolean isFileSystem()
        Checks whether this denotes a location on the filesystem.
        Returns:
        true if it does, false if it doesn't.
      • isAwsS3

        public boolean isAwsS3()
        Checks whether this denotes a location in AWS S3.
        Returns:
        true if it does, false if it doesn't;
      • isGCS

        public boolean isGCS()
        Checks whether this denotes a location in Google cloud storage.
        Returns:
        true if it does, false if it doesn't;
      • isParentOf

        public boolean isParentOf​(Location other)
        Checks whether this location is a parent of this other location.
        Parameters:
        other - The other location.
        Returns:
        true if it is, false if it isn't.
      • getPath

        public java.lang.String getPath()
        Returns:
        The path part of the location.
      • getDescriptor

        public java.lang.String getDescriptor()
        Returns:
        The complete location descriptor.
      • compareTo

        public int compareTo​(Location o)
        Specified by:
        compareTo in interface java.lang.Comparable<Location>
      • equals

        public boolean equals​(java.lang.Object o)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
        Returns:
        The complete location descriptor.
      • getPrefix

        public java.lang.String getPrefix()
        The prefix part of the location. Can be either classpath: or filesystem:.
        Returns:
        The prefix part of the location. Can be either classpath: or filesystem:.
      • getRootPath

        public java.lang.String getRootPath()
        The first folder in the path. This will equal rawPath if the path does not contain any wildcards
        Returns:
        The root part of the path part of the location.
      • getPathRegex

        public java.util.regex.Pattern getPathRegex()
        Returns:
        The regex that matches wildcards in teh original path. Null if the original path did not contain any wildcards.