Class ItemPathImpl

java.lang.Object
com.evolveum.midpoint.prism.path.ItemPathImpl
All Implemented Interfaces:
ItemPath, ShortDumpable, Serializable

public final class ItemPathImpl extends Object implements ItemPath
See Also:
  • Field Details

    • EMPTY_PATH

      public static final ItemPath EMPTY_PATH
  • Method Details

    • getSegments

      @NotNull public @NotNull List<?> getSegments()
      Description copied from interface: ItemPath
      Returns the path segments. Avoid using this method and access segments directly. Instead try to find suitable method in ItemPath interface. NEVER change path content using this method. TODO consider returning unmodifiable collection here (beware of performance implications)
      Specified by:
      getSegments in interface ItemPath
    • isEmpty

      public boolean isEmpty()
      Description copied from interface: ItemPath
      Returns true if the path is empty i.e. has no components.
      Specified by:
      isEmpty in interface ItemPath
    • size

      public int size()
      Description copied from interface: ItemPath
      Returns path size i.e. the number of components.
      Specified by:
      size in interface ItemPath
    • first

      public Object first()
      Description copied from interface: ItemPath
      Returns the first segment or null if the path is empty.
      Specified by:
      first in interface ItemPath
    • rest

      @NotNull public @NotNull ItemPath rest()
      Description copied from interface: ItemPath
      Returns the rest of the path (the tail).
      Specified by:
      rest in interface ItemPath
    • rest

      @NotNull public @NotNull ItemPath rest(int n)
      Description copied from interface: ItemPath
      Returns the rest of the path (the tail), starting at position "n".
      Specified by:
      rest in interface ItemPath
    • equals

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

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

      @NotNull public @NotNull ItemPath namedSegmentsOnly()
      Description copied from interface: ItemPath
      Returns the path containing only the regular named segments.
      Specified by:
      namedSegmentsOnly in interface ItemPath
    • removeIds

      @NotNull public @NotNull ItemPath removeIds()
      Description copied from interface: ItemPath
      Returns the path with no Id segments.
      Specified by:
      removeIds in interface ItemPath
    • lastName

      public ItemName lastName()
      Description copied from interface: ItemPath
      Returns the last name segment value; or null if there's no name segment.
      Specified by:
      lastName in interface ItemPath
    • last

      public Object last()
      Description copied from interface: ItemPath
      Returns the last segment (or null if the path is empty).
      Specified by:
      last in interface ItemPath
    • firstAsPath

      public ItemPath firstAsPath()
      Description copied from interface: ItemPath
      Returns the first segment as an ItemPath. TODO consider the necessity of such method
      Specified by:
      firstAsPath in interface ItemPath
    • subPath

      public ItemPath subPath(int from, int to)
      Description copied from interface: ItemPath
      Returns a sub-path from (including) to (excluding) given indices.
      Specified by:
      subPath in interface ItemPath
    • allExceptLast

      @NotNull public @NotNull ItemPath allExceptLast()
      Description copied from interface: ItemPath
      Returns all segments except the last one.
      Specified by:
      allExceptLast in interface ItemPath
    • getSegment

      public Object getSegment(int i)
      Description copied from interface: ItemPath
      Returns the given path segment.
      Specified by:
      getSegment in interface ItemPath
    • toString

      public String toString()
      Overrides:
      toString in class Object