//# 0 errors, 393 messages
//#
/*
    //#RebuildWebsiteIndexOperation.java:1:1: class: org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation
 * Licensed to the Apache Software Foundation (ASF) under one or more
 *  contributor license agreements.  The ASF licenses this file to You
 * 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.  For additional information regarding
 * copyright in this work, please see the NOTICE file in the top level
 * directory of this distribution.
 */
/* Created on Jul 16, 2003 */
package org.apache.roller.weblogger.business.search.operations;

import java.io.IOException;
import java.text.MessageFormat;
import java.util.Date;
import java.util.Iterator;
import java.util.List;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.lucene.index.IndexReader;
import org.apache.lucene.index.IndexWriter;
import org.apache.lucene.index.Term;
import org.apache.roller.weblogger.WebloggerException;
import org.apache.roller.weblogger.business.search.IndexManagerImpl;
import org.apache.roller.weblogger.business.search.FieldConstants;
import org.apache.roller.weblogger.business.search.IndexUtil;
import org.apache.roller.weblogger.business.Weblogger;
import org.apache.roller.weblogger.business.UserManager;
import org.apache.roller.weblogger.business.WeblogManager;
import org.apache.roller.weblogger.pojos.WeblogEntry;
import org.apache.roller.weblogger.pojos.Weblog;

/**
 * An index operation that rebuilds a given users index (or all indexes).
 * @author Mindaugas Idzelis (min@idzelis.com)
 */
public class RebuildWebsiteIndexOperation extends WriteToIndexOperation {
    
    //~ Static fields/initializers =============================================
    
    private static Log mLogger =
    //#RebuildWebsiteIndexOperation.java:50: method: org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation.org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation__static_init
    //#RebuildWebsiteIndexOperation.java:50: Warning: method not available
    //#    -- call on LogFactory org.apache.commons.logging.LogFactory:getFactory()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation
    //#    method: org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation__static_init
    //#    unanalyzed callee: LogFactory org.apache.commons.logging.LogFactory:getFactory()
    //#RebuildWebsiteIndexOperation.java:50: Warning: method not available
    //#    -- call on Log org.apache.commons.logging.LogFactory:getInstance(Class)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation
    //#    method: org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation__static_init
    //#    unanalyzed callee: Log org.apache.commons.logging.LogFactory:getInstance(Class)
    //#output(org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation__static_init): __Descendant_Table[org/apache/roller/weblogger/business/search/operations/RebuildWebsiteIndexOperation]
    //#output(org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation__static_init): __Dispatch_Table.beginDeleting()Lorg/apache/lucene/index/IndexReader;
    //#output(org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation__static_init): __Dispatch_Table.beginWriting()Lorg/apache/lucene/index/IndexWriter;
    //#output(org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation__static_init): __Dispatch_Table.doRun()V
    //#output(org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation__static_init): __Dispatch_Table.endDeleting()V
    //#output(org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation__static_init): __Dispatch_Table.endWriting()V
    //#output(org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation__static_init): __Dispatch_Table.getDocument(Lorg/apache/roller/weblogger/pojos/WeblogEntry;)Lorg/apache/lucene/document/Document;
    //#output(org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation__static_init): __Dispatch_Table.run()V
    //#output(org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation__static_init): mLogger
    //#output(org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation__static_init): org/apache/roller/weblogger/business/search/operations/IndexOperation.__Descendant_Table[org/apache/roller/weblogger/business/search/operations/RebuildWebsiteIndexOperation]
    //#output(org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation__static_init): org/apache/roller/weblogger/business/search/operations/WriteToIndexOperation.__Descendant_Table[org/apache/roller/weblogger/business/search/operations/RebuildWebsiteIndexOperation]
    //#presumption(org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation__static_init): org.apache.commons.logging.LogFactory:getFactory(...)@50 != null
    //#post(org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation__static_init): __Descendant_Table[org/apache/roller/weblogger/business/search/operations/RebuildWebsiteIndexOperation] == &__Dispatch_Table
    //#post(org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation__static_init): org/apache/roller/weblogger/business/search/operations/IndexOperation.__Descendant_Table[org/apache/roller/weblogger/business/search/operations/RebuildWebsiteIndexOperation] == &__Dispatch_Table
    //#post(org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation__static_init): org/apache/roller/weblogger/business/search/operations/WriteToIndexOperation.__Descendant_Table[org/apache/roller/weblogger/business/search/operations/RebuildWebsiteIndexOperation] == &__Dispatch_Table
    //#post(org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation__static_init): __Dispatch_Table.beginDeleting()Lorg/apache/lucene/index/IndexReader; == &org/apache/roller/weblogger/business/search/operations/IndexOperation.beginDeleting
    //#post(org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation__static_init): __Dispatch_Table.beginWriting()Lorg/apache/lucene/index/IndexWriter; == &org/apache/roller/weblogger/business/search/operations/IndexOperation.beginWriting
    //#post(org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation__static_init): __Dispatch_Table.doRun()V == &doRun
    //#post(org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation__static_init): __Dispatch_Table.endDeleting()V == &org/apache/roller/weblogger/business/search/operations/IndexOperation.endDeleting
    //#post(org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation__static_init): __Dispatch_Table.endWriting()V == &org/apache/roller/weblogger/business/search/operations/IndexOperation.endWriting
    //#post(org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation__static_init): __Dispatch_Table.getDocument(Lorg/apache/roller/weblogger/pojos/WeblogEntry;)Lorg/apache/lucene/document/Document; == &org/apache/roller/weblogger/business/search/operations/IndexOperation.getDocument
    //#post(org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation__static_init): __Dispatch_Table.run()V == &org/apache/roller/weblogger/business/search/operations/WriteToIndexOperation.run
    //#post(org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation__static_init): init'ed(mLogger)
    //#RebuildWebsiteIndexOperation.java:50: end of method: org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation.org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation__static_init
        LogFactory.getFactory().getInstance(RebuildWebsiteIndexOperation.class);
    
    //~ Instance fields ========================================================
    
    private Weblog website;
    private Weblogger roller;
    
    //~ Constructors ===========================================================
    
    /**
     * Create a new operation that will recreate an index.
     *
     * @param website The website to rebuild the index for, or null for all users.
     */
    public RebuildWebsiteIndexOperation(Weblogger roller, IndexManagerImpl mgr, Weblog website) {
        super(mgr);
    //#RebuildWebsiteIndexOperation.java:66: method: void org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation.org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation(Weblogger, IndexManagerImpl, Weblog)
    //#input(void org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation(Weblogger, IndexManagerImpl, Weblog)): mgr
    //#input(void org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation(Weblogger, IndexManagerImpl, Weblog)): roller
    //#input(void org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation(Weblogger, IndexManagerImpl, Weblog)): this
    //#input(void org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation(Weblogger, IndexManagerImpl, Weblog)): website
    //#output(void org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation(Weblogger, IndexManagerImpl, Weblog)): this.manager
    //#output(void org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation(Weblogger, IndexManagerImpl, Weblog)): this.roller
    //#output(void org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation(Weblogger, IndexManagerImpl, Weblog)): this.website
    //#post(void org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation(Weblogger, IndexManagerImpl, Weblog)): this.manager == mgr
    //#post(void org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation(Weblogger, IndexManagerImpl, Weblog)): init'ed(this.manager)
    //#post(void org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation(Weblogger, IndexManagerImpl, Weblog)): this.roller == roller
    //#post(void org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation(Weblogger, IndexManagerImpl, Weblog)): init'ed(this.roller)
    //#post(void org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation(Weblogger, IndexManagerImpl, Weblog)): this.website == website
    //#post(void org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation(Weblogger, IndexManagerImpl, Weblog)): init'ed(this.website)
    //#unanalyzed(void org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation(Weblogger, IndexManagerImpl, Weblog)): Effects-of-calling:org.apache.roller.weblogger.business.search.operations.IndexOperation
        this.roller = roller;
        this.website = website;
    }
    //#RebuildWebsiteIndexOperation.java:69: end of method: void org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation.org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation(Weblogger, IndexManagerImpl, Weblog)
    
    //~ Methods ================================================================
    
    public void doRun() {
        Date start = new Date();
    //#RebuildWebsiteIndexOperation.java:74: method: void org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation.doRun()
    //#RebuildWebsiteIndexOperation.java:74: Warning: suspicious precondition
    //#    the precondition for this.roller.__Tag is not a contiguous range of values
    //#    severity: SUPPRESSED
    //#    class: org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation
    //#    method: void doRun()
    //#    suspicious precondition index: [18]
    //#    Attribs:  Soft
    //#RebuildWebsiteIndexOperation.java:74: Warning: suspicious precondition
    //#    the precondition for this.roller.autoPingManager.__Tag is not a contiguous range of values
    //#    severity: SUPPRESSED
    //#    class: org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation
    //#    method: void doRun()
    //#    suspicious precondition index: [20]
    //#    Attribs:  Soft
    //#RebuildWebsiteIndexOperation.java:74: Warning: suspicious precondition
    //#    the precondition for this.roller.bookmarkManager.__Tag is not a contiguous range of values
    //#    severity: SUPPRESSED
    //#    class: org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation
    //#    method: void doRun()
    //#    suspicious precondition index: [22]
    //#    Attribs:  Soft
    //#RebuildWebsiteIndexOperation.java:74: Warning: suspicious precondition
    //#    the precondition for this.roller.fileManager.__Tag is not a contiguous range of values
    //#    severity: SUPPRESSED
    //#    class: org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation
    //#    method: void doRun()
    //#    suspicious precondition index: [24]
    //#    Attribs:  Soft
    //#RebuildWebsiteIndexOperation.java:74: Warning: suspicious precondition
    //#    the precondition for this.roller.pingQueueManager.__Tag is not a contiguous range of values
    //#    severity: SUPPRESSED
    //#    class: org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation
    //#    method: void doRun()
    //#    suspicious precondition index: [26]
    //#    Attribs:  Soft
    //#RebuildWebsiteIndexOperation.java:74: Warning: suspicious precondition
    //#    the precondition for this.roller.pingTargetManager.__Tag is not a contiguous range of values
    //#    severity: SUPPRESSED
    //#    class: org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation
    //#    method: void doRun()
    //#    suspicious precondition index: [28]
    //#    Attribs:  Soft
    //#RebuildWebsiteIndexOperation.java:74: Warning: suspicious precondition
    //#    the precondition for this.roller.pluginManager.__Tag is not a contiguous range of values
    //#    severity: SUPPRESSED
    //#    class: org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation
    //#    method: void doRun()
    //#    suspicious precondition index: [30]
    //#    Attribs:  Soft
    //#RebuildWebsiteIndexOperation.java:74: Warning: suspicious precondition
    //#    the precondition for this.roller.refererManager.__Tag is not a contiguous range of values
    //#    severity: SUPPRESSED
    //#    class: org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation
    //#    method: void doRun()
    //#    suspicious precondition index: [32]
    //#    Attribs:  Soft
    //#RebuildWebsiteIndexOperation.java:74: Warning: suspicious precondition
    //#    the precondition for this.roller.threadManager.__Tag is not a contiguous range of values
    //#    severity: SUPPRESSED
    //#    class: org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation
    //#    method: void doRun()
    //#    suspicious precondition index: [38]
    //#    Attribs:  Soft
    //#RebuildWebsiteIndexOperation.java:74: Warning: suspicious precondition
    //#    the precondition for this.roller.userManager.__Tag is not a contiguous range of values
    //#    severity: SUPPRESSED
    //#    class: org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation
    //#    method: void doRun()
    //#    suspicious precondition index: [40]
    //#    Attribs:  Soft
    //#RebuildWebsiteIndexOperation.java:74: Warning: suspicious precondition
    //#    the precondition for this.roller.weblogManager.__Tag is not a contiguous range of values
    //#    severity: SUPPRESSED
    //#    class: org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation
    //#    method: void doRun()
    //#    suspicious precondition index: [46]
    //#    Attribs:  Soft
    //#input(void doRun()): "    OR e.summary LIKE ? "._tainted
    //#input(void doRun()): "    OR e.title LIKE ?"._tainted
    //#input(void doRun()): " AND ( e.text LIKE ?"._tainted
    //#input(void doRun()): " AND e.category.id = ?"._tainted
    //#input(void doRun()): " AND e.creator.id = ?"._tainted
    //#input(void doRun()): " AND e.locale like ?"._tainted
    //#input(void doRun()): " AND e.pubTime <= ?"._tainted
    //#input(void doRun()): " AND e.pubTime >= ?"._tainted
    //#input(void doRun()): " AND e.status = ?"._tainted
    //#input(void doRun()): " OR "._tainted
    //#input(void doRun()): " ORDER BY e.pubTime "._tainted
    //#input(void doRun()): " ORDER BY e.updateTime "._tainted
    //#input(void doRun()): " t.name = ?"._tainted
    //#input(void doRun()): "' in '"._tainted
    //#input(void doRun()): "' seconds"._tainted
    //#input(void doRun()): "' secs"._tainted
    //#input(void doRun()): "("._tainted
    //#input(void doRun()): ") "._tainted
    //#input(void doRun()): ") AND "._tainted
    //#input(void doRun()): ","._tainted
    //#input(void doRun()): "."._tainted
    //#input(void doRun()): "="._tainted
    //#input(void doRun()): "ASC "._tainted
    //#input(void doRun()): "Completed rebuilding index for all users in '"._tainted
    //#input(void doRun()): "Completed rebuilding index for website handle: '"._tainted
    //#input(void doRun()): "DESC "._tainted
    //#input(void doRun()): "Fetching property ["._tainted
    //#input(void doRun()): "SELECT e FROM WeblogEntry e JOIN e.tags t WHERE "._tainted
    //#input(void doRun()): "SELECT e FROM WeblogEntry e WHERE "._tainted
    //#input(void doRun()): "]"._tainted
    //#input(void doRun()): "e.website.enabled = ?"._tainted
    //#input(void doRun()): "e.website.id = ?"._tainted
    //#input(void doRun()): "search.index.comments"._tainted
    //#input(void doRun()): __Descendant_Table[org/apache/roller/weblogger/business/search/operations/RebuildWebsiteIndexOperation]
    //#input(void doRun()): __Descendant_Table[others]
    //#input(void doRun()): __Dispatch_Table.beginDeleting()Lorg/apache/lucene/index/IndexReader;
    //#input(void doRun()): __Dispatch_Table.beginWriting()Lorg/apache/lucene/index/IndexWriter;
    //#input(void doRun()): __Dispatch_Table.endDeleting()V
    //#input(void doRun()): __Dispatch_Table.endWriting()V
    //#input(void doRun()): __Dispatch_Table.getDocument(Lorg/apache/roller/weblogger/pojos/WeblogEntry;)Lorg/apache/lucene/document/Document;
    //#input(void doRun()): mLogger
    //#input(void doRun()): org/apache/roller/weblogger/business/BookmarkManager.__Descendant_Table[org/apache/roller/weblogger/business/BookmarkManager]
    //#input(void doRun()): org/apache/roller/weblogger/business/BookmarkManager.__Descendant_Table[org/apache/roller/weblogger/business/jpa/JPABookmarkManagerImpl]
    //#input(void doRun()): org/apache/roller/weblogger/business/BookmarkManager.__Descendant_Table[others]
    //#input(void doRun()): org/apache/roller/weblogger/business/BookmarkManager.__Dispatch_Table.release()V
    //#input(void doRun()): org/apache/roller/weblogger/business/FileManager.__Descendant_Table[org/apache/roller/weblogger/business/FileManagerImpl]
    //#input(void doRun()): org/apache/roller/weblogger/business/FileManager.__Descendant_Table[org/apache/roller/weblogger/business/FileManager]
    //#input(void doRun()): org/apache/roller/weblogger/business/FileManager.__Descendant_Table[others]
    //#input(void doRun()): org/apache/roller/weblogger/business/FileManager.__Dispatch_Table.release()V
    //#input(void doRun()): org/apache/roller/weblogger/business/FileManagerImpl.__Dispatch_Table.release()V
    //#input(void doRun()): org/apache/roller/weblogger/business/UserManager.__Descendant_Table[org/apache/roller/weblogger/business/UserManager]
    //#input(void doRun()): org/apache/roller/weblogger/business/UserManager.__Descendant_Table[org/apache/roller/weblogger/business/jpa/JPAUserManagerImpl]
    //#input(void doRun()): org/apache/roller/weblogger/business/UserManager.__Descendant_Table[others]
    //#input(void doRun()): org/apache/roller/weblogger/business/UserManager.__Dispatch_Table.getWebsite(Ljava/lang/String;)Lorg/apache/roller/weblogger/pojos/Weblog;
    //#input(void doRun()): org/apache/roller/weblogger/business/UserManager.__Dispatch_Table.release()V
    //#input(void doRun()): org/apache/roller/weblogger/business/WeblogManager.__Descendant_Table[org/apache/roller/weblogger/business/WeblogManager]
    //#input(void doRun()): org/apache/roller/weblogger/business/WeblogManager.__Descendant_Table[org/apache/roller/weblogger/business/jpa/JPAWeblogManagerImpl]
    //#input(void doRun()): org/apache/roller/weblogger/business/WeblogManager.__Descendant_Table[others]
    //#input(void doRun()): org/apache/roller/weblogger/business/WeblogManager.__Dispatch_Table.getWeblogEntries(Lorg/apache/roller/weblogger/pojos/Weblog;Lorg/apache/roller/weblogger/pojos/User;Ljava/util/Date;Ljava/util/Date;Ljava/lang/String;Ljava/util/List;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;II)Ljava/util/List;
    //#input(void doRun()): org/apache/roller/weblogger/business/WeblogManager.__Dispatch_Table.release()V
    //#input(void doRun()): org/apache/roller/weblogger/business/Weblogger.__Descendant_Table[org/apache/roller/weblogger/business/WebloggerImpl]
    //#input(void doRun()): org/apache/roller/weblogger/business/Weblogger.__Descendant_Table[org/apache/roller/weblogger/business/Weblogger]
    //#input(void doRun()): org/apache/roller/weblogger/business/Weblogger.__Descendant_Table[org/apache/roller/weblogger/business/jpa/JPAWebloggerImpl]
    //#input(void doRun()): org/apache/roller/weblogger/business/Weblogger.__Descendant_Table[others]
    //#input(void doRun()): org/apache/roller/weblogger/business/Weblogger.__Dispatch_Table.getUserManager()Lorg/apache/roller/weblogger/business/UserManager;
    //#input(void doRun()): org/apache/roller/weblogger/business/Weblogger.__Dispatch_Table.getWeblogManager()Lorg/apache/roller/weblogger/business/WeblogManager;
    //#input(void doRun()): org/apache/roller/weblogger/business/Weblogger.__Dispatch_Table.release()V
    //#input(void doRun()): org/apache/roller/weblogger/business/WebloggerImpl.__Dispatch_Table.getUserManager()Lorg/apache/roller/weblogger/business/UserManager;
    //#input(void doRun()): org/apache/roller/weblogger/business/WebloggerImpl.__Dispatch_Table.getWeblogManager()Lorg/apache/roller/weblogger/business/WeblogManager;
    //#input(void doRun()): org/apache/roller/weblogger/business/WebloggerImpl.__Dispatch_Table.release()V
    //#input(void doRun()): org/apache/roller/weblogger/business/WebloggerImpl.log
    //#input(void doRun()): org/apache/roller/weblogger/business/jpa/JPAAutoPingManagerImpl.__Dispatch_Table.release()V
    //#input(void doRun()): org/apache/roller/weblogger/business/jpa/JPABookmarkManagerImpl.__Dispatch_Table.release()V
    //#input(void doRun()): org/apache/roller/weblogger/business/jpa/JPAPersistenceStrategy.__Descendant_Table[org/apache/roller/weblogger/business/jpa/JPAPersistenceStrategy]
    //#input(void doRun()): org/apache/roller/weblogger/business/jpa/JPAPersistenceStrategy.__Descendant_Table[others]
    //#input(void doRun()): org/apache/roller/weblogger/business/jpa/JPAPersistenceStrategy.__Dispatch_Table.getDynamicQuery(Ljava/lang/String;)Ljavax/persistence/Query;
    //#input(void doRun()): org/apache/roller/weblogger/business/jpa/JPAPersistenceStrategy.__Dispatch_Table.getNamedQuery(Ljava/lang/String;)Ljavax/persistence/Query;
    //#input(void doRun()): org/apache/roller/weblogger/business/jpa/JPAPersistenceStrategy.__Dispatch_Table.load(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Object;
    //#input(void doRun()): org/apache/roller/weblogger/business/jpa/JPAPersistenceStrategy.__Dispatch_Table.release()V
    //#input(void doRun()): org/apache/roller/weblogger/business/jpa/JPAPersistenceStrategy.javax.persistence.FlushModeType.COMMIT
    //#input(void doRun()): org/apache/roller/weblogger/business/jpa/JPAPingQueueManagerImpl.__Dispatch_Table.release()V
    //#input(void doRun()): org/apache/roller/weblogger/business/jpa/JPAPingTargetManagerImpl.__Dispatch_Table.release()V
    //#input(void doRun()): org/apache/roller/weblogger/business/jpa/JPARefererManagerImpl.__Dispatch_Table.release()V
    //#input(void doRun()): org/apache/roller/weblogger/business/jpa/JPAThreadManagerImpl.__Dispatch_Table.release()V
    //#input(void doRun()): org/apache/roller/weblogger/business/jpa/JPAUserManagerImpl.__Dispatch_Table.getWebsite(Ljava/lang/String;)Lorg/apache/roller/weblogger/pojos/Weblog;
    //#input(void doRun()): org/apache/roller/weblogger/business/jpa/JPAUserManagerImpl.__Dispatch_Table.release()V
    //#input(void doRun()): org/apache/roller/weblogger/business/jpa/JPAWeblogManagerImpl.__Descendant_Table[org/apache/roller/weblogger/business/jpa/JPAWeblogManagerImpl]
    //#input(void doRun()): org/apache/roller/weblogger/business/jpa/JPAWeblogManagerImpl.__Descendant_Table[others]
    //#input(void doRun()): org/apache/roller/weblogger/business/jpa/JPAWeblogManagerImpl.__Dispatch_Table.getRootWeblogCategory(Lorg/apache/roller/weblogger/pojos/Weblog;)Lorg/apache/roller/weblogger/pojos/WeblogCategory;
    //#input(void doRun()): org/apache/roller/weblogger/business/jpa/JPAWeblogManagerImpl.__Dispatch_Table.getWeblogCategoryByPath(Lorg/apache/roller/weblogger/pojos/Weblog;Ljava/lang/String;)Lorg/apache/roller/weblogger/pojos/WeblogCategory;
    //#input(void doRun()): org/apache/roller/weblogger/business/jpa/JPAWeblogManagerImpl.__Dispatch_Table.getWeblogCategoryByPath(Lorg/apache/roller/weblogger/pojos/Weblog;Lorg/apache/roller/weblogger/pojos/WeblogCategory;Ljava/lang/String;)Lorg/apache/roller/weblogger/pojos/WeblogCategory;
    //#input(void doRun()): org/apache/roller/weblogger/business/jpa/JPAWeblogManagerImpl.__Dispatch_Table.getWeblogEntries(Lorg/apache/roller/weblogger/pojos/Weblog;Lorg/apache/roller/weblogger/pojos/User;Ljava/util/Date;Ljava/util/Date;Ljava/lang/String;Ljava/util/List;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;II)Ljava/util/List;
    //#input(void doRun()): org/apache/roller/weblogger/business/jpa/JPAWeblogManagerImpl.__Dispatch_Table.release()V
    //#input(void doRun()): org/apache/roller/weblogger/business/jpa/JPAWeblogManagerImpl.java.lang.Boolean.TRUE
    //#input(void doRun()): org/apache/roller/weblogger/business/jpa/JPAWebloggerImpl.__Dispatch_Table.getUserManager()Lorg/apache/roller/weblogger/business/UserManager;
    //#input(void doRun()): org/apache/roller/weblogger/business/jpa/JPAWebloggerImpl.__Dispatch_Table.getWeblogManager()Lorg/apache/roller/weblogger/business/WeblogManager;
    //#input(void doRun()): org/apache/roller/weblogger/business/jpa/JPAWebloggerImpl.__Dispatch_Table.release()V
    //#input(void doRun()): org/apache/roller/weblogger/business/pings/AutoPingManager.__Descendant_Table[org/apache/roller/weblogger/business/jpa/JPAAutoPingManagerImpl]
    //#input(void doRun()): org/apache/roller/weblogger/business/pings/AutoPingManager.__Descendant_Table[org/apache/roller/weblogger/business/pings/AutoPingManager]
    //#input(void doRun()): org/apache/roller/weblogger/business/pings/AutoPingManager.__Descendant_Table[others]
    //#input(void doRun()): org/apache/roller/weblogger/business/pings/AutoPingManager.__Dispatch_Table.release()V
    //#input(void doRun()): org/apache/roller/weblogger/business/pings/PingQueueManager.__Descendant_Table[org/apache/roller/weblogger/business/jpa/JPAPingQueueManagerImpl]
    //#input(void doRun()): org/apache/roller/weblogger/business/pings/PingQueueManager.__Descendant_Table[org/apache/roller/weblogger/business/pings/PingQueueManager]
    //#input(void doRun()): org/apache/roller/weblogger/business/pings/PingQueueManager.__Descendant_Table[others]
    //#input(void doRun()): org/apache/roller/weblogger/business/pings/PingQueueManager.__Dispatch_Table.release()V
    //#input(void doRun()): org/apache/roller/weblogger/business/pings/PingTargetManager.__Descendant_Table[org/apache/roller/weblogger/business/jpa/JPAPingTargetManagerImpl]
    //#input(void doRun()): org/apache/roller/weblogger/business/pings/PingTargetManager.__Descendant_Table[org/apache/roller/weblogger/business/pings/PingTargetManager]
    //#input(void doRun()): org/apache/roller/weblogger/business/pings/PingTargetManager.__Descendant_Table[others]
    //#input(void doRun()): org/apache/roller/weblogger/business/pings/PingTargetManager.__Dispatch_Table.release()V
    //#input(void doRun()): org/apache/roller/weblogger/business/plugins/PluginManager.__Descendant_Table[org/apache/roller/weblogger/business/plugins/PluginManagerImpl]
    //#input(void doRun()): org/apache/roller/weblogger/business/plugins/PluginManager.__Descendant_Table[org/apache/roller/weblogger/business/plugins/PluginManager]
    //#input(void doRun()): org/apache/roller/weblogger/business/plugins/PluginManager.__Descendant_Table[others]
    //#input(void doRun()): org/apache/roller/weblogger/business/plugins/PluginManager.__Dispatch_Table.release()V
    //#input(void doRun()): org/apache/roller/weblogger/business/plugins/PluginManagerImpl.__Dispatch_Table.release()V
    //#input(void doRun()): org/apache/roller/weblogger/business/referrers/RefererManager.__Descendant_Table[org/apache/roller/weblogger/business/jpa/JPARefererManagerImpl]
    //#input(void doRun()): org/apache/roller/weblogger/business/referrers/RefererManager.__Descendant_Table[org/apache/roller/weblogger/business/referrers/RefererManager]
    //#input(void doRun()): org/apache/roller/weblogger/business/referrers/RefererManager.__Descendant_Table[others]
    //#input(void doRun()): org/apache/roller/weblogger/business/referrers/RefererManager.__Dispatch_Table.release()V
    //#input(void doRun()): org/apache/roller/weblogger/business/runnable/ThreadManager.__Descendant_Table[org/apache/roller/weblogger/business/jpa/JPAThreadManagerImpl]
    //#input(void doRun()): org/apache/roller/weblogger/business/runnable/ThreadManager.__Descendant_Table[org/apache/roller/weblogger/business/runnable/ThreadManagerImpl]
    //#input(void doRun()): org/apache/roller/weblogger/business/runnable/ThreadManager.__Descendant_Table[org/apache/roller/weblogger/business/runnable/ThreadManager]
    //#input(void doRun()): org/apache/roller/weblogger/business/runnable/ThreadManager.__Descendant_Table[others]
    //#input(void doRun()): org/apache/roller/weblogger/business/runnable/ThreadManager.__Dispatch_Table.release()V
    //#input(void doRun()): org/apache/roller/weblogger/business/runnable/ThreadManagerImpl.__Dispatch_Table.release()V
    //#input(void doRun()): org/apache/roller/weblogger/business/search/IndexManagerImpl.__Descendant_Table[org/apache/roller/weblogger/business/search/IndexManagerImpl]
    //#input(void doRun()): org/apache/roller/weblogger/business/search/IndexManagerImpl.__Descendant_Table[others]
    //#input(void doRun()): org/apache/roller/weblogger/business/search/IndexManagerImpl.__Dispatch_Table.getFSDirectory(Z)Lorg/apache/lucene/store/Directory;
    //#input(void doRun()): org/apache/roller/weblogger/business/search/IndexManagerImpl.__Dispatch_Table.getIndexDirectory()Lorg/apache/lucene/store/Directory;
    //#input(void doRun()): org/apache/roller/weblogger/business/search/IndexManagerImpl.mLogger
    //#input(void doRun()): org/apache/roller/weblogger/business/search/operations/IndexOperation.mLogger
    //#input(void doRun()): org/apache/roller/weblogger/config/WebloggerConfig.config
    //#input(void doRun()): org/apache/roller/weblogger/config/WebloggerConfig.log
    //#input(void doRun()): this
    //#input(void doRun()): this.__Tag
    //#input(void doRun()): this.manager
    //#input(void doRun()): this.manager.__Tag
    //#input(void doRun()): this.manager.fRAMindex
    //#input(void doRun()): this.manager.indexDir
    //#input(void doRun()): this.manager.useRAMIndex
    //#input(void doRun()): this.reader
    //#input(void doRun()): this.roller
    //#input(void doRun()): this.roller.__Tag
    //#input(void doRun()): this.roller.autoPingManager
    //#input(void doRun()): this.roller.autoPingManager.__Tag
    //#input(void doRun()): this.roller.bookmarkManager
    //#input(void doRun()): this.roller.bookmarkManager.__Tag
    //#input(void doRun()): this.roller.fileManager
    //#input(void doRun()): this.roller.fileManager.__Tag
    //#input(void doRun()): this.roller.pingQueueManager
    //#input(void doRun()): this.roller.pingQueueManager.__Tag
    //#input(void doRun()): this.roller.pingTargetManager
    //#input(void doRun()): this.roller.pingTargetManager.__Tag
    //#input(void doRun()): this.roller.pluginManager
    //#input(void doRun()): this.roller.pluginManager.__Tag
    //#input(void doRun()): this.roller.refererManager
    //#input(void doRun()): this.roller.refererManager.__Tag
    //#input(void doRun()): this.roller.strategy
    //#input(void doRun()): this.roller.strategy.__Tag
    //#input(void doRun()): this.roller.strategy.threadLocalEntityManager
    //#input(void doRun()): this.roller.threadManager
    //#input(void doRun()): this.roller.threadManager.__Tag
    //#input(void doRun()): this.roller.userManager
    //#input(void doRun()): this.roller.userManager.__Tag
    //#input(void doRun()): this.roller.userManager.strategy
    //#input(void doRun()): this.roller.userManager.strategy.__Tag
    //#input(void doRun()): this.roller.userManager.strategy.emf
    //#input(void doRun()): this.roller.userManager.strategy.threadLocalEntityManager
    //#input(void doRun()): this.roller.weblogManager
    //#input(void doRun()): this.roller.weblogManager.__Tag
    //#input(void doRun()): this.roller.weblogManager.strategy
    //#input(void doRun()): this.roller.weblogManager.strategy.__Tag
    //#input(void doRun()): this.roller.weblogManager.strategy.emf
    //#input(void doRun()): this.roller.weblogManager.strategy.threadLocalEntityManager
    //#input(void doRun()): this.website
    //#input(void doRun()): this.writer
    //#output(void doRun()): new IndexWriter(beginWriting#1) num objects
    //#output(void doRun()): this.reader
    //#output(void doRun()): this.website
    //#output(void doRun()): this.writer
    //#new obj(void doRun()): new IndexWriter(beginWriting#1)
    //#pre[1] (void doRun()): mLogger != null
    //#pre[3] (void doRun()): init'ed(this.website)
    //#pre[2] (void doRun()): (soft) init'ed(this.reader)
    //#pre[4] (void doRun()): (soft) init'ed(this.writer)
    //#pre[5] (void doRun()): (soft) org/apache/roller/weblogger/business/WebloggerImpl.log != null
    //#pre[6] (void doRun()): (soft) org/apache/roller/weblogger/business/search/IndexManagerImpl.mLogger != null
    //#pre[7] (void doRun()): (soft) org/apache/roller/weblogger/business/search/operations/IndexOperation.mLogger != null
    //#pre[8] (void doRun()): (soft) org/apache/roller/weblogger/config/WebloggerConfig.config != null
    //#pre[9] (void doRun()): (soft) org/apache/roller/weblogger/config/WebloggerConfig.log != null
    //#pre[11] (void doRun()): (soft) this.__Tag == org/apache/roller/weblogger/business/search/operations/RebuildWebsiteIndexOperation
    //#pre[12] (void doRun()): (soft) this.manager != null
    //#pre[13] (void doRun()): (soft) this.manager.__Tag == org/apache/roller/weblogger/business/search/IndexManagerImpl
    //#pre[14] (void doRun()): (soft) init'ed(this.manager.fRAMindex)
    //#pre[15] (void doRun()): (soft) init'ed(this.manager.indexDir)
    //#pre[16] (void doRun()): (soft) init'ed(this.manager.useRAMIndex)
    //#pre[17] (void doRun()): (soft) this.roller != null
    //#pre[18] (void doRun()): (soft) this.roller.__Tag in {org/apache/roller/weblogger/business/Weblogger, org/apache/roller/weblogger/business/WebloggerImpl, org/apache/roller/weblogger/business/jpa/JPAWebloggerImpl}
    //#pre[19] (void doRun()): (soft) this.roller.autoPingManager != null
    //#pre[20] (void doRun()): (soft) this.roller.autoPingManager.__Tag in {org/apache/roller/weblogger/business/jpa/JPAAutoPingManagerImpl, org/apache/roller/weblogger/business/pings/AutoPingManager}
    //#pre[21] (void doRun()): (soft) this.roller.bookmarkManager != null
    //#pre[22] (void doRun()): (soft) this.roller.bookmarkManager.__Tag in {org/apache/roller/weblogger/business/BookmarkManager, org/apache/roller/weblogger/business/jpa/JPABookmarkManagerImpl}
    //#pre[23] (void doRun()): (soft) this.roller.fileManager != null
    //#pre[24] (void doRun()): (soft) this.roller.fileManager.__Tag in {org/apache/roller/weblogger/business/FileManager, org/apache/roller/weblogger/business/FileManagerImpl}
    //#pre[25] (void doRun()): (soft) this.roller.pingQueueManager != null
    //#pre[26] (void doRun()): (soft) this.roller.pingQueueManager.__Tag in {org/apache/roller/weblogger/business/jpa/JPAPingQueueManagerImpl, org/apache/roller/weblogger/business/pings/PingQueueManager}
    //#pre[27] (void doRun()): (soft) this.roller.pingTargetManager != null
    //#pre[28] (void doRun()): (soft) this.roller.pingTargetManager.__Tag in {org/apache/roller/weblogger/business/jpa/JPAPingTargetManagerImpl, org/apache/roller/weblogger/business/pings/PingTargetManager}
    //#pre[29] (void doRun()): (soft) this.roller.pluginManager != null
    //#pre[30] (void doRun()): (soft) this.roller.pluginManager.__Tag in {org/apache/roller/weblogger/business/plugins/PluginManager, org/apache/roller/weblogger/business/plugins/PluginManagerImpl}
    //#pre[31] (void doRun()): (soft) this.roller.refererManager != null
    //#pre[32] (void doRun()): (soft) this.roller.refererManager.__Tag in {org/apache/roller/weblogger/business/jpa/JPARefererManagerImpl, org/apache/roller/weblogger/business/referrers/RefererManager}
    //#pre[37] (void doRun()): (soft) this.roller.threadManager != null
    //#pre[38] (void doRun()): (soft) this.roller.threadManager.__Tag in {org/apache/roller/weblogger/business/jpa/JPAThreadManagerImpl, org/apache/roller/weblogger/business/runnable/ThreadManager, org/apache/roller/weblogger/business/runnable/ThreadManagerImpl}
    //#pre[39] (void doRun()): (soft) this.roller.userManager != null
    //#pre[40] (void doRun()): (soft) this.roller.userManager.__Tag in {org/apache/roller/weblogger/business/UserManager, org/apache/roller/weblogger/business/jpa/JPAUserManagerImpl}
    //#pre[41] (void doRun()): (soft) this.roller.userManager.strategy != null
    //#pre[42] (void doRun()): (soft) this.roller.userManager.strategy.__Tag == org/apache/roller/weblogger/business/jpa/JPAPersistenceStrategy
    //#pre[43] (void doRun()): (soft) this.roller.userManager.strategy.emf != null
    //#pre[44] (void doRun()): (soft) this.roller.userManager.strategy.threadLocalEntityManager != null
    //#pre[45] (void doRun()): (soft) this.roller.weblogManager != null
    //#pre[46] (void doRun()): (soft) this.roller.weblogManager.__Tag in {org/apache/roller/weblogger/business/WeblogManager, org/apache/roller/weblogger/business/jpa/JPAWeblogManagerImpl}
    //#presumption(void doRun()): java.util.Iterator:next(...)@134 != null
    //#presumption(void doRun()): javax.persistence.Query:getResultList(...)@645 != null
    //#presumption(void doRun()): weblogManager.__Tag@113 == org/apache/roller/weblogger/business/jpa/JPAWeblogManagerImpl
    //#presumption(void doRun()): weblogManager.strategy.__Tag@113 == org/apache/roller/weblogger/business/jpa/JPAPersistenceStrategy
    //#presumption(void doRun()): weblogManager.strategy.emf@113 != null
    //#presumption(void doRun()): weblogManager.strategy.threadLocalEntityManager@113 != null
    //#presumption(void doRun()): weblogManager.strategy@113 != null
    //#post(void doRun()): init'ed(this.reader)
    //#post(void doRun()): init'ed(this.website)
    //#post(void doRun()): this.writer == One-of{old this.writer, &new IndexWriter(beginWriting#1)}
    //#post(void doRun()): init'ed(this.writer)
    //#post(void doRun()): new IndexWriter(beginWriting#1) num objects <= 1
    //#unanalyzed(void doRun()): Effects-of-calling:getAnalyzer
    //#unanalyzed(void doRun()): Effects-of-calling:java.io.StringReader
    //#unanalyzed(void doRun()): Effects-of-calling:org.apache.lucene.analysis.Analyzer:tokenStream
    //#unanalyzed(void doRun()): Effects-of-calling:org.apache.lucene.analysis.TokenStream:next
    //#unanalyzed(void doRun()): Effects-of-calling:java.lang.Throwable:__curr_excep_obj
    //#unanalyzed(void doRun()): Effects-of-calling:org.apache.lucene.analysis.Token:termText
    //#unanalyzed(void doRun()): Effects-of-calling:org.apache.lucene.index.Term
    //#unanalyzed(void doRun()): Effects-of-calling:java.lang.ThreadLocal:get
    //#unanalyzed(void doRun()): Effects-of-calling:javax.persistence.EntityManagerFactory:createEntityManager
    //#unanalyzed(void doRun()): Effects-of-calling:java.lang.ThreadLocal:set
    //#unanalyzed(void doRun()): Effects-of-calling:javax.persistence.EntityManager:getTransaction
    //#unanalyzed(void doRun()): Effects-of-calling:javax.persistence.EntityTransaction:isActive
    //#unanalyzed(void doRun()): Effects-of-calling:javax.persistence.EntityTransaction:begin
    //#unanalyzed(void doRun()): Effects-of-calling:javax.persistence.EntityManager:find
    //#unanalyzed(void doRun()): Effects-of-calling:getIndexDirectory
    //#unanalyzed(void doRun()): Effects-of-calling:org.apache.lucene.index.IndexReader:open
    //#unanalyzed(void doRun()): Effects-of-calling:org.apache.lucene.index.IndexReader:close
    //#unanalyzed(void doRun()): Effects-of-calling:org.apache.commons.logging.Log:error
    //#unanalyzed(void doRun()): Effects-of-calling:org.apache.lucene.index.IndexWriter
    //#unanalyzed(void doRun()): Effects-of-calling:java.lang.StringBuffer:append
    //#unanalyzed(void doRun()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogCategory:getId
    //#unanalyzed(void doRun()): Effects-of-calling:java.lang.String:equals
    //#unanalyzed(void doRun()): Effects-of-calling:java.util.ArrayList
    //#unanalyzed(void doRun()): Effects-of-calling:java.lang.StringBuffer
    //#unanalyzed(void doRun()): Effects-of-calling:org.apache.roller.weblogger.pojos.Weblog:getId
    //#unanalyzed(void doRun()): Effects-of-calling:java.util.List:add
    //#unanalyzed(void doRun()): Effects-of-calling:java.lang.StringBuilder
    //#unanalyzed(void doRun()): Effects-of-calling:java.lang.StringBuilder:append
    //#unanalyzed(void doRun()): Effects-of-calling:java.lang.StringBuilder:toString
    //#unanalyzed(void doRun()): Effects-of-calling:java.lang.StringBuffer:toString
    //#unanalyzed(void doRun()): Effects-of-calling:javax.persistence.EntityManager:createQuery
    //#unanalyzed(void doRun()): Effects-of-calling:javax.persistence.Query:setFlushMode
    //#unanalyzed(void doRun()): Effects-of-calling:java.util.List:size
    //#unanalyzed(void doRun()): Effects-of-calling:java.util.List:get
    //#unanalyzed(void doRun()): Effects-of-calling:javax.persistence.Query:setParameter
    //#unanalyzed(void doRun()): Effects-of-calling:javax.persistence.Query:setMaxResults
    //#unanalyzed(void doRun()): Effects-of-calling:javax.persistence.Query:getResultList
    //#unanalyzed(void doRun()): Effects-of-calling:java.lang.String:trim
    //#unanalyzed(void doRun()): Effects-of-calling:getRootWeblogCategory
    //#unanalyzed(void doRun()): Effects-of-calling:java.lang.String:startsWith
    //#unanalyzed(void doRun()): Effects-of-calling:javax.persistence.EntityManager:createNamedQuery
    //#unanalyzed(void doRun()): Effects-of-calling:javax.persistence.Query:getSingleResult
    //#unanalyzed(void doRun()): Effects-of-calling:org.apache.commons.lang.StringUtils:isNotEmpty
    //#unanalyzed(void doRun()): Effects-of-calling:getWeblogCategoryByPath
    //#unanalyzed(void doRun()): Effects-of-calling:org.apache.roller.weblogger.pojos.User:getId
    //#unanalyzed(void doRun()): Effects-of-calling:java.util.Date:getTime
    //#unanalyzed(void doRun()): Effects-of-calling:java.sql.Timestamp
    //#unanalyzed(void doRun()): Effects-of-calling:javax.persistence.Query:setFirstResult
    //#unanalyzed(void doRun()): Effects-of-calling:org.apache.commons.logging.Log:debug
    //#unanalyzed(void doRun()): Effects-of-calling:java.util.Properties:getProperty
    //#unanalyzed(void doRun()): Effects-of-calling:java.lang.Boolean
    //#unanalyzed(void doRun()): Effects-of-calling:java.lang.Boolean:booleanValue
    //#unanalyzed(void doRun()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:getComments
    //#unanalyzed(void doRun()): Effects-of-calling:java.util.List:iterator
    //#unanalyzed(void doRun()): Effects-of-calling:java.util.Iterator:hasNext
    //#unanalyzed(void doRun()): Effects-of-calling:java.util.Iterator:next
    //#unanalyzed(void doRun()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntryComment:getContent
    //#unanalyzed(void doRun()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntryComment:getEmail
    //#unanalyzed(void doRun()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntryComment:getName
    //#unanalyzed(void doRun()): Effects-of-calling:org.apache.lucene.document.Document
    //#unanalyzed(void doRun()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:getId
    //#unanalyzed(void doRun()): Effects-of-calling:org.apache.lucene.document.Field:Keyword
    //#unanalyzed(void doRun()): Effects-of-calling:org.apache.lucene.document.Document:add
    //#unanalyzed(void doRun()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:getWebsite
    //#unanalyzed(void doRun()): Effects-of-calling:org.apache.roller.weblogger.pojos.Weblog:getHandle
    //#unanalyzed(void doRun()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:getAnchor
    //#unanalyzed(void doRun()): Effects-of-calling:org.apache.lucene.document.Field:UnIndexed
    //#unanalyzed(void doRun()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:getCreator
    //#unanalyzed(void doRun()): Effects-of-calling:org.apache.roller.weblogger.pojos.User:getUserName
    //#unanalyzed(void doRun()): Effects-of-calling:org.apache.lucene.document.Field:Text
    //#unanalyzed(void doRun()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:getTitle
    //#unanalyzed(void doRun()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:getText
    //#unanalyzed(void doRun()): Effects-of-calling:org.apache.lucene.document.Field:UnStored
    //#unanalyzed(void doRun()): Effects-of-calling:org.apache.roller.weblogger.util.Utilities:removeHTML
    //#unanalyzed(void doRun()): Effects-of-calling:org.apache.roller.weblogger.util.Utilities:truncateNicely
    //#unanalyzed(void doRun()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:getUpdateTime
    //#unanalyzed(void doRun()): Effects-of-calling:java.sql.Timestamp:toString
    //#unanalyzed(void doRun()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:getPubTime
    //#unanalyzed(void doRun()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:getCategory
    //#unanalyzed(void doRun()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogCategory:getName
    //#unanalyzed(void doRun()): Effects-of-calling:release
    //#unanalyzed(void doRun()): Effects-of-calling:javax.persistence.EntityTransaction:rollback
    //#unanalyzed(void doRun()): Effects-of-calling:javax.persistence.EntityManager:close
    //#unanalyzed(void doRun()): Effects-of-calling:org.apache.lucene.index.IndexWriter:close
    //#unanalyzed(void doRun()): Effects-of-calling:org.apache.lucene.store.FSDirectory:getDirectory
    //#unanalyzed(void doRun()): Effects-of-calling:org.apache.lucene.analysis.standard.StandardAnalyzer
    //#test_vector(void doRun()): this.website: Addr_Set{null}, Inverse{null}
    //#test_vector(void doRun()): java.util.Iterator:hasNext(...)@133: {0}, {1}
        
        // since this operation can be run on a separate thread we must treat
        // the weblog object passed in as a detached object which is proned to
        // lazy initialization problems, so requery for the object now
        if(this.website != null) {
            try {
                UserManager uMgr = roller.getUserManager();
                this.website = uMgr.getWebsite(this.website.getId());
    //#RebuildWebsiteIndexOperation.java:82: Warning: method not available
    //#    -- call on String org.apache.roller.weblogger.pojos.Weblog:getId()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation
    //#    method: void doRun()
    //#    unanalyzed callee: String org.apache.roller.weblogger.pojos.Weblog:getId()
            } catch (WebloggerException ex) {
                mLogger.error("Error getting website object", ex);
    //#RebuildWebsiteIndexOperation.java:84: Warning: method not available
    //#    -- call on void org.apache.commons.logging.Log:error(Object, Throwable)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation
    //#    method: void doRun()
    //#    unanalyzed callee: void org.apache.commons.logging.Log:error(Object, Throwable)
                return;
            }
        }
        
        IndexReader reader = beginDeleting();
        
        try {
            if (reader != null) {
                Term tWebsite = null;
                if (website != null) {
                    tWebsite = IndexUtil.getTerm(
    //#RebuildWebsiteIndexOperation.java:95: Warning: method not available
    //#    -- call on String org.apache.roller.weblogger.pojos.Weblog:getHandle()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation
    //#    method: void doRun()
    //#    unanalyzed callee: String org.apache.roller.weblogger.pojos.Weblog:getHandle()
                            FieldConstants.WEBSITE_HANDLE, website.getHandle());
                }
                if (tWebsite != null) {
                    reader.delete(tWebsite);
    //#RebuildWebsiteIndexOperation.java:99: Warning: method not available
    //#    -- call on int org.apache.lucene.index.IndexReader:delete(Term)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation
    //#    method: void doRun()
    //#    unanalyzed callee: int org.apache.lucene.index.IndexReader:delete(Term)
                } else {
                    Term all =
                            IndexUtil.getTerm(FieldConstants.CONSTANT,
                            FieldConstants.CONSTANT_V);
                    reader.delete(all);
    //#RebuildWebsiteIndexOperation.java:104: Warning: method not available
    //#    -- call on int org.apache.lucene.index.IndexReader:delete(Term)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation
    //#    method: void doRun()
    //#    unanalyzed callee: int org.apache.lucene.index.IndexReader:delete(Term)
                }
            }
        } catch (IOException e) {
            mLogger.info("Problems deleting doc from index", e);
    //#RebuildWebsiteIndexOperation.java:108: Warning: method not available
    //#    -- call on void org.apache.commons.logging.Log:info(Object, Throwable)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation
    //#    method: void doRun()
    //#    unanalyzed callee: void org.apache.commons.logging.Log:info(Object, Throwable)
        } finally {
            endDeleting();
        }
        
        IndexWriter writer = beginWriting();
        
        try {
            if (writer != null) {
                WeblogManager weblogManager = roller.getWeblogManager();
                
                
                List entries = weblogManager .getWeblogEntries(
                        
                        website,                   // website            
                        null,
                        null,                      // startDate
                        null,                      // endDate
                        null,                      // catName
                        null,WeblogEntry.PUBLISHED, // status
                        null,                      // text
                        null,                      // sortby (null means pubTime)
                        null, 
                        null,
                        0, -1);     // offset, length, locale
                for (Iterator wbItr = entries.iterator(); wbItr.hasNext();) {
                    WeblogEntry entry = (WeblogEntry) wbItr.next();
                    writer.addDocument(getDocument(entry));
    //#RebuildWebsiteIndexOperation.java:135: Warning: method not available
    //#    -- call on void org.apache.lucene.index.IndexWriter:addDocument(Document)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation
    //#    method: void doRun()
    //#    unanalyzed callee: void org.apache.lucene.index.IndexWriter:addDocument(Document)
                    mLogger.debug(
    //#RebuildWebsiteIndexOperation.java:136: Warning: method not available
    //#    -- call on Timestamp org.apache.roller.weblogger.pojos.WeblogEntry:getPubTime()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation
    //#    method: void doRun()
    //#    unanalyzed callee: Timestamp org.apache.roller.weblogger.pojos.WeblogEntry:getPubTime()
    //#RebuildWebsiteIndexOperation.java:136: Warning: method not available
    //#    -- call on String org.apache.roller.weblogger.pojos.WeblogEntry:getAnchor()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation
    //#    method: void doRun()
    //#    unanalyzed callee: String org.apache.roller.weblogger.pojos.WeblogEntry:getAnchor()
    //#RebuildWebsiteIndexOperation.java:136: Warning: method not available
    //#    -- call on void org.apache.commons.logging.Log:debug(Object)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation
    //#    method: void doRun()
    //#    unanalyzed callee: void org.apache.commons.logging.Log:debug(Object)
                            MessageFormat.format("Indexed entry {0}: {1}",
                            new Object[] {entry.getPubTime(), entry.getAnchor()}));
                }
                // release the database connection
                roller.release();
            }
        } catch (Exception e) {
            mLogger.error("ERROR adding doc to index", e);
    //#RebuildWebsiteIndexOperation.java:144: Warning: method not available
    //#    -- call on void org.apache.commons.logging.Log:error(Object, Throwable)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation
    //#    method: void doRun()
    //#    unanalyzed callee: void org.apache.commons.logging.Log:error(Object, Throwable)
        } finally {
            endWriting();
            if (roller != null) roller.release();
        }
        
        Date end = new Date();
        double length = (end.getTime() - start.getTime()) / (double) 1000;
        
        if (website == null) {
            mLogger.info(
    //#RebuildWebsiteIndexOperation.java:154: Warning: method not available
    //#    -- call on void org.apache.commons.logging.Log:info(Object)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation
    //#    method: void doRun()
    //#    unanalyzed callee: void org.apache.commons.logging.Log:info(Object)
                    "Completed rebuilding index for all users in '" + length + "' secs");
        } else {
            mLogger.info("Completed rebuilding index for website handle: '" +
    //#RebuildWebsiteIndexOperation.java:157: Warning: method not available
    //#    -- call on String org.apache.roller.weblogger.pojos.Weblog:getHandle()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation
    //#    method: void doRun()
    //#    unanalyzed callee: String org.apache.roller.weblogger.pojos.Weblog:getHandle()
    //#RebuildWebsiteIndexOperation.java:157: Warning: method not available
    //#    -- call on void org.apache.commons.logging.Log:info(Object)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation
    //#    method: void doRun()
    //#    unanalyzed callee: void org.apache.commons.logging.Log:info(Object)
                    website.getHandle() + "' in '" + length + "' seconds");
        }
    }
    //#RebuildWebsiteIndexOperation.java:160: end of method: void org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation.doRun()
}
    //#RebuildWebsiteIndexOperation.java:: end of class: org.apache.roller.weblogger.business.search.operations.RebuildWebsiteIndexOperation
