Skip to content

Commit 0229d45

Browse files
committed
Translators as stateless services producing immutable TranslatedXyz records
* EJBQL translators
1 parent 482119c commit 0229d45

14 files changed

Lines changed: 48 additions & 47 deletions

cayenne/src/main/java/org/apache/cayenne/access/jdbc/EJBQLAction.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -53,34 +53,34 @@ public EJBQLAction(EJBQLQuery query, SQLActionVisitor actionFactory, DataNode da
5353
@Override
5454
public void performAction(Connection connection, OperationObserver observer) throws Exception {
5555
EJBQLCompiledExpression compiledExpression = query.getExpression(dataNode.getEntityResolver());
56-
EJBQLTranslator translatorFactory = dataNode.getEjbqlTranslator();
56+
EJBQLTranslator translator = dataNode.getEjbqlTranslator();
5757
EJBQLTranslationContext context = new EJBQLTranslationContext(
5858
dataNode.getEntityResolver(),
5959
query,
6060
compiledExpression,
61-
translatorFactory,
61+
translator,
6262
dataNode.getAdapter(),
6363
dataNode.getAdapter().getQuotingStrategy());
6464

6565
compiledExpression.getExpression().visit(new EJBQLBaseVisitor(false) {
6666

6767
@Override
6868
public boolean visitSelect(EJBQLExpression expression) {
69-
EJBQLExpressionVisitor visitor = translatorFactory.getSelectTranslator(context);
69+
EJBQLExpressionVisitor visitor = translator.getSelectTranslator(context);
7070
expression.visit(visitor);
7171
return false;
7272
}
7373

7474
@Override
7575
public boolean visitDelete(EJBQLExpression expression) {
76-
EJBQLExpressionVisitor visitor = translatorFactory.getDeleteTranslator(context);
76+
EJBQLExpressionVisitor visitor = translator.getDeleteTranslator(context);
7777
expression.visit(visitor);
7878
return false;
7979
}
8080

8181
@Override
8282
public boolean visitUpdate(EJBQLExpression expression) {
83-
EJBQLExpressionVisitor visitor = translatorFactory.getUpdateTranslator(context);
83+
EJBQLExpressionVisitor visitor = translator.getUpdateTranslator(context);
8484
expression.visit(visitor);
8585
return false;
8686
}

cayenne/src/main/java/org/apache/cayenne/access/translator/ejbql/EJBQLConditionTranslator.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ protected void addMultiColumnOperand(EJBQLMultiColumnOperand operand) {
7676

7777
@Override
7878
public boolean visitAggregate(EJBQLExpression expression) {
79-
expression.visit(context.getTranslatorFactory().getAggregateColumnTranslator(context));
79+
expression.visit(context.getTranslator().getAggregateColumnTranslator(context));
8080
return false;
8181
}
8282

cayenne/src/main/java/org/apache/cayenne/access/translator/ejbql/EJBQLDbPathTranslator.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ public boolean visitIdentificationVariable(EJBQLExpression expression) {
9797

9898
private void resolveJoin(boolean inner) {
9999

100-
EJBQLJoinAppender joinAppender = context.getTranslatorFactory().getJoinAppender(context);
100+
EJBQLJoinAppender joinAppender = context.getTranslator().getJoinAppender(context);
101101

102102
// TODO: andrus 1/6/2007 - conflict with object path naming... maybe
103103
// 'registerReusableJoin' should normalize everything to a db path?
@@ -237,7 +237,7 @@ public void setUsingAliases(boolean usingAliases) {
237237

238238
protected void resolveJoin() {
239239

240-
EJBQLJoinAppender joinAppender = context.getTranslatorFactory().getJoinAppender(context);
240+
EJBQLJoinAppender joinAppender = context.getTranslator().getJoinAppender(context);
241241

242242
String newPath = idPath + '.' + lastPathComponent;
243243
String oldPath = joinAppender.registerReusableJoin(idPath, lastPathComponent, newPath);

cayenne/src/main/java/org/apache/cayenne/access/translator/ejbql/EJBQLDeleteTranslator.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,14 +43,14 @@ public boolean visitDelete(EJBQLExpression expression) {
4343
@Override
4444
public boolean visitFrom(EJBQLExpression expression, int finishedChildIndex) {
4545
context.append(" FROM");
46-
expression.visit(context.getTranslatorFactory().getFromTranslator(context));
46+
expression.visit(context.getTranslator().getFromTranslator(context));
4747
return false;
4848
}
4949

5050
@Override
5151
public boolean visitWhere(EJBQLExpression expression) {
5252
context.append(" WHERE");
53-
expression.visit(context.getTranslatorFactory().getConditionTranslator(context));
53+
expression.visit(context.getTranslator().getConditionTranslator(context));
5454
return false;
5555
}
5656
}

cayenne/src/main/java/org/apache/cayenne/access/translator/ejbql/EJBQLFromTranslator.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ public class EJBQLFromTranslator extends EJBQLBaseVisitor {
3535
public EJBQLFromTranslator(EJBQLTranslationContext context) {
3636
super(true);
3737
this.context = context;
38-
this.joinAppender = context.getTranslatorFactory().getJoinAppender(context);
38+
this.joinAppender = context.getTranslator().getJoinAppender(context);
3939
}
4040

4141
@Override

cayenne/src/main/java/org/apache/cayenne/access/translator/ejbql/EJBQLGroupByTranslator.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ public boolean visitIdentifier(EJBQLExpression expression) {
5050
context.append(',');
5151
}
5252

53-
expression.visit(context.getTranslatorFactory().getIdentifierColumnsTranslator(context));
53+
expression.visit(context.getTranslator().getIdentifierColumnsTranslator(context));
5454
return false;
5555
}
5656

cayenne/src/main/java/org/apache/cayenne/access/translator/ejbql/EJBQLIdentifierColumnsTranslator.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,7 @@ public boolean visitAttribute(AttributeProperty property) {
100100

101101
if (marker == null) {
102102
marker = EJBQLJoinAppender.makeJoinTailMarker(idVar);
103-
joinAppender = context.getTranslatorFactory().getJoinAppender(context);
103+
joinAppender = context.getTranslator().getJoinAppender(context);
104104
}
105105

106106
DbRelationship dr = (DbRelationship) pathPart;

cayenne/src/main/java/org/apache/cayenne/access/translator/ejbql/EJBQLJoinAppender.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -256,7 +256,7 @@ public String appendTable(EJBQLTableId id) {
256256
context.pushMarker(context.makeEntityQualifierMarker(), false);
257257

258258
ejbqlQualifier.visit(context
259-
.getTranslatorFactory()
259+
.getTranslator()
260260
.getConditionTranslator(context));
261261

262262
context.popMarker();

cayenne/src/main/java/org/apache/cayenne/access/translator/ejbql/EJBQLOrderByTranslator.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ public boolean visitDescending(EJBQLExpression expression) {
5252

5353
@Override
5454
public boolean visitAggregate(EJBQLExpression expression) {
55-
expression.visit(context.getTranslatorFactory().getAggregateColumnTranslator(context));
55+
expression.visit(context.getTranslator().getAggregateColumnTranslator(context));
5656
return false;
5757
}
5858

cayenne/src/main/java/org/apache/cayenne/access/translator/ejbql/EJBQLPathTranslator.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,7 @@ protected void resolveLastPathComponent(String pathComponent) {
121121

122122
protected void resolveJoin() {
123123

124-
EJBQLJoinAppender joinAppender = context.getTranslatorFactory().getJoinAppender(context);
124+
EJBQLJoinAppender joinAppender = context.getTranslator().getJoinAppender(context);
125125

126126
String newPath = idPath + '.' + lastPathComponent;
127127
String oldPath = joinAppender.registerReusableJoin(idPath, lastPathComponent, newPath);

0 commit comments

Comments
 (0)