Revision 46050 trunk/org.gvsig.desktop/org.gvsig.desktop.library/org.gvsig.expressionevaluator/org.gvsig.expressionevaluator.lib/org.gvsig.expressionevaluator.lib.impl/src/main/java/org/gvsig/expressionevaluator/impl/DefaultExpressionBuilder.java
DefaultExpressionBuilder.java | ||
---|---|---|
9 | 9 |
import java.util.Date; |
10 | 10 |
import java.util.HashSet; |
11 | 11 |
import java.util.List; |
12 |
import java.util.Map; |
|
12 | 13 |
import java.util.Objects; |
13 | 14 |
import java.util.Set; |
14 | 15 |
import org.apache.commons.lang3.StringUtils; |
... | ... | |
26 | 27 |
import org.gvsig.tools.ToolsLocator; |
27 | 28 |
import org.gvsig.tools.dataTypes.Coercion; |
28 | 29 |
import org.gvsig.tools.dataTypes.DataTypesManager; |
30 |
import org.gvsig.tools.util.PropertiesSupportHelper; |
|
29 | 31 |
|
30 | 32 |
@SuppressWarnings({"UseSpecificCatch" ,"OverridableMethodCallInConstructor"}) |
31 | 33 |
public class DefaultExpressionBuilder implements ExpressionBuilder { |
... | ... | |
59 | 61 |
private static final String FORMAT_OPERATOR_MULT = "({0} * {1})"; |
60 | 62 |
private static final String FORMAT_OPERATOR_DIV = "({0} / {1})"; |
61 | 63 |
private static final String FORMAT_OPERATOR_CONCAT = "{0} || {1}"; |
64 |
private final PropertiesSupportHelper propertiesHelper; |
|
62 | 65 |
|
63 | 66 |
public class GroupBase extends AbstractValue implements Group { |
64 | 67 |
|
... | ... | |
634 | 637 |
|
635 | 638 |
public DefaultExpressionBuilder(ExpressionEvaluatorManager manager) { |
636 | 639 |
this.manager = manager; |
640 |
this.propertiesHelper = new PropertiesSupportHelper(); |
|
637 | 641 |
} |
638 | 642 |
|
643 |
@Override |
|
644 |
public Object getProperty(String name) { |
|
645 |
return this.propertiesHelper.getProperty(name); |
|
646 |
} |
|
647 |
|
|
639 | 648 |
@Override |
649 |
public void setProperty(String name, Object value) { |
|
650 |
this.propertiesHelper.setProperty(name, value); |
|
651 |
} |
|
652 |
|
|
653 |
@Override |
|
654 |
public Map<String, Object> getProperties() { |
|
655 |
return this.propertiesHelper.getProperties(); |
|
656 |
} |
|
657 |
|
|
658 |
@Override |
|
659 |
public void setProperties(Class filter, final Object... values) { |
|
660 |
for (int i = 0; i < values.length; i+=2) { |
|
661 |
propertiesHelper.setProperty((String) values[i], values[i+1]); |
|
662 |
} |
|
663 |
this.accept(new Visitor() { |
|
664 |
@Override |
|
665 |
public void visit(Visitable v) { |
|
666 |
for (int i = 0; i < values.length; i+=2) { |
|
667 |
((Value)v).setProperty((String) values[i], values[i+1]); |
|
668 |
} |
|
669 |
} |
|
670 |
}, new ClassVisitorFilter(filter) ); |
|
671 |
} |
|
672 |
|
|
673 |
@Override |
|
640 | 674 |
public Formatter<ExpressionBuilder.Value> formatter() { |
641 | 675 |
if( this.formatter == null ) { |
642 | 676 |
this.formatter = this.manager.getExpressionBuilderFormatter(); |
Also available in: Unified diff