Save This Page
Home » lucene-3.0.1-src » org.apache.lucene.queryParser.standard.config » [javadoc | source]
    1   package org.apache.lucene.queryParser.standard.config;
    2   
    3   /**
    4    * Licensed to the Apache Software Foundation (ASF) under one or more
    5    * contributor license agreements.  See the NOTICE file distributed with
    6    * this work for additional information regarding copyright ownership.
    7    * The ASF licenses this file to You under the Apache License, Version 2.0
    8    * (the "License"); you may not use this file except in compliance with
    9    * the License.  You may obtain a copy of the License at
   10    *
   11    *     http://www.apache.org/licenses/LICENSE-2.0
   12    *
   13    * Unless required by applicable law or agreed to in writing, software
   14    * distributed under the License is distributed on an "AS IS" BASIS,
   15    * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   16    * See the License for the specific language governing permissions and
   17    * limitations under the License.
   18    */
   19   
   20   import java.text.Collator;
   21   
   22   import org.apache.lucene.queryParser.core.config.QueryConfigHandler;
   23   import org.apache.lucene.queryParser.standard.processors.ParametricRangeQueryNodeProcessor;
   24   import org.apache.lucene.search.TermRangeQuery;
   25   import org.apache.lucene.util.AttributeImpl;
   26   
   27   /**
   28    * This attribute is used by {@link ParametricRangeQueryNodeProcessor} processor
   29    * and must be defined in the {@link QueryConfigHandler}. This attribute tells
   30    * the processor which {@link Collator} should be used for a
   31    * {@link TermRangeQuery} <br/>
   32    * 
   33    * @see org.apache.lucene.queryParser.standard.config.RangeCollatorAttribute
   34    */
   35   public class RangeCollatorAttributeImpl extends AttributeImpl
   36   				implements RangeCollatorAttribute {
   37   
   38     private static final long serialVersionUID = -6804360312723049526L;
   39   
   40     private Collator rangeCollator;
   41   
   42     public RangeCollatorAttributeImpl() {
   43   	  rangeCollator = null; // default value for 2.4
   44     }
   45   
   46     public void setDateResolution(Collator rangeCollator) {
   47       this.rangeCollator = rangeCollator;
   48     }
   49   
   50     public Collator getRangeCollator() {
   51       return this.rangeCollator;
   52     }
   53   
   54     @Override
   55     public void clear() {
   56       throw new UnsupportedOperationException();
   57     }
   58   
   59     @Override
   60     public void copyTo(AttributeImpl target) {
   61       throw new UnsupportedOperationException();
   62     }
   63   
   64     @Override
   65     public boolean equals(Object other) {
   66   
   67       if (other instanceof RangeCollatorAttributeImpl) {
   68       	RangeCollatorAttributeImpl rangeCollatorAttr = (RangeCollatorAttributeImpl) other;
   69   
   70         if (rangeCollatorAttr.rangeCollator == this.rangeCollator
   71             || rangeCollatorAttr.rangeCollator.equals(this.rangeCollator)) {
   72   
   73           return true;
   74   
   75         }
   76   
   77       }
   78   
   79       return false;
   80   
   81     }
   82   
   83     @Override
   84     public int hashCode() {
   85       return (this.rangeCollator == null) ? 0 : this.rangeCollator.hashCode();
   86     }
   87   
   88     @Override
   89     public String toString() {
   90       return "<rangeCollatorAttribute rangeCollator='" + this.rangeCollator
   91           + "'/>";
   92     }
   93   
   94   }

Save This Page
Home » lucene-3.0.1-src » org.apache.lucene.queryParser.standard.config » [javadoc | source]