Class MetaPropertyPath

java.lang.Object
io.jmix.core.metamodel.model.MetaPropertyPath
All Implemented Interfaces:
PropertyPath, Serializable

public class MetaPropertyPath extends Object implements Serializable, PropertyPath
Object representing a relative path to a property from certain MetaClass
See Also:
  • Constructor Details

  • Method Details

    • getPathString

      protected static String getPathString(String[] path)
    • getMetaClass

      public MetaClass getMetaClass()
      MetaClass which is the path origin
    • getMetaProperties

      public MetaProperty[] getMetaProperties()
      Array of MetaProperties between the originating MetaClass and target MetaProperty
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • getRange

      public Range getRange()
      Range of the target MetaProperty
    • getRangeJavaClass

      public Class getRangeJavaClass()
      Java class of the target MetaProperty range
    • getPath

      public String[] getPath()
      Path as String array
    • getMetaProperty

      public MetaProperty getMetaProperty()
      Target MetaProperty
    • startsWith

      public boolean startsWith(MetaPropertyPath other)
      Tests if this path is a nested property of the given path.
    • toPathString

      public String toPathString()
      Returns the path as dot-separated string.
    • length

      public int length()
      Length of the path, i.e. how many properties it contains.
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • getPropertyNames

      public String[] getPropertyNames()
      Specified by:
      getPropertyNames in interface PropertyPath
      Returns:
      names of properties
    • getFirstPropertyName

      public String getFirstPropertyName()
      Specified by:
      getFirstPropertyName in interface PropertyPath
      Returns:
      first property name
    • isDirectProperty

      public boolean isDirectProperty()
      Specified by:
      isDirectProperty in interface PropertyPath
      Returns:
      true if property path represents single property name