Author: magnuse
Date: 2006-04-06 16:22:52 +0200 (Thu, 06 Apr 2006)
New Revision: 2737
Modified:
trunk/src/java/no/schibstedsok/front/searchportal/query/transform/SynonymQueryTransformer.java
Log:
Added clone method.
Modified:
trunk/src/java/no/schibstedsok/front/searchportal/query/transform/SynonymQueryTransformer.java
===================================================================
---
trunk/src/java/no/schibstedsok/front/searchportal/query/transform/SynonymQueryTransformer.java
2006-04-06 13:36:43 UTC (rev 2736)
+++
trunk/src/java/no/schibstedsok/front/searchportal/query/transform/SynonymQueryTransformer.java
2006-04-06 14:22:52 UTC (rev 2737)
@@ -12,6 +12,7 @@
import java.util.HashSet;
import java.util.List;
import java.util.Set;
+
import no.schibstedsok.front.searchportal.query.DefaultOperatorClause;
import no.schibstedsok.front.searchportal.query.LeafClause;
import no.schibstedsok.front.searchportal.query.token.TokenPredicate;
@@ -24,15 +25,15 @@
/** Synonym expansion are only performed for clauses matching the
predicates
* contained in predicateNames */
- private final Collection<String> predicateNames = new ArrayList<String>();
+ private Collection<String> predicateNames = new ArrayList<String>();
private Collection<TokenPredicate> predicates = null;
- private final List<LeafClause> leafs = new ArrayList<LeafClause>();
- private final Set<TokenPredicate> matchingPredicates = new
HashSet<TokenPredicate>();
- private final List<LeafClause> expanded = new ArrayList<LeafClause>();
+ private List<LeafClause> leafs = new ArrayList<LeafClause>();
+ private Set<TokenPredicate> matchingPredicates = new
HashSet<TokenPredicate>();
+ private List<LeafClause> expanded = new ArrayList<LeafClause>();
- private final StringBuilder builder = new StringBuilder();
-
+ private StringBuilder builder = new StringBuilder();
+
private boolean fromDefault = false;
public void addPredicateName(final String name) {
@@ -63,8 +64,7 @@
if (isSynonym(builder.toString() + clause.getTerm())) {
builder.append(clause.getTerm());
leafs.add(clause);
- }
- else {
+ } else {
if (!leafs.isEmpty()) {
expandSynonym(leafs, getSynonym(builder.toString()));
expanded.addAll(leafs);
@@ -112,8 +112,7 @@
if (predicates == null) {
predicates = new ArrayList<TokenPredicate>();
for (final String predicateName : predicateNames) {
- final TokenPredicate p =
TokenPredicate.valueOf(predicateName);
- predicates.add(p);
+ predicates.add(TokenPredicate.valueOf(predicateName));
}
}
}
@@ -139,4 +138,15 @@
return null;
}
+
+ public Object clone() throws CloneNotSupportedException {
+ final SynonymQueryTransformer retValue =
(SynonymQueryTransformer)super.clone();
+
+ retValue.predicateNames = predicateNames;
+ retValue.matchingPredicates = new HashSet<TokenPredicate>();
+ retValue.builder = new StringBuilder();
+ retValue.leafs = new ArrayList<LeafClause>();
+
+ return retValue;
+ }
}
_______________________________________________
Kernel-commits mailing list
[email protected]
http://sesat.no/mailman/listinfo/kernel-commits