Class AbstractIdentificationVariableDeclarationStateObject

    • Method Detail

      • addInnerJoin

        public JoinStateObject addInnerJoin​(String path,
                                            String identificationVariable)
        Adds a new INNER JOIN expression to this declaration.
        Parameters:
        path - The join association path expression
        identificationVariable - The new variable defining the join association path
        Returns:
        A new JoinStateObject
      • addJoin

        public JoinStateObject addJoin​(String joinType)
        Adds a new JOIN expression to this declaration.
        Parameters:
        joinType - One of the joining types: LEFT JOIN, LEFT OUTER JOIN, INNER JOIN or JOIN
        Returns:
        A new JoinStateObject
      • addJoin

        public JoinStateObject addJoin​(String joinType,
                                       ListIterator<String> paths,
                                       String identificationVariable)
        Adds a new JOIN expression to this declaration.
        Parameters:
        joinType - One of the joining types: LEFT JOIN, LEFT OUTER JOIN, INNER JOIN or JOIN
        paths - The join association path expression
        identificationVariable - The new variable defining the join association path
        Returns:
        A new JoinStateObject
      • addJoin

        public JoinStateObject addJoin​(String path,
                                       String identificationVariable)
        Adds a new JOIN expression to this declaration.
        Parameters:
        path - The join association path expression
        identificationVariable - The new variable defining the join association path
        Returns:
        A new JoinStateObject
      • addJoin

        public JoinStateObject addJoin​(String joinType,
                                       String path,
                                       String identificationVariable)
        Adds a new JOIN expression to this declaration.
        Parameters:
        joinType - One of the joining types: LEFT JOIN, LEFT OUTER JOIN, INNER JOIN or JOIN
        path - The join association path expression
        identificationVariable - The new variable defining the join association path
        Returns:
        A new JoinStateObject
      • addLeftJoin

        public JoinStateObject addLeftJoin​(String path,
                                           String identificationVariable)
        Adds a new LEFT JOIN expression to this declaration.
        Parameters:
        path - The join association path expression
        identificationVariable - The new variable defining the join association path
        Returns:
        A new JoinStateObject
      • addLeftOuterJoin

        public JoinStateObject addLeftOuterJoin​(String path,
                                                String identificationVariable)
        Adds a new LEFT OUTER JOIN expression to this declaration.
        Parameters:
        path - The join association path expression
        identificationVariable - The new variable defining the join association path
        Returns:
        A new JoinStateObject
      • getIdentificationVariable

        public String getIdentificationVariable()
        Returns the identification variable identifying the "root".
        Returns:
        A case insensitive unique identifier declaring the "root" of the declaration
      • getRootPath

        public String getRootPath()
        Returns the "root" object for objects which may not be reachable by navigation.
        Returns:
        The "root" object
      • getRootStateObject

        public StateObject getRootStateObject()
        Returns the StateObject representing the "root" for objects which may not be reachable by navigation.
        Returns:
        The StateObject representing one of the possible valid "root"
      • parseJoin

        public void parseJoin​(String jpqlFragment)
        Parses the given JPQL fragment that should contain a single JOIN expression.
        Parameters:
        jpqlFragment - The portion representing a JOIN expression
      • setExpression

        public void setExpression​(IdentificationVariableDeclaration expression)
        Keeps a reference of the parsed object object, which should only be done when this object is instantiated during the conversion of a parsed JPQL query into StateObjects.
        Parameters:
        expression - The parsed object representing an identification variable declaration
      • setIdentificationVariable

        public void setIdentificationVariable​(String identificationVariable)
        Sets the new identification variable that will range over the "root".
        Parameters:
        identificationVariable - The new identification variable
      • setRootPath

        public void setRootPath​(String root)
        Sets the "root" object for objects which may not be reachable by navigation.
        Parameters:
        root - The "root" object