Package org.apache.cayenne.map

## Interface PathComponent<T extends Attribute,​U extends Relationship>

-     public interface PathComponent<T extends Attribute,​U extends Relationship>

  A component in a path chain.
  Since:
    3.0

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `Iterable<PathComponent<T,​U>>` | `getAliasedPath()` | Returns an aliased path or null if this component is not an alias.
    `T` | `getAttribute()` |
    `JoinType` | `getJoinType()` | Returns a joint type of this path component in the expression.
    `String` | `getName()` |
    `U` | `getRelationship()` |
    `boolean` | `isAlias()` | Returns true if this component is an alias for a different path.
    `boolean` | `isLast()` |

- - ### Method Detail

    - #### getAttribute

          T getAttribute()

    - #### getRelationship

          U getRelationship()

    - #### getName

          String getName()

    - #### getJoinType

          JoinType getJoinType()

      Returns a joint type of this path component in the expression. Attributes always return undefined type, while relationships may be outer or inner joins.

    - #### isLast

          boolean isLast()

    - #### isAlias

          boolean isAlias()

      Returns true if this component is an alias for a different path. Only the first path component can be an alias. Aliased path can be obtained by calling `getAliasedPath()`.

    - #### getAliasedPath

          Iterable<PathComponent<T,​U>> getAliasedPath()

      Returns an aliased path or null if this component is not an alias.