X-Git-Url: http://jsfdemo.indexdata.com/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fcom%2Findexdata%2Fmkjsf%2Fpazpar2%2Fcommands%2FExpression.java;h=f636f68a7a172abce519b4dccd26bc33fa731922;hb=f532c1d517d573a64accde31220e2ffbbb00354f;hp=3e93e49f2d18cb26ee8e95df0577ebfd31acf31b;hpb=c6430ad85e3b04ea2823df38c15e8473342ff95b;p=mkjsf-moved-to-github.git diff --git a/src/main/java/com/indexdata/mkjsf/pazpar2/commands/Expression.java b/src/main/java/com/indexdata/mkjsf/pazpar2/commands/Expression.java index 3e93e49..f636f68 100644 --- a/src/main/java/com/indexdata/mkjsf/pazpar2/commands/Expression.java +++ b/src/main/java/com/indexdata/mkjsf/pazpar2/commands/Expression.java @@ -2,27 +2,55 @@ package com.indexdata.mkjsf.pazpar2.commands; import java.io.Serializable; -import com.indexdata.mkjsf.pazpar2.commands.Expression; +import org.apache.log4j.Logger; public class Expression implements Serializable { private static final long serialVersionUID = -751704027842027769L; + private static Logger logger = Logger.getLogger(Expression.class); String leftEntity; String operator; String rightEntity; - public Expression (String leftEntity, String operator, String rightEntity) { + String label; + + public Expression (String leftEntity, String operator, String rightEntity, String label) { this.leftEntity = leftEntity; this.operator = operator; this.rightEntity = rightEntity; + this.label = label; + } + + public Expression (String expressionString) { + String[] parts = expressionString.split("[=~]"); + this.leftEntity = parts[0]; + this.operator = expressionString.contains("=") ? "=" : "~"; + this.rightEntity = parts[1]; + this.label=rightEntity; } public Expression copy() { - return new Expression(leftEntity,operator,rightEntity); + logger.trace("Copying " + this.toString()); + return new Expression(leftEntity, operator, rightEntity, label); } public String toString() { return leftEntity + operator + rightEntity; } - + public String getLabel() { + return label; + } + + public String getField () { + return leftEntity; + } + + public String getOperator() { + return operator; + } + + public String getValue() { + return rightEntity; + } + }