1 package com.indexdata.mkjsf.pazpar2.commands;
\r
3 public class QueryParameter extends CommandParameter {
\r
5 private static final long serialVersionUID = -3649052232241100927L;
\r
6 private String booleanOperator = "AND";
\r
8 public QueryParameter(String name) {
\r
12 public QueryParameter(String name, String operator, String value,
\r
13 Expression... expressions) {
\r
14 super(name, operator, value, expressions);
\r
17 public QueryParameter(String name, String operator, Expression... expressions) {
\r
18 super(name, operator, expressions);
\r
21 public QueryParameter(String name, String operator, String value) {
\r
22 super(name, operator, value);
\r
25 public QueryParameter(String name, String operator, int value) {
\r
26 super(name, operator, value);
\r
29 public void setBooleanOperator (String operator) {
\r
30 this.booleanOperator = operator;
\r
33 public String getValueWithExpressions () {
\r
34 StringBuilder completeValue = new StringBuilder((value==null ? "" : value));
\r
35 boolean first = true;
\r
36 for (Expression expr : expressions) {
\r
37 if (value == null && first) {
\r
39 completeValue.append(expr.toString());
\r
41 completeValue.append(" "+booleanOperator+" " + expr.toString());
\r
44 return completeValue.toString();
\r
47 public QueryParameter copy() {
\r
48 QueryParameter newParam = new QueryParameter(name);
\r
49 newParam.value = this.value;
\r
50 newParam.operator = this.operator;
\r
51 newParam.booleanOperator = this.booleanOperator;
\r
52 for (Expression expr : expressions) {
\r
53 newParam.addExpression(expr.copy());
\r