You are viewing a plain text version of this content. The canonical link for it is here.
Posted to slide-dev@jakarta.apache.org by lu...@apache.org on 2005/03/11 10:48:21 UTC

cvs commit: jakarta-slide/src/stores/org/apache/slide/index/lucene LuceneExpressionFactory.java

luetzkendorf    2005/03/11 01:48:20

  Modified:    src/stores/org/apache/slide/index/lucene
                        LuceneExpressionFactory.java
  Added:       src/stores/org/apache/slide/index/lucene/expressions
                        IsVersionHistoryExpression.java
  Log:
  support for <is-version-history> operator added
  
  Revision  Changes    Path
  1.1                  jakarta-slide/src/stores/org/apache/slide/index/lucene/expressions/IsVersionHistoryExpression.java
  
  Index: IsVersionHistoryExpression.java
  ===================================================================
  /*
   * $Header: /home/cvs/jakarta-slide/src/stores/org/apache/slide/index/lucene/expressions/IsVersionHistoryExpression.java,v 1.1 2005/03/11 09:48:20 luetzkendorf Exp $
   * $Revision: 1.1 $
   * $Date: 2005/03/11 09:48:20 $
   *
   * ====================================================================
   *
   * Copyright 1999-2004 The Apache Software Foundation
   *
   * Licensed under the Apache License, Version 2.0 (the "License");
   * you may not use this file except in compliance with the License.
   * You may obtain a copy of the License at
   *
   *     http://www.apache.org/licenses/LICENSE-2.0
   *
   * Unless required by applicable law or agreed to in writing, software
   * distributed under the License is distributed on an "AS IS" BASIS,
   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   * See the License for the specific language governing permissions and
   * limitations under the License.
   *
   */
  package org.apache.slide.index.lucene.expressions;
  
  import org.apache.lucene.index.Term;
  import org.apache.lucene.search.TermQuery;
  
  import org.apache.slide.content.NodeProperty;
  import org.apache.slide.index.lucene.Index;
  import org.apache.slide.index.lucene.IndexConfiguration;
  
  /**
   * Implements the <code>is-version-history</code> and the <code>not-is-version-history</code>
   * expression. 
   */
  public class IsVersionHistoryExpression extends AbstractLuceneExpression
  {
      public IsVersionHistoryExpression(Index index, boolean negated)
      {
          super(index);
          
          IndexConfiguration config = index.getConfiguration();
          setQuery(new TermQuery(new Term(config.generateFieldName(
                  NodeProperty.DEFAULT_NAMESPACE, "version-history"),
                  "principal")));
          
          if (negated) {
              setQuery(negateQuery(getQuery()));
          }
      }
  }
  
  
  
  1.8       +10 -3     jakarta-slide/src/stores/org/apache/slide/index/lucene/LuceneExpressionFactory.java
  
  Index: LuceneExpressionFactory.java
  ===================================================================
  RCS file: /home/cvs/jakarta-slide/src/stores/org/apache/slide/index/lucene/LuceneExpressionFactory.java,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- LuceneExpressionFactory.java	7 Dec 2004 17:49:57 -0000	1.7
  +++ LuceneExpressionFactory.java	11 Mar 2005 09:48:20 -0000	1.8
  @@ -36,6 +36,7 @@
   import org.apache.slide.index.lucene.expressions.IsCollectionExpression;
   import org.apache.slide.index.lucene.expressions.IsDefinedExpression;
   import org.apache.slide.index.lucene.expressions.IsPrincipalExpression;
  +import org.apache.slide.index.lucene.expressions.IsVersionHistoryExpression;
   import org.apache.slide.index.lucene.expressions.LikeExpression;
   import org.apache.slide.index.lucene.expressions.LtExpression;
   import org.apache.slide.index.lucene.expressions.MergeExpression;
  @@ -249,6 +250,12 @@
           if (operator.equals(Literals.NOT_ISPRINCIPAL)) {
               return new IsPrincipalExpression(this.index, true);
           }
  +        if (operator.equals("is-version-history")) {
  +            return new IsVersionHistoryExpression(index, false);
  +        }
  +        if (operator.equals("not-is-version-history")) {
  +            return new IsVersionHistoryExpression(index, true);
  +        }
           
           Element property = AbstractLuceneExpression.getPropertyElement(e);
           String namespace = property.getNamespaceURI();
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: slide-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: slide-dev-help@jakarta.apache.org