Class EJBQLJoinAppender
- java.lang.Object
-
- org.apache.cayenne.access.translator.ejbql.EJBQLJoinAppender
-
public class EJBQLJoinAppender extends Object
Handles appending joins to the content buffer at a marked position.- Since:
- 3.0
-
-
Field Summary
Fields Modifier and Type Field Description protected EJBQLTranslationContext
context
-
Constructor Summary
Constructors Constructor Description EJBQLJoinAppender(EJBQLTranslationContext context)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
appendInnerJoin(String marker, org.apache.cayenne.access.translator.ejbql.EJBQLTableId lhsId, org.apache.cayenne.access.translator.ejbql.EJBQLTableId rhsId)
protected void
appendJoin(String marker, org.apache.cayenne.access.translator.ejbql.EJBQLTableId lhsId, org.apache.cayenne.access.translator.ejbql.EJBQLTableId rhsId, String semantics)
void
appendOuterJoin(String marker, org.apache.cayenne.access.translator.ejbql.EJBQLTableId lhsId, org.apache.cayenne.access.translator.ejbql.EJBQLTableId rhsId)
String
appendTable(org.apache.cayenne.access.translator.ejbql.EJBQLTableId id)
String
registerReusableJoin(String sourceIdPath, String relationship, String targetId)
Registers a "reusable" join, returning a preexisting ID if the join is already registered.
-
-
-
Field Detail
-
context
protected EJBQLTranslationContext context
-
-
Constructor Detail
-
EJBQLJoinAppender
public EJBQLJoinAppender(EJBQLTranslationContext context)
-
-
Method Detail
-
registerReusableJoin
public String registerReusableJoin(String sourceIdPath, String relationship, String targetId)
Registers a "reusable" join, returning a preexisting ID if the join is already registered. Reusable joins are the implicit inner joins that are added as a result of processing of path expressions in SELECT or WHERE clauses. Note that if an implicit INNER join overlaps with an explicit INNER join, both joins are added to the query.
-
appendInnerJoin
public void appendInnerJoin(String marker, org.apache.cayenne.access.translator.ejbql.EJBQLTableId lhsId, org.apache.cayenne.access.translator.ejbql.EJBQLTableId rhsId)
-
appendOuterJoin
public void appendOuterJoin(String marker, org.apache.cayenne.access.translator.ejbql.EJBQLTableId lhsId, org.apache.cayenne.access.translator.ejbql.EJBQLTableId rhsId)
-
appendJoin
protected void appendJoin(String marker, org.apache.cayenne.access.translator.ejbql.EJBQLTableId lhsId, org.apache.cayenne.access.translator.ejbql.EJBQLTableId rhsId, String semantics)
-
appendTable
public String appendTable(org.apache.cayenne.access.translator.ejbql.EJBQLTableId id)
-
-