Java Mailing List Archive

http://www.gg3721.com/

Home » Hibernate Commits List »

[hibernate-commits] Hibernate SVN: r14838 - in
 search/branches/jboss_cache_integration/src/java/org/hibernate/search:
 engine and 1 other directory.

hibernate-commits

2008-07-01


Author LoginPost Reply
Author: navssurtani
Date: 2008-07-01 12:55:24 -0400 (Tue, 01 Jul 2008)
New Revision: 14838

Modified:
 search/branches/jboss_cache_integration/src/java/org/hibernate/search/annotations/ProvidedId.java
 search/branches/jboss_cache_integration/src/java/org/hibernate/search/engine/DocumentBuilder.java
 search/branches/jboss_cache_integration/src/java/org/hibernate/search/engine/DocumentExtractor.java
Log:
Changed DocumentBuilder and @ProvidedId

Modified: search/branches/jboss_cache_integration/src/java/org/hibernate/search/annotations/ProvidedId.java
===================================================================
--- search/branches/jboss_cache_integration/src/java/org/hibernate/search/annotations/ProvidedId.java  2008-07-01 15:06:41 UTC (rev 14837)
+++ search/branches/jboss_cache_integration/src/java/org/hibernate/search/annotations/ProvidedId.java  2008-07-01 16:55:24 UTC (rev 14838)
@@(protected) @@
package org.hibernate.search.annotations;

+import org.hibernate.search.bridge.StringBridge;
+
import java.lang.annotation.*;

/**
@@(protected) @@
{

  String name() default "JBCS_ProvidedId";
-  FieldBridge bridge() default @FieldBridge(impl=org.hibernate.search.bridge.builtin.StringBridge.class);
+  Class<StringBridge> bridge() default StringBridge.class;
}

Modified: search/branches/jboss_cache_integration/src/java/org/hibernate/search/engine/DocumentBuilder.java
===================================================================
--- search/branches/jboss_cache_integration/src/java/org/hibernate/search/engine/DocumentBuilder.java  2008-07-01 15:06:41 UTC (rev 14837)
+++ search/branches/jboss_cache_integration/src/java/org/hibernate/search/engine/DocumentBuilder.java  2008-07-01 16:55:24 UTC (rev 14838)
@@(protected) @@
import org.hibernate.search.bridge.FieldBridge;
import org.hibernate.search.bridge.TwoWayFieldBridge;
import org.hibernate.search.bridge.TwoWayString2FieldBridgeAdaptor;
+import org.hibernate.search.bridge.builtin.StringBridge;
import org.hibernate.search.store.DirectoryProvider;
import org.hibernate.search.store.IndexShardingStrategy;
import org.hibernate.search.util.BinderHelper;
@@(protected) @@
      }
      else
      {
-        idBridge = provided.bridge();
+        idBridge = getProvidedIdBridge();
        idKeywordName = provided.name();
      }
    }
@@(protected) @@
    return getAnalyzer(analyzerAnn, context);
  }

+  private TwoWayFieldBridge getProvidedIdBridge()
+   {
+     return new TwoWayString2FieldBridgeAdaptor(new StringBridge());
+   }
+
+
  private Analyzer getAnalyzer(org.hibernate.search.annotations.Analyzer analyzerAnn, InitContext context)
  {
    Class analyzerClass = analyzerAnn == null ? void.class : analyzerAnn.impl();

Modified: search/branches/jboss_cache_integration/src/java/org/hibernate/search/engine/DocumentExtractor.java
===================================================================
--- search/branches/jboss_cache_integration/src/java/org/hibernate/search/engine/DocumentExtractor.java  2008-07-01 15:06:41 UTC (rev 14837)
+++ search/branches/jboss_cache_integration/src/java/org/hibernate/search/engine/DocumentExtractor.java  2008-07-01 16:55:24 UTC (rev 14838)
@@(protected) @@
* @author Emmanuel Bernard
* @author John Griffin
*/
-public class DocumentExtractor {
-  private final SearchFactoryImplementor searchFactoryImplementor;
-  private final String[] projection;
+public class DocumentExtractor
+{
+  private final SearchFactoryImplementor searchFactoryImplementor;
+  private final String[] projection;

-  public DocumentExtractor(SearchFactoryImplementor searchFactoryImplementor, String... projection) {
-    this.searchFactoryImplementor = searchFactoryImplementor;
-    this.projection = projection;
-  }
+  public DocumentExtractor(SearchFactoryImplementor searchFactoryImplementor, String... projection)
+  {
+    this.searchFactoryImplementor = searchFactoryImplementor;
+    this.projection = projection;
+  }

-  private EntityInfo extract(Document document) {
-    Class clazz = DocumentBuilder.getDocumentClass( document );
-    Serializable id = DocumentBuilder.getDocumentId( searchFactoryImplementor, clazz, document );
-    Object[] projected = null;
-    if ( projection != null && projection.length > 0 ) {
-      projected = DocumentBuilder.getDocumentFields( searchFactoryImplementor, clazz, document, projection );
-    }
-    EntityInfo entityInfo = new EntityInfo( clazz, id, projected );
-    return entityInfo;
-  }
+  private EntityInfo extract(Document document)
+  {
+    Class clazz = DocumentBuilder.getDocumentClass(document);
+    Serializable id = DocumentBuilder.getDocumentId(searchFactoryImplementor, clazz, document);
+    Object[] projected = null;
+    if (projection != null && projection.length > 0)
+    {
+      projected = DocumentBuilder.getDocumentFields(searchFactoryImplementor, clazz, document, projection);
+    }
+    EntityInfo entityInfo = new EntityInfo(clazz, id, projected);
+    return entityInfo;
+  }

-  public EntityInfo extract(Hits hits, int index) throws IOException {
-    Document doc = hits.doc( index );
-    //TODO if we are only looking for score (unlikely), avoid accessing doc (lazy load)
-    EntityInfo entityInfo = extract( doc );
-    Object[] eip = entityInfo.projection;
+  public EntityInfo extract(Hits hits, int index) throws IOException
+  {
+    Document doc = hits.doc(index);
+    //TODO if we are only looking for score (unlikely), avoid accessing doc (lazy load)
+    EntityInfo entityInfo = extract(doc);
+    Object[] entityInfoProjection = entityInfo.projection;    //Navin Surtani changed eip variable to entityInfoProjection.

-    if ( eip != null && eip.length > 0 ) {
-      for (int x = 0; x < projection.length; x++) {
-        if ( ProjectionConstants.SCORE.equals( projection[x] ) ) {
-          eip[x] = hits.score( index );
-        }
-        else if ( ProjectionConstants.ID.equals( projection[x] ) ) {
-          eip[x] = entityInfo.id;
-        }
-        else if ( ProjectionConstants.DOCUMENT.equals( projection[x] ) ) {
-          eip[x] = doc;
-        }
-        else if ( ProjectionConstants.DOCUMENT_ID.equals( projection[x] ) ) {
-          eip[x] = hits.id( index );
-        }
-        else if ( ProjectionConstants.BOOST.equals( projection[x] ) ) {
-          eip[x] = doc.getBoost();
-        }
-        else if ( ProjectionConstants.THIS.equals( projection[x] ) ) {
-          //THIS could be projected more than once
-          //THIS loading delayed to the Loader phase
-          entityInfo.indexesOfThis.add(x);
-        }
-      }
-    }
-    return entityInfo;
-  }
+    if (entityInfoProjection != null && entityInfoProjection.length > 0)
+    {
+      for (int x = 0; x < projection.length; x++)
+      {
+        if (ProjectionConstants.SCORE.equals(projection[x]))
+        {
+          entityInfoProjection[x] = hits.score(index);
+        }
+        else if (ProjectionConstants.ID.equals(projection[x]))
+        {
+          entityInfoProjection[x] = entityInfo.id;
+        }
+        else if (ProjectionConstants.DOCUMENT.equals(projection[x]))
+        {
+          entityInfoProjection[x] = doc;
+        }
+        else if (ProjectionConstants.DOCUMENT_ID.equals(projection[x]))
+        {
+          entityInfoProjection[x] = hits.id(index);
+        }
+        else if (ProjectionConstants.BOOST.equals(projection[x]))
+        {
+          entityInfoProjection[x] = doc.getBoost();
+        }
+        else if (ProjectionConstants.THIS.equals(projection[x]))
+        {
+          //THIS could be projected more than once
+          //THIS loading delayed to the Loader phase
+          entityInfo.indexesOfThis.add(x);
+        }
+      }
+    }
+    return entityInfo;
+  }
}

_______________________________________________
hibernate-commits mailing list
hibernate-commits@(protected)
https://lists.jboss.org/mailman/listinfo/hibernate-commits
©2008 gg3721.com - Jax Systems, LLC, U.S.A.