-
Notifications
You must be signed in to change notification settings - Fork 14
/
PathImpl.java
34 lines (28 loc) · 1.29 KB
/
PathImpl.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
package cz.cvut.kbss.jopa.query.criteria;
import cz.cvut.kbss.jopa.model.metamodel.Attribute;
import cz.cvut.kbss.jopa.model.metamodel.Metamodel;
import cz.cvut.kbss.jopa.model.query.criteria.Path;
import cz.cvut.kbss.jopa.query.criteria.expressions.AbstractPathExpression;
import cz.cvut.kbss.jopa.sessions.CriteriaBuilder;
public class PathImpl<X> extends AbstractPathExpression<X> implements Path<X> {
protected String attributeName;
protected Attribute<?,X> attribute;
public PathImpl(Metamodel metamodel, AbstractPathExpression pathSource, Attribute<?,X> attribute, CriteriaBuilder cb) {
super(attribute.getJavaType(), pathSource, metamodel, cb);
this.attribute = attribute;
this.attributeName = attribute.getName();
}
@Override
public void setExpressionToQuery(StringBuilder query, CriteriaParameterFiller parameterFiller) {
if (this.pathSource != null){
this.pathSource.setExpressionToQuery(query, parameterFiller);
query.append("." + attributeName);
} else {
query.append(attributeName);
}
}
// @Override
// public void setExpressionToQuery(StringBuilder query, CriteriaParameterFiller parameterFiller) {
// this.pathSource.setExpressionToQuery(query, parameterFiller);
// }
}