[jboss-cvs] jboss-seam/examples/wiki/src/main/org/jboss/seam/wiki/core/search ...

Christian Bauer christian at hibernate.org
Fri Jul 6 10:38:37 EDT 2007


  User: cbauer  
  Date: 07/07/06 10:38:37

  Modified:    examples/wiki/src/main/org/jboss/seam/wiki/core/search  
                        WikiSearch.java IndexManager.java
  Log:
  Compiles and runs on latest Seam CVS
  
  Revision  Changes    Path
  1.2       +3 -5      jboss-seam/examples/wiki/src/main/org/jboss/seam/wiki/core/search/WikiSearch.java
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: WikiSearch.java
  ===================================================================
  RCS file: /cvsroot/jboss/jboss-seam/examples/wiki/src/main/org/jboss/seam/wiki/core/search/WikiSearch.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -b -r1.1 -r1.2
  --- WikiSearch.java	12 Jun 2007 12:29:59 -0000	1.1
  +++ WikiSearch.java	6 Jul 2007 14:38:37 -0000	1.2
  @@ -3,7 +3,6 @@
   import org.apache.lucene.search.*;
   import org.apache.lucene.search.Filter;
   import org.hibernate.Hibernate;
  -import org.hibernate.Session;
   import org.hibernate.search.FullTextSession;
   import org.hibernate.search.FullTextQuery;
   import org.hibernate.search.bridge.StringBridge;
  @@ -177,8 +176,7 @@
   
           try {
   
  -            FullTextSession ftSession = org.hibernate.search.Search.createFullTextSession(getSession());
  -            FullTextQuery ftQuery = ftSession.createFullTextQuery(mainQuery, indexedEntities);
  +            FullTextQuery ftQuery = getFullTextSession().createFullTextQuery(mainQuery, indexedEntities);
               ftQuery.setFirstResult(page * pageSize).setMaxResults(pageSize);
               totalCount = ftQuery.getResultSize();
               log.debug("total search hits (might be paginated next): " + totalCount);
  @@ -203,9 +201,9 @@
           }
       }
   
  -    private Session getSession() {
  +    private FullTextSession getFullTextSession() {
           restrictedEntityManager.joinTransaction();
  -        return ((Session) ((org.jboss.seam.persistence.EntityManagerProxy) restrictedEntityManager).getDelegate());
  +        return (FullTextSession) restrictedEntityManager.getDelegate();
       }
   
       public void nextPage() {
  
  
  
  1.3       +7 -11     jboss-seam/examples/wiki/src/main/org/jboss/seam/wiki/core/search/IndexManager.java
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: IndexManager.java
  ===================================================================
  RCS file: /cvsroot/jboss/jboss-seam/examples/wiki/src/main/org/jboss/seam/wiki/core/search/IndexManager.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -b -r1.2 -r1.3
  --- IndexManager.java	25 Jun 2007 23:13:53 -0000	1.2
  +++ IndexManager.java	6 Jul 2007 14:38:37 -0000	1.3
  @@ -3,15 +3,12 @@
   import org.apache.lucene.index.IndexReader;
   import org.apache.lucene.index.Term;
   import org.hibernate.ScrollableResults;
  -import org.hibernate.Session;
   import org.hibernate.search.FullTextSession;
  -import org.hibernate.search.Search;
   import org.hibernate.search.store.DirectoryProvider;
  -import org.hibernate.search.util.ContextHelper;
   import org.jboss.seam.Component;
  -import org.jboss.seam.annotations.async.Asynchronous;
   import org.jboss.seam.annotations.Logger;
   import org.jboss.seam.annotations.Name;
  +import org.jboss.seam.annotations.async.Asynchronous;
   import org.jboss.seam.log.Log;
   import org.jboss.seam.wiki.util.Progress;
   
  @@ -51,10 +48,10 @@
               userTx.begin();
   
               EntityManager em = (EntityManager) Component.getInstance("entityManager");
  -            Session session = (Session) em.getDelegate();
  +            FullTextSession ftSession = (FullTextSession)em.getDelegate();
   
               // Delete all documents with "_hibernate_class" term of the selected entity
  -            DirectoryProvider dirProvider = ContextHelper.getSearchFactory(session).getDirectoryProvider(entityClass);
  +            DirectoryProvider dirProvider = ftSession.getSearchFactory().getDirectoryProvider(entityClass);
               IndexReader reader = IndexReader.open(dirProvider.getDirectory());
   
               // TODO: This is using an internal term of HSearch
  @@ -64,7 +61,7 @@
               // Optimize index
               progress.setStatus("Optimizing index");
               log.debug("optimizing index (merging segments)");
  -            Search.createFullTextSession(session).getSearchFactory().optimize(entityClass);
  +            ftSession.getSearchFactory().optimize(entityClass);
   
               userTx.commit();
   
  @@ -73,13 +70,12 @@
   
               // Now re-index with HSearch
               em = (EntityManager) Component.getInstance("entityManager");
  -            session = (Session) em.getDelegate();
  -            FullTextSession ftSession = org.hibernate.search.Search.createFullTextSession(session);
  +            ftSession = (FullTextSession)em.getDelegate();
   
               userTx.begin();
   
               // Use HQL instead of Criteria to eager fetch lazy properties
  -            ScrollableResults cursor = session.createQuery("select o from " + entityClass.getName() + " o fetch all properties").scroll();
  +            ScrollableResults cursor = ftSession.createQuery("select o from " + entityClass.getName() + " o fetch all properties").scroll();
   
               cursor.last();
               int count = cursor.getRowNumber() + 1;
  @@ -92,7 +88,7 @@
                   Object o = cursor.get(0);
                   log.debug("indexing: " + o);
                   ftSession.index(o);
  -                if (i % batchSize == 0) session.clear(); // Clear persistence context for each batch
  +                if (i % batchSize == 0) ftSession.clear(); // Clear persistence context for each batch
   
                   progress.setPercentComplete( (100/count) * i);
                   log.debug("percent of index update complete: " + progress);
  
  
  



More information about the jboss-cvs-commits mailing list