//# 8 errors, 1,031 messages
//#
/*
    //#searchindexlistener.java:1:1: class: net.sourceforge.pebble.index.SearchIndexListener
    //#searchindexlistener.java:1:1: method: net.sourceforge.pebble.index.SearchIndexListener.net.sourceforge.pebble.index.SearchIndexListener__static_init
 * Copyright (c) 2003-2006, Simon Brown
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions are met:
 *
 *   - Redistributions of source code must retain the above copyright
 *     notice, this list of conditions and the following disclaimer.
 *
 *   - Redistributions in binary form must reproduce the above copyright
 *     notice, this list of conditions and the following disclaimer in
 *     the documentation and/or other materials provided with the
 *     distribution.
 *
 *   - Neither the name of Pebble nor the names of its contributors may
 *     be used to endorse or promote products derived from this software
 *     without specific prior written permission.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 * POSSIBILITY OF SUCH DAMAGE.
 */
package net.sourceforge.pebble.index;

import net.sourceforge.pebble.domain.BlogEntry;
import net.sourceforge.pebble.api.event.blogentry.BlogEntryEvent;
import net.sourceforge.pebble.api.event.blogentry.BlogEntryListener;

/**
 * Listens to blog entry events and keeps the search index up to date.
 *
 * @author    Simon Brown
 */
public class SearchIndexListener implements BlogEntryListener {
    //#searchindexlistener.java:43: method: void net.sourceforge.pebble.index.SearchIndexListener.net.sourceforge.pebble.index.SearchIndexListener()
    //#searchindexlistener.java:43: end of method: void net.sourceforge.pebble.index.SearchIndexListener.net.sourceforge.pebble.index.SearchIndexListener()

  /**
   * Called when a blog entry has been added.
   *
   * @param event a BlogEntryEvent instance
   */
  public void blogEntryAdded(BlogEntryEvent event) {
    BlogEntry blogEntry = event.getBlogEntry();
    //#searchindexlistener.java:51: method: void net.sourceforge.pebble.index.SearchIndexListener.blogEntryAdded(BlogEntryEvent)
    //#input(void blogEntryAdded(BlogEntryEvent)): event
    //#input(void blogEntryAdded(BlogEntryEvent)): event.__Tag
    //#input(void blogEntryAdded(BlogEntryEvent)): net.sourceforge.pebble.domain.State__static_init.new State(State__static_init#1).__Tag
    //#input(void blogEntryAdded(BlogEntryEvent)): net.sourceforge.pebble.domain.State__static_init.new State(State__static_init#1).name
    //#input(void blogEntryAdded(BlogEntryEvent)): net.sourceforge.pebble.domain.State__static_init.new State(State__static_init#5).__Tag
    //#input(void blogEntryAdded(BlogEntryEvent)): net.sourceforge.pebble.domain.State__static_init.new State(State__static_init#5).name
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/Configuration.__Descendant_Table[net/sourceforge/pebble/Configuration]
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/Configuration.__Descendant_Table[others]
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/Configuration.__Dispatch_Table.getUrl()Ljava/lang/String;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/Configuration.__Dispatch_Table.isVirtualHostingEnabled()Z
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/api/event/blogentry/BlogEntryEvent.__Descendant_Table[net/sourceforge/pebble/api/event/blogentry/BlogEntryEvent]
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/api/event/blogentry/BlogEntryEvent.__Descendant_Table[others]
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/api/event/blogentry/BlogEntryEvent.__Dispatch_Table.getBlogEntry()Lnet/sourceforge/pebble/domain/BlogEntry;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/api/permalink/PermalinkProvider.__Descendant_Table[net/sourceforge/pebble/api/permalink/PermalinkProvider]
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/api/permalink/PermalinkProvider.__Descendant_Table[others]
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/api/permalink/PermalinkProvider.__Dispatch_Table.getPermalink(Lnet/sourceforge/pebble/domain/BlogEntry;)Ljava/lang/String;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/Blog.__Descendant_Table[net/sourceforge/pebble/domain/Blog]
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/Blog.__Descendant_Table[others]
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/Blog.__Dispatch_Table.getId()Ljava/lang/String;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/Blog.__Dispatch_Table.getLuceneAnalyzer()Ljava/lang/String;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/Blog.__Dispatch_Table.getPermalinkProvider()Lnet/sourceforge/pebble/api/permalink/PermalinkProvider;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/Blog.__Dispatch_Table.getRootCategory()Lnet/sourceforge/pebble/domain/Category;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/Blog.__Dispatch_Table.getSearchIndex()Lnet/sourceforge/pebble/index/SearchIndex;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/Blog.__Dispatch_Table.getUrl()Ljava/lang/String;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Descendant_Table[net/sourceforge/pebble/domain/BlogEntry]
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Descendant_Table[others]
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getAllTags()Ljava/util/List;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getAuthor()Ljava/lang/String;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getBlog()Lnet/sourceforge/pebble/domain/Blog;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getBody()Ljava/lang/String;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getCategories()Ljava/util/Set;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getComments()Ljava/util/List;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getContent()Ljava/lang/String;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getDate()Ljava/util/Date;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getId()Ljava/lang/String;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getLocalPermalink()Ljava/lang/String;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getOriginalPermalink()Ljava/lang/String;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getPermalink()Ljava/lang/String;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getState()Lnet/sourceforge/pebble/domain/State;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getTagsAsList()Ljava/util/List;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getTitle()Ljava/lang/String;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getTrackBacks()Ljava/util/List;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getTruncatedContent()Ljava/lang/String;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.isAggregated()Z
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.isPublished()Z
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogManager.__Descendant_Table[net/sourceforge/pebble/domain/BlogManager]
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogManager.__Descendant_Table[others]
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogManager.__Dispatch_Table.isMultiBlog()Z
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogManager.instance
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogManager.instance.__Tag
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogManager.instance.multiBlog
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/Category.__Descendant_Table[net/sourceforge/pebble/domain/Category]
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/Category.__Descendant_Table[others]
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/Category.__Dispatch_Table.getAllTags()Ljava/util/List;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/Category.__Dispatch_Table.getId()Ljava/lang/String;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/Category.__Dispatch_Table.getParent()Lnet/sourceforge/pebble/domain/Category;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/Category.__Dispatch_Table.getTagsAsList()Ljava/util/List;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/Comment.__Descendant_Table[net/sourceforge/pebble/domain/Comment]
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/Comment.__Descendant_Table[others]
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/Comment.__Dispatch_Table.getBody()Ljava/lang/String;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/Comment.__Dispatch_Table.getComments()Ljava/util/List;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/Comment.__Dispatch_Table.getContent()Ljava/lang/String;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/Comment.__Dispatch_Table.getState()Lnet/sourceforge/pebble/domain/State;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/Comment.__Dispatch_Table.isApproved()Z
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/Content.__Descendant_Table[net/sourceforge/pebble/domain/BlogEntry]
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/Content.__Descendant_Table[net/sourceforge/pebble/domain/Comment]
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/Content.__Descendant_Table[net/sourceforge/pebble/domain/Content]
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/Content.__Descendant_Table[net/sourceforge/pebble/domain/PageBasedContent]
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/Content.__Descendant_Table[net/sourceforge/pebble/domain/Response]
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/Content.__Descendant_Table[net/sourceforge/pebble/domain/StaticPage]
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/Content.__Descendant_Table[net/sourceforge/pebble/domain/TrackBack]
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/Content.__Descendant_Table[others]
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/Content.__Dispatch_Table.getContent()Ljava/lang/String;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/PageBasedContent.__Descendant_Table[net/sourceforge/pebble/domain/BlogEntry]
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/PageBasedContent.__Descendant_Table[net/sourceforge/pebble/domain/PageBasedContent]
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/PageBasedContent.__Descendant_Table[net/sourceforge/pebble/domain/StaticPage]
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/PageBasedContent.__Descendant_Table[others]
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/PageBasedContent.__Dispatch_Table.getContent()Ljava/lang/String;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/PageBasedContent.__Dispatch_Table.getLocalPermalink()Ljava/lang/String;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/PageBasedContent.__Dispatch_Table.getOriginalPermalink()Ljava/lang/String;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/PageBasedContent.__Dispatch_Table.getState()Lnet/sourceforge/pebble/domain/State;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/PageBasedContent.__Dispatch_Table.isAggregated()Z
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/Response.__Descendant_Table[net/sourceforge/pebble/domain/Comment]
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/Response.__Descendant_Table[net/sourceforge/pebble/domain/Response]
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/Response.__Descendant_Table[net/sourceforge/pebble/domain/TrackBack]
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/Response.__Descendant_Table[others]
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/Response.__Dispatch_Table.getContent()Ljava/lang/String;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/Response.__Dispatch_Table.getState()Lnet/sourceforge/pebble/domain/State;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/State.APPROVED
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/State.PUBLISHED
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/State.__Descendant_Table[net/sourceforge/pebble/domain/State]
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/State.__Descendant_Table[others]
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/State.__Dispatch_Table.equals(Ljava/lang/Object;)Z
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/State.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/StaticPage.__Descendant_Table[net/sourceforge/pebble/domain/StaticPage]
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/StaticPage.__Descendant_Table[others]
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/StaticPage.__Dispatch_Table.getBlog()Lnet/sourceforge/pebble/domain/Blog;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/StaticPage.__Dispatch_Table.getContent()Ljava/lang/String;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/StaticPage.__Dispatch_Table.getLocalPermalink()Ljava/lang/String;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/StaticPage.__Dispatch_Table.getOriginalPermalink()Ljava/lang/String;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/StaticPage.__Dispatch_Table.getState()Lnet/sourceforge/pebble/domain/State;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/StaticPage.__Dispatch_Table.isAggregated()Z
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/Tag.__Descendant_Table[net/sourceforge/pebble/domain/Tag]
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/Tag.__Descendant_Table[net/sourceforge/pebble/index/IndexedTag]
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/Tag.__Descendant_Table[others]
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/Tag.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/TrackBack.__Descendant_Table[net/sourceforge/pebble/domain/TrackBack]
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/TrackBack.__Descendant_Table[others]
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/TrackBack.__Dispatch_Table.getContent()Ljava/lang/String;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/TrackBack.__Dispatch_Table.getExcerpt()Ljava/lang/String;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/TrackBack.__Dispatch_Table.getState()Lnet/sourceforge/pebble/domain/State;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/domain/TrackBack.__Dispatch_Table.isApproved()Z
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/index/IndexedTag.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/index/SearchIndex.__Descendant_Table[net/sourceforge/pebble/index/SearchIndex]
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/index/SearchIndex.__Descendant_Table[others]
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/index/SearchIndex.__Dispatch_Table.index(Lnet/sourceforge/pebble/domain/BlogEntry;)V
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/index/SearchIndex.__Dispatch_Table.unindex(Lnet/sourceforge/pebble/domain/BlogEntry;)V
    //#input(void blogEntryAdded(BlogEntryEvent)): net/sourceforge/pebble/index/SearchIndex.log
    //#input(void blogEntryAdded(BlogEntryEvent)): this
    //#pre[1] (void blogEntryAdded(BlogEntryEvent)): event != null
    //#pre[2] (void blogEntryAdded(BlogEntryEvent)): event.__Tag == net/sourceforge/pebble/api/event/blogentry/BlogEntryEvent
    //#pre[3] (void blogEntryAdded(BlogEntryEvent)): (soft) net.sourceforge.pebble.domain.State__static_init.new State(State__static_init#1).name != null
    //#pre[4] (void blogEntryAdded(BlogEntryEvent)): (soft) net.sourceforge.pebble.domain.State__static_init.new State(State__static_init#5).name != null
    //#pre[5] (void blogEntryAdded(BlogEntryEvent)): (soft) net/sourceforge/pebble/domain/BlogManager.instance != null
    //#pre[6] (void blogEntryAdded(BlogEntryEvent)): (soft) net/sourceforge/pebble/domain/BlogManager.instance.__Tag == net/sourceforge/pebble/domain/BlogManager
    //#pre[7] (void blogEntryAdded(BlogEntryEvent)): (soft) init'ed(net/sourceforge/pebble/domain/BlogManager.instance.multiBlog)
    //#presumption(void blogEntryAdded(BlogEntryEvent)): blogEntry.blog...__Tag@53 == net/sourceforge/pebble/domain/Blog
    //#presumption(void blogEntryAdded(BlogEntryEvent)): blogEntry.blog...properties@53 != null
    //#presumption(void blogEntryAdded(BlogEntryEvent)): blogEntry.blog.__Tag@53 == net/sourceforge/pebble/domain/Blog
    //#presumption(void blogEntryAdded(BlogEntryEvent)): blogEntry.blog.rootCategory...__Tag@53 == net/sourceforge/pebble/domain/Category
    //#presumption(void blogEntryAdded(BlogEntryEvent)): blogEntry.blog.rootCategory.__Tag@53 == net/sourceforge/pebble/domain/Category
    //#presumption(void blogEntryAdded(BlogEntryEvent)): blogEntry.blog.rootCategory@53 != null
    //#presumption(void blogEntryAdded(BlogEntryEvent)): blogEntry.blog.searchIndex.__Tag@53 == net/sourceforge/pebble/index/SearchIndex
    //#presumption(void blogEntryAdded(BlogEntryEvent)): blogEntry.blog.searchIndex.blog@53 != null
    //#presumption(void blogEntryAdded(BlogEntryEvent)): blogEntry.blog.searchIndex@53 != null
    //#presumption(void blogEntryAdded(BlogEntryEvent)): blogEntry.blog@53 != null
    //#presumption(void blogEntryAdded(BlogEntryEvent)): blogEntry.comments@53 != null
    //#presumption(void blogEntryAdded(BlogEntryEvent)): blogEntry.state.__Tag@51 == net/sourceforge/pebble/domain/State
    //#presumption(void blogEntryAdded(BlogEntryEvent)): blogEntry.state.__Tag@53 == net/sourceforge/pebble/domain/State
    //#presumption(void blogEntryAdded(BlogEntryEvent)): blogEntry.state@51 != null
    //#presumption(void blogEntryAdded(BlogEntryEvent)): blogEntry.state@53 != null
    //#presumption(void blogEntryAdded(BlogEntryEvent)): blogEntry.tagsAsList@53 != null
    //#presumption(void blogEntryAdded(BlogEntryEvent)): net.sourceforge.pebble.api.event.blogentry.BlogEntryEvent:getSource(...)@91 != null
    //#presumption(void blogEntryAdded(BlogEntryEvent)): net.sourceforge.pebble.api.event.blogentry.BlogEntryEvent:getSource(...)@91.__Tag == net/sourceforge/pebble/domain/BlogEntry
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:getBlog
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:getSearchIndex
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:isPublished
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:index
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:net.sourceforge.pebble.api.event.blogentry.BlogEntryEvent:getSource
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:java.lang.StringBuilder
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:getTitle
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:java.lang.StringBuilder:append
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:java.lang.StringBuilder:toString
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:org.apache.commons.logging.Log:debug
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:net.sourceforge.pebble.domain.Blog:getSearchIndexDirectory
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.index.IndexReader:open
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:getId
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.index.Term
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.index.IndexReader:delete
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.index.IndexReader:close
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:java.lang.Exception:getMessage
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:org.apache.commons.logging.Log:error
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:java.lang.String:equals
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:getAnalyzer
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.index.IndexWriter
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.index.IndexWriter:close
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:java.util.Iterator:hasNext
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:java.util.Iterator:next
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.document.Document
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.document.Field:Keyword
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.document.Document:add
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.document.Field:Text
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:getPermalink
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:getDate
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.document.DateField:dateToString
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.document.Field:UnIndexed
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:getBody
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.document.Field:UnStored
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:getTruncatedContent
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:getAuthor
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:java.lang.StringBuffer
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:java.lang.StringBuffer:append
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:getCategories
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:java.util.Set:iterator
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:getAllTags
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:java.util.List:iterator
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:getName
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:getComments
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:isApproved
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:getTrackBacks
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:getExcerpt
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:java.lang.StringBuffer:toString
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.index.IndexWriter:addDocument
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:getLuceneAnalyzer
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:java.lang.Class:forName
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:java.lang.Class:newInstance
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:getLocalPermalink
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:getUrl
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:java.lang.String:valueOf
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:getContent
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:net.sourceforge.pebble.util.StringUtils:truncate
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:java.util.HashSet
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:java.util.List:add
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:java.util.ArrayList
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:java.util.List:contains
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:java.util.Set:size
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:java.util.List:addAll
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:java.util.Collections:reverse
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:getRootCategory
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:java.util.Collections:sort
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:getState
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:java.util.Properties:getProperty
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:java.lang.String:indexOf
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:net.sourceforge.pebble.PebbleContext:getInstance
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:net.sourceforge.pebble.PebbleContext:getConfiguration
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:java.lang.String:length
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:java.lang.String:substring
    //#unanalyzed(void blogEntryAdded(BlogEntryEvent)): Effects-of-calling:getPermalinkProvider

    if (blogEntry.isPublished()) {
      updateSearchIndex(blogEntry);
    //#searchindexlistener.java:54: ?precondition failure
    //#    net/sourceforge/pebble/index/SearchIndexListener.updateSearchIndex: (soft) net/sourceforge/pebble/domain/BlogManager.instance.__Tag == net/sourceforge/pebble/domain/BlogManager
    //#    severity: SUPPRESSED
    //#    class: net.sourceforge.pebble.index.SearchIndexListener
    //#    method: void blogEntryAdded(BlogEntryEvent)
    //#    basic block: bb_2
    //#    assertion: (soft) net/sourceforge/pebble/domain/BlogManager.instance.__Tag == net/sourceforge/pebble/domain/BlogManager
    //#    callee: void net/sourceforge/pebble/index/SearchIndexListener.updateSearchIndex(BlogEntry)
    //#    callee assertion: (soft) net/sourceforge/pebble/domain/BlogManager.instance.__Tag == net/sourceforge/pebble/domain/BlogManager
    //#    callee file: searchindexlistener.java
    //#    callee precondition index: [40]
    //#    callee srcpos: 107
    //#    VN: net/sourceforge/pebble/domain/BlogManager.instance.__Tag
    //#    Expected: {790_784}
    //#    Bad: {790_272}
    //#    Attribs:  Int  Exp singleton  Bad singleton  Soft  Bad < Exp  Uncertain
    }
  }
    //#searchindexlistener.java:56: end of method: void net.sourceforge.pebble.index.SearchIndexListener.blogEntryAdded(BlogEntryEvent)

  /**
   * Called when a blog entry has been removed.
   *
   * @param event a BlogEntryEvent instance
   */
  public void blogEntryRemoved(BlogEntryEvent event) {
    BlogEntry blogEntry = event.getBlogEntry();
    //#searchindexlistener.java:64: method: void net.sourceforge.pebble.index.SearchIndexListener.blogEntryRemoved(BlogEntryEvent)
    //#input(void blogEntryRemoved(BlogEntryEvent)): event
    //#input(void blogEntryRemoved(BlogEntryEvent)): event.__Tag
    //#input(void blogEntryRemoved(BlogEntryEvent)): net/sourceforge/pebble/api/event/blogentry/BlogEntryEvent.__Descendant_Table[net/sourceforge/pebble/api/event/blogentry/BlogEntryEvent]
    //#input(void blogEntryRemoved(BlogEntryEvent)): net/sourceforge/pebble/api/event/blogentry/BlogEntryEvent.__Descendant_Table[others]
    //#input(void blogEntryRemoved(BlogEntryEvent)): net/sourceforge/pebble/api/event/blogentry/BlogEntryEvent.__Dispatch_Table.getBlogEntry()Lnet/sourceforge/pebble/domain/BlogEntry;
    //#input(void blogEntryRemoved(BlogEntryEvent)): net/sourceforge/pebble/domain/Blog.__Descendant_Table[net/sourceforge/pebble/domain/Blog]
    //#input(void blogEntryRemoved(BlogEntryEvent)): net/sourceforge/pebble/domain/Blog.__Descendant_Table[others]
    //#input(void blogEntryRemoved(BlogEntryEvent)): net/sourceforge/pebble/domain/Blog.__Dispatch_Table.getSearchIndex()Lnet/sourceforge/pebble/index/SearchIndex;
    //#input(void blogEntryRemoved(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Descendant_Table[net/sourceforge/pebble/domain/BlogEntry]
    //#input(void blogEntryRemoved(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Descendant_Table[others]
    //#input(void blogEntryRemoved(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getBlog()Lnet/sourceforge/pebble/domain/Blog;
    //#input(void blogEntryRemoved(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getId()Ljava/lang/String;
    //#input(void blogEntryRemoved(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getTitle()Ljava/lang/String;
    //#input(void blogEntryRemoved(BlogEntryEvent)): net/sourceforge/pebble/index/SearchIndex.__Descendant_Table[net/sourceforge/pebble/index/SearchIndex]
    //#input(void blogEntryRemoved(BlogEntryEvent)): net/sourceforge/pebble/index/SearchIndex.__Descendant_Table[others]
    //#input(void blogEntryRemoved(BlogEntryEvent)): net/sourceforge/pebble/index/SearchIndex.__Dispatch_Table.unindex(Lnet/sourceforge/pebble/domain/BlogEntry;)V
    //#input(void blogEntryRemoved(BlogEntryEvent)): net/sourceforge/pebble/index/SearchIndex.log
    //#pre[1] (void blogEntryRemoved(BlogEntryEvent)): event != null
    //#pre[2] (void blogEntryRemoved(BlogEntryEvent)): event.__Tag == net/sourceforge/pebble/api/event/blogentry/BlogEntryEvent
    //#presumption(void blogEntryRemoved(BlogEntryEvent)): blogEntry.blog@64 != null
    //#presumption(void blogEntryRemoved(BlogEntryEvent)): getBlog(...).__Tag@64 == net/sourceforge/pebble/domain/Blog
    //#presumption(void blogEntryRemoved(BlogEntryEvent)): getBlog(...).searchIndex@64 != null
    //#presumption(void blogEntryRemoved(BlogEntryEvent)): getSearchIndex(...).__Tag@64 == net/sourceforge/pebble/index/SearchIndex
    //#presumption(void blogEntryRemoved(BlogEntryEvent)): getSearchIndex(...).blog@64 != null
    //#presumption(void blogEntryRemoved(BlogEntryEvent)): net.sourceforge.pebble.api.event.blogentry.BlogEntryEvent:getSource(...)@91 != null
    //#presumption(void blogEntryRemoved(BlogEntryEvent)): net.sourceforge.pebble.api.event.blogentry.BlogEntryEvent:getSource(...)@91.__Tag == net/sourceforge/pebble/domain/BlogEntry
    //#unanalyzed(void blogEntryRemoved(BlogEntryEvent)): Effects-of-calling:net.sourceforge.pebble.api.event.blogentry.BlogEntryEvent:getSource
    //#unanalyzed(void blogEntryRemoved(BlogEntryEvent)): Effects-of-calling:java.lang.StringBuilder
    //#unanalyzed(void blogEntryRemoved(BlogEntryEvent)): Effects-of-calling:getTitle
    //#unanalyzed(void blogEntryRemoved(BlogEntryEvent)): Effects-of-calling:java.lang.StringBuilder:append
    //#unanalyzed(void blogEntryRemoved(BlogEntryEvent)): Effects-of-calling:java.lang.StringBuilder:toString
    //#unanalyzed(void blogEntryRemoved(BlogEntryEvent)): Effects-of-calling:org.apache.commons.logging.Log:debug
    //#unanalyzed(void blogEntryRemoved(BlogEntryEvent)): Effects-of-calling:net.sourceforge.pebble.domain.Blog:getSearchIndexDirectory
    //#unanalyzed(void blogEntryRemoved(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.index.IndexReader:open
    //#unanalyzed(void blogEntryRemoved(BlogEntryEvent)): Effects-of-calling:getId
    //#unanalyzed(void blogEntryRemoved(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.index.Term
    //#unanalyzed(void blogEntryRemoved(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.index.IndexReader:delete
    //#unanalyzed(void blogEntryRemoved(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.index.IndexReader:close
    //#unanalyzed(void blogEntryRemoved(BlogEntryEvent)): Effects-of-calling:java.lang.Exception:getMessage
    //#unanalyzed(void blogEntryRemoved(BlogEntryEvent)): Effects-of-calling:org.apache.commons.logging.Log:error

    blogEntry.getBlog().getSearchIndex().unindex(blogEntry);
    //#searchindexlistener.java:66: ?null dereference
    //#    net/sourceforge/pebble/domain/Blog.__Descendant_Table[getBlog(...).__Tag] != null
    //#    severity: SUPPRESSED
    //#    class: net.sourceforge.pebble.index.SearchIndexListener
    //#    method: void blogEntryRemoved(BlogEntryEvent)
    //#    basic block: Entry_BB_1
    //#    assertion: net/sourceforge/pebble/domain/Blog.__Descendant_Table[getBlog(...).__Tag] != null
    //#    VN: net/sourceforge/pebble/domain/Blog.__Descendant_Table[getBlog(...).__Tag]
    //#    Expected: Inverse{null}
    //#    Bad: Addr_Set{null}
    //#    Attribs:  Ptr  null in Bad
    //#searchindexlistener.java:66: ?null dereference
    //#    net/sourceforge/pebble/index/SearchIndex.__Descendant_Table[getSearchIndex(...).__Tag] != null
    //#    severity: SUPPRESSED
    //#    class: net.sourceforge.pebble.index.SearchIndexListener
    //#    method: void blogEntryRemoved(BlogEntryEvent)
    //#    basic block: Entry_BB_1
    //#    assertion: net/sourceforge/pebble/index/SearchIndex.__Descendant_Table[getSearchIndex(...).__Tag] != null
    //#    VN: net/sourceforge/pebble/index/SearchIndex.__Descendant_Table[getSearchIndex(...).__Tag]
    //#    Expected: Inverse{null}
    //#    Bad: Addr_Set{null}
    //#    Attribs:  Ptr  null in Bad
  }
    //#searchindexlistener.java:67: end of method: void net.sourceforge.pebble.index.SearchIndexListener.blogEntryRemoved(BlogEntryEvent)

  /**
   * Called when a blog entry has been changed.
   *
   * @param event a BlogEntryEvent instance
   */
  public void blogEntryChanged(BlogEntryEvent event) {
    BlogEntry blogEntry = event.getBlogEntry();
    //#searchindexlistener.java:75: method: void net.sourceforge.pebble.index.SearchIndexListener.blogEntryChanged(BlogEntryEvent)
    //#input(void blogEntryChanged(BlogEntryEvent)): event
    //#input(void blogEntryChanged(BlogEntryEvent)): event.__Tag
    //#input(void blogEntryChanged(BlogEntryEvent)): net.sourceforge.pebble.domain.State__static_init.new State(State__static_init#1).__Tag
    //#input(void blogEntryChanged(BlogEntryEvent)): net.sourceforge.pebble.domain.State__static_init.new State(State__static_init#1).name
    //#input(void blogEntryChanged(BlogEntryEvent)): net.sourceforge.pebble.domain.State__static_init.new State(State__static_init#5).__Tag
    //#input(void blogEntryChanged(BlogEntryEvent)): net.sourceforge.pebble.domain.State__static_init.new State(State__static_init#5).name
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/Configuration.__Descendant_Table[net/sourceforge/pebble/Configuration]
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/Configuration.__Descendant_Table[others]
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/Configuration.__Dispatch_Table.getUrl()Ljava/lang/String;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/Configuration.__Dispatch_Table.isVirtualHostingEnabled()Z
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/api/event/blogentry/BlogEntryEvent.__Descendant_Table[net/sourceforge/pebble/api/event/blogentry/BlogEntryEvent]
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/api/event/blogentry/BlogEntryEvent.__Descendant_Table[others]
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/api/event/blogentry/BlogEntryEvent.__Dispatch_Table.getBlogEntry()Lnet/sourceforge/pebble/domain/BlogEntry;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/api/permalink/PermalinkProvider.__Descendant_Table[net/sourceforge/pebble/api/permalink/PermalinkProvider]
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/api/permalink/PermalinkProvider.__Descendant_Table[others]
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/api/permalink/PermalinkProvider.__Dispatch_Table.getPermalink(Lnet/sourceforge/pebble/domain/BlogEntry;)Ljava/lang/String;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/Blog.__Descendant_Table[net/sourceforge/pebble/domain/Blog]
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/Blog.__Descendant_Table[others]
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/Blog.__Dispatch_Table.getId()Ljava/lang/String;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/Blog.__Dispatch_Table.getLuceneAnalyzer()Ljava/lang/String;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/Blog.__Dispatch_Table.getPermalinkProvider()Lnet/sourceforge/pebble/api/permalink/PermalinkProvider;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/Blog.__Dispatch_Table.getRootCategory()Lnet/sourceforge/pebble/domain/Category;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/Blog.__Dispatch_Table.getSearchIndex()Lnet/sourceforge/pebble/index/SearchIndex;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/Blog.__Dispatch_Table.getUrl()Ljava/lang/String;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Descendant_Table[net/sourceforge/pebble/domain/BlogEntry]
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Descendant_Table[others]
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getAllTags()Ljava/util/List;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getAuthor()Ljava/lang/String;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getBlog()Lnet/sourceforge/pebble/domain/Blog;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getBody()Ljava/lang/String;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getCategories()Ljava/util/Set;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getComments()Ljava/util/List;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getContent()Ljava/lang/String;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getDate()Ljava/util/Date;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getId()Ljava/lang/String;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getLocalPermalink()Ljava/lang/String;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getOriginalPermalink()Ljava/lang/String;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getPermalink()Ljava/lang/String;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getState()Lnet/sourceforge/pebble/domain/State;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getTagsAsList()Ljava/util/List;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getTitle()Ljava/lang/String;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getTrackBacks()Ljava/util/List;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getTruncatedContent()Ljava/lang/String;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.isAggregated()Z
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.isPublished()Z
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogManager.__Descendant_Table[net/sourceforge/pebble/domain/BlogManager]
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogManager.__Descendant_Table[others]
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogManager.__Dispatch_Table.isMultiBlog()Z
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogManager.instance
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogManager.instance.__Tag
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogManager.instance.multiBlog
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/Category.__Descendant_Table[net/sourceforge/pebble/domain/Category]
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/Category.__Descendant_Table[others]
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/Category.__Dispatch_Table.getAllTags()Ljava/util/List;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/Category.__Dispatch_Table.getId()Ljava/lang/String;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/Category.__Dispatch_Table.getParent()Lnet/sourceforge/pebble/domain/Category;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/Category.__Dispatch_Table.getTagsAsList()Ljava/util/List;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/Comment.__Descendant_Table[net/sourceforge/pebble/domain/Comment]
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/Comment.__Descendant_Table[others]
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/Comment.__Dispatch_Table.getBody()Ljava/lang/String;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/Comment.__Dispatch_Table.getComments()Ljava/util/List;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/Comment.__Dispatch_Table.getContent()Ljava/lang/String;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/Comment.__Dispatch_Table.getState()Lnet/sourceforge/pebble/domain/State;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/Comment.__Dispatch_Table.isApproved()Z
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/Content.__Descendant_Table[net/sourceforge/pebble/domain/BlogEntry]
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/Content.__Descendant_Table[net/sourceforge/pebble/domain/Comment]
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/Content.__Descendant_Table[net/sourceforge/pebble/domain/Content]
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/Content.__Descendant_Table[net/sourceforge/pebble/domain/PageBasedContent]
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/Content.__Descendant_Table[net/sourceforge/pebble/domain/Response]
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/Content.__Descendant_Table[net/sourceforge/pebble/domain/StaticPage]
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/Content.__Descendant_Table[net/sourceforge/pebble/domain/TrackBack]
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/Content.__Descendant_Table[others]
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/Content.__Dispatch_Table.getContent()Ljava/lang/String;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/PageBasedContent.__Descendant_Table[net/sourceforge/pebble/domain/BlogEntry]
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/PageBasedContent.__Descendant_Table[net/sourceforge/pebble/domain/PageBasedContent]
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/PageBasedContent.__Descendant_Table[net/sourceforge/pebble/domain/StaticPage]
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/PageBasedContent.__Descendant_Table[others]
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/PageBasedContent.__Dispatch_Table.getContent()Ljava/lang/String;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/PageBasedContent.__Dispatch_Table.getLocalPermalink()Ljava/lang/String;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/PageBasedContent.__Dispatch_Table.getOriginalPermalink()Ljava/lang/String;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/PageBasedContent.__Dispatch_Table.getState()Lnet/sourceforge/pebble/domain/State;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/PageBasedContent.__Dispatch_Table.isAggregated()Z
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/Response.__Descendant_Table[net/sourceforge/pebble/domain/Comment]
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/Response.__Descendant_Table[net/sourceforge/pebble/domain/Response]
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/Response.__Descendant_Table[net/sourceforge/pebble/domain/TrackBack]
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/Response.__Descendant_Table[others]
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/Response.__Dispatch_Table.getContent()Ljava/lang/String;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/Response.__Dispatch_Table.getState()Lnet/sourceforge/pebble/domain/State;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/State.APPROVED
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/State.PUBLISHED
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/State.__Descendant_Table[net/sourceforge/pebble/domain/State]
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/State.__Descendant_Table[others]
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/State.__Dispatch_Table.equals(Ljava/lang/Object;)Z
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/State.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/StaticPage.__Descendant_Table[net/sourceforge/pebble/domain/StaticPage]
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/StaticPage.__Descendant_Table[others]
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/StaticPage.__Dispatch_Table.getBlog()Lnet/sourceforge/pebble/domain/Blog;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/StaticPage.__Dispatch_Table.getContent()Ljava/lang/String;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/StaticPage.__Dispatch_Table.getLocalPermalink()Ljava/lang/String;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/StaticPage.__Dispatch_Table.getOriginalPermalink()Ljava/lang/String;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/StaticPage.__Dispatch_Table.getState()Lnet/sourceforge/pebble/domain/State;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/StaticPage.__Dispatch_Table.isAggregated()Z
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/Tag.__Descendant_Table[net/sourceforge/pebble/domain/Tag]
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/Tag.__Descendant_Table[net/sourceforge/pebble/index/IndexedTag]
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/Tag.__Descendant_Table[others]
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/Tag.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/TrackBack.__Descendant_Table[net/sourceforge/pebble/domain/TrackBack]
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/TrackBack.__Descendant_Table[others]
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/TrackBack.__Dispatch_Table.getContent()Ljava/lang/String;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/TrackBack.__Dispatch_Table.getExcerpt()Ljava/lang/String;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/TrackBack.__Dispatch_Table.getState()Lnet/sourceforge/pebble/domain/State;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/domain/TrackBack.__Dispatch_Table.isApproved()Z
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/index/IndexedTag.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/index/SearchIndex.__Descendant_Table[net/sourceforge/pebble/index/SearchIndex]
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/index/SearchIndex.__Descendant_Table[others]
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/index/SearchIndex.__Dispatch_Table.index(Lnet/sourceforge/pebble/domain/BlogEntry;)V
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/index/SearchIndex.__Dispatch_Table.unindex(Lnet/sourceforge/pebble/domain/BlogEntry;)V
    //#input(void blogEntryChanged(BlogEntryEvent)): net/sourceforge/pebble/index/SearchIndex.log
    //#input(void blogEntryChanged(BlogEntryEvent)): this
    //#pre[1] (void blogEntryChanged(BlogEntryEvent)): event != null
    //#pre[2] (void blogEntryChanged(BlogEntryEvent)): event.__Tag == net/sourceforge/pebble/api/event/blogentry/BlogEntryEvent
    //#pre[3] (void blogEntryChanged(BlogEntryEvent)): (soft) net.sourceforge.pebble.domain.State__static_init.new State(State__static_init#1).name != null
    //#pre[4] (void blogEntryChanged(BlogEntryEvent)): (soft) net.sourceforge.pebble.domain.State__static_init.new State(State__static_init#5).name != null
    //#pre[5] (void blogEntryChanged(BlogEntryEvent)): (soft) net/sourceforge/pebble/domain/BlogManager.instance != null
    //#pre[6] (void blogEntryChanged(BlogEntryEvent)): (soft) net/sourceforge/pebble/domain/BlogManager.instance.__Tag == net/sourceforge/pebble/domain/BlogManager
    //#pre[7] (void blogEntryChanged(BlogEntryEvent)): (soft) init'ed(net/sourceforge/pebble/domain/BlogManager.instance.multiBlog)
    //#presumption(void blogEntryChanged(BlogEntryEvent)): blogEntry.blog...__Tag@77 == net/sourceforge/pebble/domain/Blog
    //#presumption(void blogEntryChanged(BlogEntryEvent)): blogEntry.blog...properties@77 != null
    //#presumption(void blogEntryChanged(BlogEntryEvent)): blogEntry.blog.__Tag@77 == net/sourceforge/pebble/domain/Blog
    //#presumption(void blogEntryChanged(BlogEntryEvent)): blogEntry.blog.rootCategory...__Tag@77 == net/sourceforge/pebble/domain/Category
    //#presumption(void blogEntryChanged(BlogEntryEvent)): blogEntry.blog.rootCategory.__Tag@77 == net/sourceforge/pebble/domain/Category
    //#presumption(void blogEntryChanged(BlogEntryEvent)): blogEntry.blog.rootCategory@77 != null
    //#presumption(void blogEntryChanged(BlogEntryEvent)): blogEntry.blog.searchIndex.__Tag@77 == net/sourceforge/pebble/index/SearchIndex
    //#presumption(void blogEntryChanged(BlogEntryEvent)): blogEntry.blog.searchIndex.blog@77 != null
    //#presumption(void blogEntryChanged(BlogEntryEvent)): blogEntry.blog.searchIndex@77 != null
    //#presumption(void blogEntryChanged(BlogEntryEvent)): blogEntry.blog@77 != null
    //#presumption(void blogEntryChanged(BlogEntryEvent)): blogEntry.comments@77 != null
    //#presumption(void blogEntryChanged(BlogEntryEvent)): blogEntry.state.__Tag@75 == net/sourceforge/pebble/domain/State
    //#presumption(void blogEntryChanged(BlogEntryEvent)): blogEntry.state.__Tag@77 == net/sourceforge/pebble/domain/State
    //#presumption(void blogEntryChanged(BlogEntryEvent)): blogEntry.state@75 != null
    //#presumption(void blogEntryChanged(BlogEntryEvent)): blogEntry.state@77 != null
    //#presumption(void blogEntryChanged(BlogEntryEvent)): blogEntry.tagsAsList@77 != null
    //#presumption(void blogEntryChanged(BlogEntryEvent)): net.sourceforge.pebble.api.event.blogentry.BlogEntryEvent:getSource(...)@91 != null
    //#presumption(void blogEntryChanged(BlogEntryEvent)): net.sourceforge.pebble.api.event.blogentry.BlogEntryEvent:getSource(...)@91.__Tag == net/sourceforge/pebble/domain/BlogEntry
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:getBlog
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:getSearchIndex
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:isPublished
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:index
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:net.sourceforge.pebble.api.event.blogentry.BlogEntryEvent:getSource
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:java.lang.StringBuilder
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:getTitle
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:java.lang.StringBuilder:append
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:java.lang.StringBuilder:toString
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:org.apache.commons.logging.Log:debug
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:net.sourceforge.pebble.domain.Blog:getSearchIndexDirectory
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.index.IndexReader:open
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:getId
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.index.Term
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.index.IndexReader:delete
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.index.IndexReader:close
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:java.lang.Exception:getMessage
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:org.apache.commons.logging.Log:error
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:java.lang.String:equals
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:getAnalyzer
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.index.IndexWriter
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.index.IndexWriter:close
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:java.util.Iterator:hasNext
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:java.util.Iterator:next
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.document.Document
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.document.Field:Keyword
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.document.Document:add
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.document.Field:Text
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:getPermalink
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:getDate
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.document.DateField:dateToString
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.document.Field:UnIndexed
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:getBody
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.document.Field:UnStored
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:getTruncatedContent
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:getAuthor
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:java.lang.StringBuffer
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:java.lang.StringBuffer:append
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:getCategories
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:java.util.Set:iterator
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:getAllTags
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:java.util.List:iterator
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:getName
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:getComments
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:isApproved
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:getTrackBacks
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:getExcerpt
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:java.lang.StringBuffer:toString
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.index.IndexWriter:addDocument
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:getLuceneAnalyzer
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:java.lang.Class:forName
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:java.lang.Class:newInstance
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:getLocalPermalink
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:getUrl
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:java.lang.String:valueOf
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:getContent
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:net.sourceforge.pebble.util.StringUtils:truncate
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:java.util.HashSet
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:java.util.List:add
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:java.util.ArrayList
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:java.util.List:contains
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:java.util.Set:size
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:java.util.List:addAll
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:java.util.Collections:reverse
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:getRootCategory
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:java.util.Collections:sort
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:getState
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:java.util.Properties:getProperty
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:java.lang.String:indexOf
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:net.sourceforge.pebble.PebbleContext:getInstance
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:net.sourceforge.pebble.PebbleContext:getConfiguration
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:java.lang.String:length
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:java.lang.String:substring
    //#unanalyzed(void blogEntryChanged(BlogEntryEvent)): Effects-of-calling:getPermalinkProvider

    if (blogEntry.isPublished()) {
      updateSearchIndex(blogEntry);
    //#searchindexlistener.java:78: ?precondition failure
    //#    net/sourceforge/pebble/index/SearchIndexListener.updateSearchIndex: (soft) net/sourceforge/pebble/domain/BlogManager.instance.__Tag == net/sourceforge/pebble/domain/BlogManager
    //#    severity: SUPPRESSED
    //#    class: net.sourceforge.pebble.index.SearchIndexListener
    //#    method: void blogEntryChanged(BlogEntryEvent)
    //#    basic block: bb_2
    //#    assertion: (soft) net/sourceforge/pebble/domain/BlogManager.instance.__Tag == net/sourceforge/pebble/domain/BlogManager
    //#    callee: void net/sourceforge/pebble/index/SearchIndexListener.updateSearchIndex(BlogEntry)
    //#    callee assertion: (soft) net/sourceforge/pebble/domain/BlogManager.instance.__Tag == net/sourceforge/pebble/domain/BlogManager
    //#    callee file: searchindexlistener.java
    //#    callee precondition index: [40]
    //#    callee srcpos: 107
    //#    VN: net/sourceforge/pebble/domain/BlogManager.instance.__Tag
    //#    Expected: {790_784}
    //#    Bad: {790_272}
    //#    Attribs:  Int  Exp singleton  Bad singleton  Soft  Bad < Exp  Uncertain
    }
  }
    //#searchindexlistener.java:80: end of method: void net.sourceforge.pebble.index.SearchIndexListener.blogEntryChanged(BlogEntryEvent)

  /**
   * Called when a blog entry has been published.
   *
   * @param event a BlogEntryEvent instance
   */
  public void blogEntryPublished(BlogEntryEvent event) {
    BlogEntry blogEntry = event.getBlogEntry();
    //#searchindexlistener.java:88: method: void net.sourceforge.pebble.index.SearchIndexListener.blogEntryPublished(BlogEntryEvent)
    //#input(void blogEntryPublished(BlogEntryEvent)): event
    //#input(void blogEntryPublished(BlogEntryEvent)): event.__Tag
    //#input(void blogEntryPublished(BlogEntryEvent)): net.sourceforge.pebble.domain.State__static_init.new State(State__static_init#1).__Tag
    //#input(void blogEntryPublished(BlogEntryEvent)): net.sourceforge.pebble.domain.State__static_init.new State(State__static_init#1).name
    //#input(void blogEntryPublished(BlogEntryEvent)): net.sourceforge.pebble.domain.State__static_init.new State(State__static_init#5).__Tag
    //#input(void blogEntryPublished(BlogEntryEvent)): net.sourceforge.pebble.domain.State__static_init.new State(State__static_init#5).name
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/Configuration.__Descendant_Table[net/sourceforge/pebble/Configuration]
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/Configuration.__Descendant_Table[others]
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/Configuration.__Dispatch_Table.getUrl()Ljava/lang/String;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/Configuration.__Dispatch_Table.isVirtualHostingEnabled()Z
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/api/event/blogentry/BlogEntryEvent.__Descendant_Table[net/sourceforge/pebble/api/event/blogentry/BlogEntryEvent]
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/api/event/blogentry/BlogEntryEvent.__Descendant_Table[others]
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/api/event/blogentry/BlogEntryEvent.__Dispatch_Table.getBlogEntry()Lnet/sourceforge/pebble/domain/BlogEntry;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/api/permalink/PermalinkProvider.__Descendant_Table[net/sourceforge/pebble/api/permalink/PermalinkProvider]
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/api/permalink/PermalinkProvider.__Descendant_Table[others]
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/api/permalink/PermalinkProvider.__Dispatch_Table.getPermalink(Lnet/sourceforge/pebble/domain/BlogEntry;)Ljava/lang/String;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/Blog.__Descendant_Table[net/sourceforge/pebble/domain/Blog]
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/Blog.__Descendant_Table[others]
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/Blog.__Dispatch_Table.getId()Ljava/lang/String;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/Blog.__Dispatch_Table.getLuceneAnalyzer()Ljava/lang/String;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/Blog.__Dispatch_Table.getPermalinkProvider()Lnet/sourceforge/pebble/api/permalink/PermalinkProvider;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/Blog.__Dispatch_Table.getRootCategory()Lnet/sourceforge/pebble/domain/Category;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/Blog.__Dispatch_Table.getSearchIndex()Lnet/sourceforge/pebble/index/SearchIndex;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/Blog.__Dispatch_Table.getUrl()Ljava/lang/String;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Descendant_Table[net/sourceforge/pebble/domain/BlogEntry]
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Descendant_Table[others]
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getAllTags()Ljava/util/List;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getAuthor()Ljava/lang/String;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getBlog()Lnet/sourceforge/pebble/domain/Blog;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getBody()Ljava/lang/String;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getCategories()Ljava/util/Set;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getComments()Ljava/util/List;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getContent()Ljava/lang/String;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getDate()Ljava/util/Date;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getId()Ljava/lang/String;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getLocalPermalink()Ljava/lang/String;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getOriginalPermalink()Ljava/lang/String;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getPermalink()Ljava/lang/String;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getState()Lnet/sourceforge/pebble/domain/State;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getTagsAsList()Ljava/util/List;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getTitle()Ljava/lang/String;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getTrackBacks()Ljava/util/List;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getTruncatedContent()Ljava/lang/String;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.isAggregated()Z
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.isPublished()Z
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogManager.__Descendant_Table[net/sourceforge/pebble/domain/BlogManager]
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogManager.__Descendant_Table[others]
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogManager.__Dispatch_Table.isMultiBlog()Z
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogManager.instance
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogManager.instance.__Tag
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogManager.instance.multiBlog
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/Category.__Descendant_Table[net/sourceforge/pebble/domain/Category]
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/Category.__Descendant_Table[others]
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/Category.__Dispatch_Table.getAllTags()Ljava/util/List;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/Category.__Dispatch_Table.getId()Ljava/lang/String;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/Category.__Dispatch_Table.getParent()Lnet/sourceforge/pebble/domain/Category;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/Category.__Dispatch_Table.getTagsAsList()Ljava/util/List;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/Comment.__Descendant_Table[net/sourceforge/pebble/domain/Comment]
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/Comment.__Descendant_Table[others]
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/Comment.__Dispatch_Table.getBody()Ljava/lang/String;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/Comment.__Dispatch_Table.getComments()Ljava/util/List;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/Comment.__Dispatch_Table.getContent()Ljava/lang/String;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/Comment.__Dispatch_Table.getState()Lnet/sourceforge/pebble/domain/State;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/Comment.__Dispatch_Table.isApproved()Z
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/Content.__Descendant_Table[net/sourceforge/pebble/domain/BlogEntry]
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/Content.__Descendant_Table[net/sourceforge/pebble/domain/Comment]
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/Content.__Descendant_Table[net/sourceforge/pebble/domain/Content]
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/Content.__Descendant_Table[net/sourceforge/pebble/domain/PageBasedContent]
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/Content.__Descendant_Table[net/sourceforge/pebble/domain/Response]
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/Content.__Descendant_Table[net/sourceforge/pebble/domain/StaticPage]
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/Content.__Descendant_Table[net/sourceforge/pebble/domain/TrackBack]
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/Content.__Descendant_Table[others]
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/Content.__Dispatch_Table.getContent()Ljava/lang/String;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/PageBasedContent.__Descendant_Table[net/sourceforge/pebble/domain/BlogEntry]
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/PageBasedContent.__Descendant_Table[net/sourceforge/pebble/domain/PageBasedContent]
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/PageBasedContent.__Descendant_Table[net/sourceforge/pebble/domain/StaticPage]
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/PageBasedContent.__Descendant_Table[others]
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/PageBasedContent.__Dispatch_Table.getContent()Ljava/lang/String;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/PageBasedContent.__Dispatch_Table.getLocalPermalink()Ljava/lang/String;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/PageBasedContent.__Dispatch_Table.getOriginalPermalink()Ljava/lang/String;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/PageBasedContent.__Dispatch_Table.getState()Lnet/sourceforge/pebble/domain/State;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/PageBasedContent.__Dispatch_Table.isAggregated()Z
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/Response.__Descendant_Table[net/sourceforge/pebble/domain/Comment]
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/Response.__Descendant_Table[net/sourceforge/pebble/domain/Response]
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/Response.__Descendant_Table[net/sourceforge/pebble/domain/TrackBack]
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/Response.__Descendant_Table[others]
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/Response.__Dispatch_Table.getContent()Ljava/lang/String;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/Response.__Dispatch_Table.getState()Lnet/sourceforge/pebble/domain/State;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/State.APPROVED
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/State.PUBLISHED
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/State.__Descendant_Table[net/sourceforge/pebble/domain/State]
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/State.__Descendant_Table[others]
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/State.__Dispatch_Table.equals(Ljava/lang/Object;)Z
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/State.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/StaticPage.__Descendant_Table[net/sourceforge/pebble/domain/StaticPage]
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/StaticPage.__Descendant_Table[others]
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/StaticPage.__Dispatch_Table.getBlog()Lnet/sourceforge/pebble/domain/Blog;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/StaticPage.__Dispatch_Table.getContent()Ljava/lang/String;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/StaticPage.__Dispatch_Table.getLocalPermalink()Ljava/lang/String;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/StaticPage.__Dispatch_Table.getOriginalPermalink()Ljava/lang/String;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/StaticPage.__Dispatch_Table.getState()Lnet/sourceforge/pebble/domain/State;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/StaticPage.__Dispatch_Table.isAggregated()Z
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/Tag.__Descendant_Table[net/sourceforge/pebble/domain/Tag]
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/Tag.__Descendant_Table[net/sourceforge/pebble/index/IndexedTag]
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/Tag.__Descendant_Table[others]
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/Tag.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/TrackBack.__Descendant_Table[net/sourceforge/pebble/domain/TrackBack]
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/TrackBack.__Descendant_Table[others]
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/TrackBack.__Dispatch_Table.getContent()Ljava/lang/String;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/TrackBack.__Dispatch_Table.getExcerpt()Ljava/lang/String;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/TrackBack.__Dispatch_Table.getState()Lnet/sourceforge/pebble/domain/State;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/domain/TrackBack.__Dispatch_Table.isApproved()Z
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/index/IndexedTag.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/index/SearchIndex.__Descendant_Table[net/sourceforge/pebble/index/SearchIndex]
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/index/SearchIndex.__Descendant_Table[others]
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/index/SearchIndex.__Dispatch_Table.index(Lnet/sourceforge/pebble/domain/BlogEntry;)V
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/index/SearchIndex.__Dispatch_Table.unindex(Lnet/sourceforge/pebble/domain/BlogEntry;)V
    //#input(void blogEntryPublished(BlogEntryEvent)): net/sourceforge/pebble/index/SearchIndex.log
    //#input(void blogEntryPublished(BlogEntryEvent)): this
    //#pre[1] (void blogEntryPublished(BlogEntryEvent)): event != null
    //#pre[2] (void blogEntryPublished(BlogEntryEvent)): event.__Tag == net/sourceforge/pebble/api/event/blogentry/BlogEntryEvent
    //#pre[3] (void blogEntryPublished(BlogEntryEvent)): (soft) net.sourceforge.pebble.domain.State__static_init.new State(State__static_init#1).name != null
    //#pre[4] (void blogEntryPublished(BlogEntryEvent)): (soft) net.sourceforge.pebble.domain.State__static_init.new State(State__static_init#5).name != null
    //#pre[5] (void blogEntryPublished(BlogEntryEvent)): (soft) net/sourceforge/pebble/domain/BlogManager.instance != null
    //#pre[6] (void blogEntryPublished(BlogEntryEvent)): (soft) net/sourceforge/pebble/domain/BlogManager.instance.__Tag == net/sourceforge/pebble/domain/BlogManager
    //#pre[7] (void blogEntryPublished(BlogEntryEvent)): (soft) init'ed(net/sourceforge/pebble/domain/BlogManager.instance.multiBlog)
    //#presumption(void blogEntryPublished(BlogEntryEvent)): blogEntry.blog...__Tag@88 == net/sourceforge/pebble/domain/Blog
    //#presumption(void blogEntryPublished(BlogEntryEvent)): blogEntry.blog...properties@88 != null
    //#presumption(void blogEntryPublished(BlogEntryEvent)): blogEntry.blog.__Tag@88 == net/sourceforge/pebble/domain/Blog
    //#presumption(void blogEntryPublished(BlogEntryEvent)): blogEntry.blog.rootCategory...__Tag@88 == net/sourceforge/pebble/domain/Category
    //#presumption(void blogEntryPublished(BlogEntryEvent)): blogEntry.blog.rootCategory.__Tag@88 == net/sourceforge/pebble/domain/Category
    //#presumption(void blogEntryPublished(BlogEntryEvent)): blogEntry.blog.rootCategory@88 != null
    //#presumption(void blogEntryPublished(BlogEntryEvent)): blogEntry.blog.searchIndex.__Tag@88 == net/sourceforge/pebble/index/SearchIndex
    //#presumption(void blogEntryPublished(BlogEntryEvent)): blogEntry.blog.searchIndex.blog@88 != null
    //#presumption(void blogEntryPublished(BlogEntryEvent)): blogEntry.blog.searchIndex@88 != null
    //#presumption(void blogEntryPublished(BlogEntryEvent)): blogEntry.blog@88 != null
    //#presumption(void blogEntryPublished(BlogEntryEvent)): blogEntry.comments@88 != null
    //#presumption(void blogEntryPublished(BlogEntryEvent)): blogEntry.state.__Tag@88 == net/sourceforge/pebble/domain/State
    //#presumption(void blogEntryPublished(BlogEntryEvent)): blogEntry.state@88 != null
    //#presumption(void blogEntryPublished(BlogEntryEvent)): blogEntry.tagsAsList@88 != null
    //#presumption(void blogEntryPublished(BlogEntryEvent)): net.sourceforge.pebble.api.event.blogentry.BlogEntryEvent:getSource(...)@91 != null
    //#presumption(void blogEntryPublished(BlogEntryEvent)): net.sourceforge.pebble.api.event.blogentry.BlogEntryEvent:getSource(...)@91.__Tag is init'ed
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:getBlog
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:getSearchIndex
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:isPublished
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:index
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:net.sourceforge.pebble.api.event.blogentry.BlogEntryEvent:getSource
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:java.lang.StringBuilder
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:getTitle
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:java.lang.StringBuilder:append
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:java.lang.StringBuilder:toString
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:org.apache.commons.logging.Log:debug
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:net.sourceforge.pebble.domain.Blog:getSearchIndexDirectory
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.index.IndexReader:open
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:getId
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.index.Term
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.index.IndexReader:delete
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.index.IndexReader:close
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:java.lang.Exception:getMessage
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:org.apache.commons.logging.Log:error
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:java.lang.String:equals
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:getAnalyzer
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.index.IndexWriter
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.index.IndexWriter:close
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:java.util.Iterator:hasNext
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:java.util.Iterator:next
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.document.Document
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.document.Field:Keyword
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.document.Document:add
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.document.Field:Text
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:getPermalink
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:getDate
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.document.DateField:dateToString
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.document.Field:UnIndexed
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:getBody
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.document.Field:UnStored
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:getTruncatedContent
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:getAuthor
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:java.lang.StringBuffer
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:java.lang.StringBuffer:append
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:getCategories
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:java.util.Set:iterator
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:getAllTags
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:java.util.List:iterator
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:getName
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:getComments
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:isApproved
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:getTrackBacks
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:getExcerpt
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:java.lang.StringBuffer:toString
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.index.IndexWriter:addDocument
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:getLuceneAnalyzer
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:java.lang.Class:forName
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:java.lang.Class:newInstance
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:getLocalPermalink
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:getUrl
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:java.lang.String:valueOf
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:getContent
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:net.sourceforge.pebble.util.StringUtils:truncate
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:java.util.HashSet
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:java.util.List:add
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:java.util.ArrayList
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:java.util.List:contains
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:java.util.Set:size
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:java.util.List:addAll
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:java.util.Collections:reverse
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:getRootCategory
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:java.util.Collections:sort
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:getState
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:java.util.Properties:getProperty
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:java.lang.String:indexOf
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:net.sourceforge.pebble.PebbleContext:getInstance
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:net.sourceforge.pebble.PebbleContext:getConfiguration
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:java.lang.String:length
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:java.lang.String:substring
    //#unanalyzed(void blogEntryPublished(BlogEntryEvent)): Effects-of-calling:getPermalinkProvider
    updateSearchIndex(blogEntry);
    //#searchindexlistener.java:89: ?precondition failure
    //#    net/sourceforge/pebble/index/SearchIndexListener.updateSearchIndex: blogEntry.__Tag == net/sourceforge/pebble/domain/BlogEntry
    //#    severity: SUPPRESSED
    //#    class: net.sourceforge.pebble.index.SearchIndexListener
    //#    method: void blogEntryPublished(BlogEntryEvent)
    //#    basic block: Entry_BB_1
    //#    assertion: net.sourceforge.pebble.api.event.blogentry.BlogEntryEvent:getSource(...)@91.__Tag == net/sourceforge/pebble/domain/BlogEntry
    //#    callee: void net/sourceforge/pebble/index/SearchIndexListener.updateSearchIndex(BlogEntry)
    //#    callee assertion: blogEntry.__Tag == net/sourceforge/pebble/domain/BlogEntry
    //#    callee file: searchindexlistener.java
    //#    callee precondition index: [2]
    //#    callee srcpos: 107
    //#    VN: net.sourceforge.pebble.api.event.blogentry.BlogEntryEvent:getSource(...)@91.__Tag
    //#    Expected: {790_272}
    //#    Bad: {0..790_271, 790_273..+Inf}
    //#    Attribs:  Int  Exp singleton  Bad overlaps +/-1000  Bad < Exp  Bad > Exp  Uncertain
    //#searchindexlistener.java:89: ?precondition failure
    //#    net/sourceforge/pebble/index/SearchIndexListener.updateSearchIndex: (soft) net/sourceforge/pebble/domain/BlogManager.instance.__Tag == net/sourceforge/pebble/domain/BlogManager
    //#    severity: SUPPRESSED
    //#    class: net.sourceforge.pebble.index.SearchIndexListener
    //#    method: void blogEntryPublished(BlogEntryEvent)
    //#    basic block: Entry_BB_1
    //#    assertion: (soft) net/sourceforge/pebble/domain/BlogManager.instance.__Tag == net/sourceforge/pebble/domain/BlogManager
    //#    callee: void net/sourceforge/pebble/index/SearchIndexListener.updateSearchIndex(BlogEntry)
    //#    callee assertion: (soft) net/sourceforge/pebble/domain/BlogManager.instance.__Tag == net/sourceforge/pebble/domain/BlogManager
    //#    callee file: searchindexlistener.java
    //#    callee precondition index: [40]
    //#    callee srcpos: 107
    //#    VN: net/sourceforge/pebble/domain/BlogManager.instance.__Tag
    //#    Expected: {790_784}
    //#    Bad: {790_272}
    //#    Attribs:  Int  Exp singleton  Bad singleton  Soft  Bad < Exp  Uncertain
  }
    //#searchindexlistener.java:90: end of method: void net.sourceforge.pebble.index.SearchIndexListener.blogEntryPublished(BlogEntryEvent)

  /**
   * Called when a blog entry has been unpublished.
   *
   * @param event a BlogEntryEvent instance
   */
  public void blogEntryUnpublished(BlogEntryEvent event) {
    BlogEntry blogEntry = event.getBlogEntry();
    //#searchindexlistener.java:98: method: void net.sourceforge.pebble.index.SearchIndexListener.blogEntryUnpublished(BlogEntryEvent)
    //#input(void blogEntryUnpublished(BlogEntryEvent)): event
    //#input(void blogEntryUnpublished(BlogEntryEvent)): event.__Tag
    //#input(void blogEntryUnpublished(BlogEntryEvent)): net/sourceforge/pebble/api/event/blogentry/BlogEntryEvent.__Descendant_Table[net/sourceforge/pebble/api/event/blogentry/BlogEntryEvent]
    //#input(void blogEntryUnpublished(BlogEntryEvent)): net/sourceforge/pebble/api/event/blogentry/BlogEntryEvent.__Descendant_Table[others]
    //#input(void blogEntryUnpublished(BlogEntryEvent)): net/sourceforge/pebble/api/event/blogentry/BlogEntryEvent.__Dispatch_Table.getBlogEntry()Lnet/sourceforge/pebble/domain/BlogEntry;
    //#input(void blogEntryUnpublished(BlogEntryEvent)): net/sourceforge/pebble/domain/Blog.__Descendant_Table[net/sourceforge/pebble/domain/Blog]
    //#input(void blogEntryUnpublished(BlogEntryEvent)): net/sourceforge/pebble/domain/Blog.__Descendant_Table[others]
    //#input(void blogEntryUnpublished(BlogEntryEvent)): net/sourceforge/pebble/domain/Blog.__Dispatch_Table.getSearchIndex()Lnet/sourceforge/pebble/index/SearchIndex;
    //#input(void blogEntryUnpublished(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Descendant_Table[net/sourceforge/pebble/domain/BlogEntry]
    //#input(void blogEntryUnpublished(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Descendant_Table[others]
    //#input(void blogEntryUnpublished(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getBlog()Lnet/sourceforge/pebble/domain/Blog;
    //#input(void blogEntryUnpublished(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getId()Ljava/lang/String;
    //#input(void blogEntryUnpublished(BlogEntryEvent)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getTitle()Ljava/lang/String;
    //#input(void blogEntryUnpublished(BlogEntryEvent)): net/sourceforge/pebble/index/SearchIndex.__Descendant_Table[net/sourceforge/pebble/index/SearchIndex]
    //#input(void blogEntryUnpublished(BlogEntryEvent)): net/sourceforge/pebble/index/SearchIndex.__Descendant_Table[others]
    //#input(void blogEntryUnpublished(BlogEntryEvent)): net/sourceforge/pebble/index/SearchIndex.__Dispatch_Table.unindex(Lnet/sourceforge/pebble/domain/BlogEntry;)V
    //#input(void blogEntryUnpublished(BlogEntryEvent)): net/sourceforge/pebble/index/SearchIndex.log
    //#pre[1] (void blogEntryUnpublished(BlogEntryEvent)): event != null
    //#pre[2] (void blogEntryUnpublished(BlogEntryEvent)): event.__Tag == net/sourceforge/pebble/api/event/blogentry/BlogEntryEvent
    //#presumption(void blogEntryUnpublished(BlogEntryEvent)): blogEntry.blog@98 != null
    //#presumption(void blogEntryUnpublished(BlogEntryEvent)): getBlog(...).__Tag@98 == net/sourceforge/pebble/domain/Blog
    //#presumption(void blogEntryUnpublished(BlogEntryEvent)): getBlog(...).searchIndex@98 != null
    //#presumption(void blogEntryUnpublished(BlogEntryEvent)): getSearchIndex(...).__Tag@98 == net/sourceforge/pebble/index/SearchIndex
    //#presumption(void blogEntryUnpublished(BlogEntryEvent)): getSearchIndex(...).blog@98 != null
    //#presumption(void blogEntryUnpublished(BlogEntryEvent)): net.sourceforge.pebble.api.event.blogentry.BlogEntryEvent:getSource(...)@91 != null
    //#presumption(void blogEntryUnpublished(BlogEntryEvent)): net.sourceforge.pebble.api.event.blogentry.BlogEntryEvent:getSource(...)@91.__Tag == net/sourceforge/pebble/domain/BlogEntry
    //#unanalyzed(void blogEntryUnpublished(BlogEntryEvent)): Effects-of-calling:net.sourceforge.pebble.api.event.blogentry.BlogEntryEvent:getSource
    //#unanalyzed(void blogEntryUnpublished(BlogEntryEvent)): Effects-of-calling:java.lang.StringBuilder
    //#unanalyzed(void blogEntryUnpublished(BlogEntryEvent)): Effects-of-calling:getTitle
    //#unanalyzed(void blogEntryUnpublished(BlogEntryEvent)): Effects-of-calling:java.lang.StringBuilder:append
    //#unanalyzed(void blogEntryUnpublished(BlogEntryEvent)): Effects-of-calling:java.lang.StringBuilder:toString
    //#unanalyzed(void blogEntryUnpublished(BlogEntryEvent)): Effects-of-calling:org.apache.commons.logging.Log:debug
    //#unanalyzed(void blogEntryUnpublished(BlogEntryEvent)): Effects-of-calling:net.sourceforge.pebble.domain.Blog:getSearchIndexDirectory
    //#unanalyzed(void blogEntryUnpublished(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.index.IndexReader:open
    //#unanalyzed(void blogEntryUnpublished(BlogEntryEvent)): Effects-of-calling:getId
    //#unanalyzed(void blogEntryUnpublished(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.index.Term
    //#unanalyzed(void blogEntryUnpublished(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.index.IndexReader:delete
    //#unanalyzed(void blogEntryUnpublished(BlogEntryEvent)): Effects-of-calling:org.apache.lucene.index.IndexReader:close
    //#unanalyzed(void blogEntryUnpublished(BlogEntryEvent)): Effects-of-calling:java.lang.Exception:getMessage
    //#unanalyzed(void blogEntryUnpublished(BlogEntryEvent)): Effects-of-calling:org.apache.commons.logging.Log:error

    blogEntry.getBlog().getSearchIndex().unindex(blogEntry);
    //#searchindexlistener.java:100: ?null dereference
    //#    net/sourceforge/pebble/domain/Blog.__Descendant_Table[getBlog(...).__Tag] != null
    //#    severity: SUPPRESSED
    //#    class: net.sourceforge.pebble.index.SearchIndexListener
    //#    method: void blogEntryUnpublished(BlogEntryEvent)
    //#    basic block: Entry_BB_1
    //#    assertion: net/sourceforge/pebble/domain/Blog.__Descendant_Table[getBlog(...).__Tag] != null
    //#    VN: net/sourceforge/pebble/domain/Blog.__Descendant_Table[getBlog(...).__Tag]
    //#    Expected: Inverse{null}
    //#    Bad: Addr_Set{null}
    //#    Attribs:  Ptr  null in Bad
    //#searchindexlistener.java:100: ?null dereference
    //#    net/sourceforge/pebble/index/SearchIndex.__Descendant_Table[getSearchIndex(...).__Tag] != null
    //#    severity: SUPPRESSED
    //#    class: net.sourceforge.pebble.index.SearchIndexListener
    //#    method: void blogEntryUnpublished(BlogEntryEvent)
    //#    basic block: Entry_BB_1
    //#    assertion: net/sourceforge/pebble/index/SearchIndex.__Descendant_Table[getSearchIndex(...).__Tag] != null
    //#    VN: net/sourceforge/pebble/index/SearchIndex.__Descendant_Table[getSearchIndex(...).__Tag]
    //#    Expected: Inverse{null}
    //#    Bad: Addr_Set{null}
    //#    Attribs:  Ptr  null in Bad
  }
    //#searchindexlistener.java:101: end of method: void net.sourceforge.pebble.index.SearchIndexListener.blogEntryUnpublished(BlogEntryEvent)

  /**
   * Updates the search index to reflect the new/changed/removed blog entry.
   */
  private void updateSearchIndex(BlogEntry blogEntry) {
    blogEntry.getBlog().getSearchIndex().index(blogEntry);
    //#searchindexlistener.java:107: method: void net.sourceforge.pebble.index.SearchIndexListener.updateSearchIndex(BlogEntry)
    //#input(void updateSearchIndex(BlogEntry)): blogEntry
    //#input(void updateSearchIndex(BlogEntry)): blogEntry.__Tag
    //#input(void updateSearchIndex(BlogEntry)): blogEntry.author
    //#input(void updateSearchIndex(BlogEntry)): blogEntry.blog
    //#input(void updateSearchIndex(BlogEntry)): blogEntry.blog...__Tag
    //#input(void updateSearchIndex(BlogEntry)): blogEntry.blog...properties
    //#input(void updateSearchIndex(BlogEntry)): blogEntry.blog.__Tag
    //#input(void updateSearchIndex(BlogEntry)): blogEntry.blog.id
    //#input(void updateSearchIndex(BlogEntry)): blogEntry.blog.permalinkProvider.__Tag
    //#input(void updateSearchIndex(BlogEntry)): blogEntry.blog.rootCategory
    //#input(void updateSearchIndex(BlogEntry)): blogEntry.blog.rootCategory...__Tag
    //#input(void updateSearchIndex(BlogEntry)): blogEntry.blog.rootCategory...parent
    //#input(void updateSearchIndex(BlogEntry)): blogEntry.blog.rootCategory...tagsAsList
    //#input(void updateSearchIndex(BlogEntry)): blogEntry.blog.rootCategory.__Tag
    //#input(void updateSearchIndex(BlogEntry)): blogEntry.blog.rootCategory.parent
    //#input(void updateSearchIndex(BlogEntry)): blogEntry.blog.rootCategory.tagsAsList
    //#input(void updateSearchIndex(BlogEntry)): blogEntry.blog.searchIndex
    //#input(void updateSearchIndex(BlogEntry)): blogEntry.blog.searchIndex.__Tag
    //#input(void updateSearchIndex(BlogEntry)): blogEntry.blog.searchIndex.blog
    //#input(void updateSearchIndex(BlogEntry)): blogEntry.body
    //#input(void updateSearchIndex(BlogEntry)): blogEntry.categories
    //#input(void updateSearchIndex(BlogEntry)): blogEntry.comments
    //#input(void updateSearchIndex(BlogEntry)): blogEntry.date
    //#input(void updateSearchIndex(BlogEntry)): blogEntry.excerpt
    //#input(void updateSearchIndex(BlogEntry)): blogEntry.id
    //#input(void updateSearchIndex(BlogEntry)): blogEntry.originalPermalink
    //#input(void updateSearchIndex(BlogEntry)): blogEntry.state
    //#input(void updateSearchIndex(BlogEntry)): blogEntry.state.__Tag
    //#input(void updateSearchIndex(BlogEntry)): blogEntry.state.name
    //#input(void updateSearchIndex(BlogEntry)): blogEntry.tagsAsList
    //#input(void updateSearchIndex(BlogEntry)): blogEntry.title
    //#input(void updateSearchIndex(BlogEntry)): blogEntry.trackBacks
    //#input(void updateSearchIndex(BlogEntry)): net.sourceforge.pebble.domain.State__static_init.new State(State__static_init#1).__Tag
    //#input(void updateSearchIndex(BlogEntry)): net.sourceforge.pebble.domain.State__static_init.new State(State__static_init#1).name
    //#input(void updateSearchIndex(BlogEntry)): net.sourceforge.pebble.domain.State__static_init.new State(State__static_init#5).__Tag
    //#input(void updateSearchIndex(BlogEntry)): net.sourceforge.pebble.domain.State__static_init.new State(State__static_init#5).name
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/Configuration.__Descendant_Table[net/sourceforge/pebble/Configuration]
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/Configuration.__Descendant_Table[others]
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/Configuration.__Dispatch_Table.getUrl()Ljava/lang/String;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/Configuration.__Dispatch_Table.isVirtualHostingEnabled()Z
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/api/permalink/PermalinkProvider.__Descendant_Table[net/sourceforge/pebble/api/permalink/PermalinkProvider]
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/api/permalink/PermalinkProvider.__Descendant_Table[others]
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/api/permalink/PermalinkProvider.__Dispatch_Table.getPermalink(Lnet/sourceforge/pebble/domain/BlogEntry;)Ljava/lang/String;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/Blog.__Descendant_Table[net/sourceforge/pebble/domain/Blog]
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/Blog.__Descendant_Table[others]
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/Blog.__Dispatch_Table.getId()Ljava/lang/String;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/Blog.__Dispatch_Table.getLuceneAnalyzer()Ljava/lang/String;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/Blog.__Dispatch_Table.getPermalinkProvider()Lnet/sourceforge/pebble/api/permalink/PermalinkProvider;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/Blog.__Dispatch_Table.getRootCategory()Lnet/sourceforge/pebble/domain/Category;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/Blog.__Dispatch_Table.getSearchIndex()Lnet/sourceforge/pebble/index/SearchIndex;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/Blog.__Dispatch_Table.getUrl()Ljava/lang/String;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/BlogEntry.__Descendant_Table[net/sourceforge/pebble/domain/BlogEntry]
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/BlogEntry.__Descendant_Table[others]
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getAllTags()Ljava/util/List;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getAuthor()Ljava/lang/String;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getBlog()Lnet/sourceforge/pebble/domain/Blog;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getBody()Ljava/lang/String;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getCategories()Ljava/util/Set;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getComments()Ljava/util/List;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getContent()Ljava/lang/String;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getDate()Ljava/util/Date;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getId()Ljava/lang/String;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getLocalPermalink()Ljava/lang/String;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getOriginalPermalink()Ljava/lang/String;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getPermalink()Ljava/lang/String;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getState()Lnet/sourceforge/pebble/domain/State;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getTagsAsList()Ljava/util/List;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getTitle()Ljava/lang/String;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getTrackBacks()Ljava/util/List;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getTruncatedContent()Ljava/lang/String;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.isAggregated()Z
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.isPublished()Z
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/BlogManager.__Descendant_Table[net/sourceforge/pebble/domain/BlogManager]
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/BlogManager.__Descendant_Table[others]
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/BlogManager.__Dispatch_Table.isMultiBlog()Z
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/BlogManager.instance
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/BlogManager.instance.__Tag
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/BlogManager.instance.multiBlog
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/Category.__Descendant_Table[net/sourceforge/pebble/domain/Category]
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/Category.__Descendant_Table[others]
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/Category.__Dispatch_Table.getAllTags()Ljava/util/List;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/Category.__Dispatch_Table.getId()Ljava/lang/String;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/Category.__Dispatch_Table.getParent()Lnet/sourceforge/pebble/domain/Category;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/Category.__Dispatch_Table.getTagsAsList()Ljava/util/List;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/Comment.__Descendant_Table[net/sourceforge/pebble/domain/Comment]
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/Comment.__Descendant_Table[others]
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/Comment.__Dispatch_Table.getBody()Ljava/lang/String;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/Comment.__Dispatch_Table.getComments()Ljava/util/List;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/Comment.__Dispatch_Table.getContent()Ljava/lang/String;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/Comment.__Dispatch_Table.getState()Lnet/sourceforge/pebble/domain/State;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/Comment.__Dispatch_Table.isApproved()Z
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/Content.__Descendant_Table[net/sourceforge/pebble/domain/BlogEntry]
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/Content.__Descendant_Table[net/sourceforge/pebble/domain/Comment]
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/Content.__Descendant_Table[net/sourceforge/pebble/domain/Content]
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/Content.__Descendant_Table[net/sourceforge/pebble/domain/PageBasedContent]
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/Content.__Descendant_Table[net/sourceforge/pebble/domain/Response]
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/Content.__Descendant_Table[net/sourceforge/pebble/domain/StaticPage]
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/Content.__Descendant_Table[net/sourceforge/pebble/domain/TrackBack]
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/Content.__Descendant_Table[others]
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/Content.__Dispatch_Table.getContent()Ljava/lang/String;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/PageBasedContent.__Descendant_Table[net/sourceforge/pebble/domain/BlogEntry]
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/PageBasedContent.__Descendant_Table[net/sourceforge/pebble/domain/PageBasedContent]
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/PageBasedContent.__Descendant_Table[net/sourceforge/pebble/domain/StaticPage]
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/PageBasedContent.__Descendant_Table[others]
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/PageBasedContent.__Dispatch_Table.getContent()Ljava/lang/String;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/PageBasedContent.__Dispatch_Table.getLocalPermalink()Ljava/lang/String;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/PageBasedContent.__Dispatch_Table.getOriginalPermalink()Ljava/lang/String;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/PageBasedContent.__Dispatch_Table.getState()Lnet/sourceforge/pebble/domain/State;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/PageBasedContent.__Dispatch_Table.isAggregated()Z
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/Response.__Descendant_Table[net/sourceforge/pebble/domain/Comment]
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/Response.__Descendant_Table[net/sourceforge/pebble/domain/Response]
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/Response.__Descendant_Table[net/sourceforge/pebble/domain/TrackBack]
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/Response.__Descendant_Table[others]
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/Response.__Dispatch_Table.getContent()Ljava/lang/String;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/Response.__Dispatch_Table.getState()Lnet/sourceforge/pebble/domain/State;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/State.APPROVED
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/State.PUBLISHED
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/State.__Descendant_Table[net/sourceforge/pebble/domain/State]
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/State.__Descendant_Table[others]
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/State.__Dispatch_Table.equals(Ljava/lang/Object;)Z
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/State.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/StaticPage.__Descendant_Table[net/sourceforge/pebble/domain/StaticPage]
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/StaticPage.__Descendant_Table[others]
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/StaticPage.__Dispatch_Table.getBlog()Lnet/sourceforge/pebble/domain/Blog;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/StaticPage.__Dispatch_Table.getContent()Ljava/lang/String;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/StaticPage.__Dispatch_Table.getLocalPermalink()Ljava/lang/String;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/StaticPage.__Dispatch_Table.getOriginalPermalink()Ljava/lang/String;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/StaticPage.__Dispatch_Table.getState()Lnet/sourceforge/pebble/domain/State;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/StaticPage.__Dispatch_Table.isAggregated()Z
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/Tag.__Descendant_Table[net/sourceforge/pebble/domain/Tag]
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/Tag.__Descendant_Table[net/sourceforge/pebble/index/IndexedTag]
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/Tag.__Descendant_Table[others]
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/Tag.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/TrackBack.__Descendant_Table[net/sourceforge/pebble/domain/TrackBack]
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/TrackBack.__Descendant_Table[others]
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/TrackBack.__Dispatch_Table.getContent()Ljava/lang/String;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/TrackBack.__Dispatch_Table.getExcerpt()Ljava/lang/String;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/TrackBack.__Dispatch_Table.getState()Lnet/sourceforge/pebble/domain/State;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/domain/TrackBack.__Dispatch_Table.isApproved()Z
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/index/IndexedTag.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/index/SearchIndex.__Descendant_Table[net/sourceforge/pebble/index/SearchIndex]
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/index/SearchIndex.__Descendant_Table[others]
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/index/SearchIndex.__Dispatch_Table.index(Lnet/sourceforge/pebble/domain/BlogEntry;)V
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/index/SearchIndex.__Dispatch_Table.unindex(Lnet/sourceforge/pebble/domain/BlogEntry;)V
    //#input(void updateSearchIndex(BlogEntry)): net/sourceforge/pebble/index/SearchIndex.log
    //#output(void updateSearchIndex(BlogEntry)): blogEntry.permalink
    //#pre[1] (void updateSearchIndex(BlogEntry)): blogEntry != null
    //#pre[2] (void updateSearchIndex(BlogEntry)): blogEntry.__Tag == net/sourceforge/pebble/domain/BlogEntry
    //#pre[4] (void updateSearchIndex(BlogEntry)): blogEntry.blog != null
    //#pre[7] (void updateSearchIndex(BlogEntry)): blogEntry.blog.__Tag == net/sourceforge/pebble/domain/Blog
    //#pre[18] (void updateSearchIndex(BlogEntry)): blogEntry.blog.searchIndex != null
    //#pre[3] (void updateSearchIndex(BlogEntry)): (soft) init'ed(blogEntry.author)
    //#pre[5] (void updateSearchIndex(BlogEntry)): (soft) blogEntry.blog...__Tag == net/sourceforge/pebble/domain/Blog
    //#pre[6] (void updateSearchIndex(BlogEntry)): (soft) blogEntry.blog...properties != null
    //#pre[8] (void updateSearchIndex(BlogEntry)): (soft) init'ed(blogEntry.blog.id)
    //#pre[11] (void updateSearchIndex(BlogEntry)): (soft) blogEntry.blog.rootCategory != null
    //#pre[12] (void updateSearchIndex(BlogEntry)): (soft) blogEntry.blog.rootCategory...__Tag == net/sourceforge/pebble/domain/Category
    //#pre[13] (void updateSearchIndex(BlogEntry)): (soft) init'ed(blogEntry.blog.rootCategory...parent)
    //#pre[14] (void updateSearchIndex(BlogEntry)): (soft) init'ed(blogEntry.blog.rootCategory...tagsAsList)
    //#pre[15] (void updateSearchIndex(BlogEntry)): (soft) blogEntry.blog.rootCategory.__Tag == net/sourceforge/pebble/domain/Category
    //#pre[16] (void updateSearchIndex(BlogEntry)): (soft) init'ed(blogEntry.blog.rootCategory.parent)
    //#pre[17] (void updateSearchIndex(BlogEntry)): (soft) init'ed(blogEntry.blog.rootCategory.tagsAsList)
    //#pre[19] (void updateSearchIndex(BlogEntry)): (soft) blogEntry.blog.searchIndex.__Tag == net/sourceforge/pebble/index/SearchIndex
    //#pre[20] (void updateSearchIndex(BlogEntry)): (soft) blogEntry.blog.searchIndex.blog != null
    //#pre[21] (void updateSearchIndex(BlogEntry)): (soft) init'ed(blogEntry.body)
    //#pre[22] (void updateSearchIndex(BlogEntry)): (soft) init'ed(blogEntry.body)
    //#pre[23] (void updateSearchIndex(BlogEntry)): (soft) init'ed(blogEntry.categories)
    //#pre[24] (void updateSearchIndex(BlogEntry)): (soft) blogEntry.comments != null
    //#pre[25] (void updateSearchIndex(BlogEntry)): (soft) init'ed(blogEntry.date)
    //#pre[26] (void updateSearchIndex(BlogEntry)): (soft) init'ed(blogEntry.excerpt)
    //#pre[27] (void updateSearchIndex(BlogEntry)): (soft) init'ed(blogEntry.excerpt)
    //#pre[28] (void updateSearchIndex(BlogEntry)): (soft) init'ed(blogEntry.id)
    //#pre[30] (void updateSearchIndex(BlogEntry)): (soft) init'ed(blogEntry.originalPermalink)
    //#pre[31] (void updateSearchIndex(BlogEntry)): (soft) blogEntry.state != null
    //#pre[32] (void updateSearchIndex(BlogEntry)): (soft) blogEntry.state.__Tag == net/sourceforge/pebble/domain/State
    //#pre[33] (void updateSearchIndex(BlogEntry)): (soft) init'ed(blogEntry.state.name)
    //#pre[34] (void updateSearchIndex(BlogEntry)): (soft) blogEntry.tagsAsList != null
    //#pre[35] (void updateSearchIndex(BlogEntry)): (soft) init'ed(blogEntry.title)
    //#pre[36] (void updateSearchIndex(BlogEntry)): (soft) init'ed(blogEntry.trackBacks)
    //#pre[37] (void updateSearchIndex(BlogEntry)): (soft) net.sourceforge.pebble.domain.State__static_init.new State(State__static_init#1).name != null
    //#pre[38] (void updateSearchIndex(BlogEntry)): (soft) net.sourceforge.pebble.domain.State__static_init.new State(State__static_init#5).name != null
    //#pre[39] (void updateSearchIndex(BlogEntry)): (soft) net/sourceforge/pebble/domain/BlogManager.instance != null
    //#pre[40] (void updateSearchIndex(BlogEntry)): (soft) net/sourceforge/pebble/domain/BlogManager.instance.__Tag == net/sourceforge/pebble/domain/BlogManager
    //#pre[41] (void updateSearchIndex(BlogEntry)): (soft) init'ed(net/sourceforge/pebble/domain/BlogManager.instance.multiBlog)
    //#post(void updateSearchIndex(BlogEntry)): possibly_updated(blogEntry.permalink)
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:getBlog
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:isPublished
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:java.lang.StringBuilder
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:getTitle
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:java.lang.StringBuilder:append
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:java.lang.StringBuilder:toString
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:org.apache.commons.logging.Log:debug
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:net.sourceforge.pebble.domain.Blog:getSearchIndexDirectory
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:org.apache.lucene.index.IndexReader:open
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:getId
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:org.apache.lucene.index.Term
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:org.apache.lucene.index.IndexReader:delete
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:org.apache.lucene.index.IndexReader:close
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:java.lang.Exception:getMessage
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:org.apache.commons.logging.Log:error
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:java.lang.String:equals
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:getAnalyzer
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:org.apache.lucene.index.IndexWriter
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:index
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:org.apache.lucene.index.IndexWriter:close
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:java.util.Iterator:hasNext
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:java.util.Iterator:next
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:org.apache.lucene.document.Document
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:org.apache.lucene.document.Field:Keyword
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:org.apache.lucene.document.Document:add
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:org.apache.lucene.document.Field:Text
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:getPermalink
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:getDate
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:org.apache.lucene.document.DateField:dateToString
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:org.apache.lucene.document.Field:UnIndexed
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:getBody
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:org.apache.lucene.document.Field:UnStored
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:getTruncatedContent
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:getAuthor
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:java.lang.StringBuffer
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:java.lang.StringBuffer:append
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:getCategories
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:java.util.Set:iterator
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:getAllTags
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:java.util.List:iterator
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:getName
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:getComments
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:isApproved
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:getTrackBacks
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:getExcerpt
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:java.lang.StringBuffer:toString
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:org.apache.lucene.index.IndexWriter:addDocument
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:getLuceneAnalyzer
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:java.lang.Class:forName
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:java.lang.Class:newInstance
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:getLocalPermalink
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:getUrl
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:java.lang.String:valueOf
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:getContent
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:net.sourceforge.pebble.util.StringUtils:truncate
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:java.util.HashSet
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:java.util.List:add
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:java.util.ArrayList
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:java.util.List:contains
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:java.util.Set:size
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:java.util.List:addAll
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:java.util.Collections:reverse
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:getRootCategory
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:java.util.Collections:sort
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:getState
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:java.util.Properties:getProperty
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:java.lang.String:indexOf
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:net.sourceforge.pebble.PebbleContext:getInstance
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:net.sourceforge.pebble.PebbleContext:getConfiguration
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:java.lang.String:length
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:java.lang.String:substring
    //#unanalyzed(void updateSearchIndex(BlogEntry)): Effects-of-calling:getPermalinkProvider
  }
    //#searchindexlistener.java:108: end of method: void net.sourceforge.pebble.index.SearchIndexListener.updateSearchIndex(BlogEntry)

}    //#output(net.sourceforge.pebble.index.SearchIndexListener__static_init): __Descendant_Table[net/sourceforge/pebble/index/SearchIndexListener]
    //#output(net.sourceforge.pebble.index.SearchIndexListener__static_init): __Dispatch_Table.blogEntryAdded(Lnet/sourceforge/pebble/api/event/blogentry/BlogEntryEvent;)V
    //#output(net.sourceforge.pebble.index.SearchIndexListener__static_init): __Dispatch_Table.blogEntryChanged(Lnet/sourceforge/pebble/api/event/blogentry/BlogEntryEvent;)V
    //#output(net.sourceforge.pebble.index.SearchIndexListener__static_init): __Dispatch_Table.blogEntryPublished(Lnet/sourceforge/pebble/api/event/blogentry/BlogEntryEvent;)V
    //#output(net.sourceforge.pebble.index.SearchIndexListener__static_init): __Dispatch_Table.blogEntryRemoved(Lnet/sourceforge/pebble/api/event/blogentry/BlogEntryEvent;)V
    //#output(net.sourceforge.pebble.index.SearchIndexListener__static_init): __Dispatch_Table.blogEntryUnpublished(Lnet/sourceforge/pebble/api/event/blogentry/BlogEntryEvent;)V
    //#output(net.sourceforge.pebble.index.SearchIndexListener__static_init): __Dispatch_Table.updateSearchIndex(Lnet/sourceforge/pebble/domain/BlogEntry;)V
    //#output(net.sourceforge.pebble.index.SearchIndexListener__static_init): net/sourceforge/pebble/api/event/blogentry/BlogEntryListener.__Descendant_Table[net/sourceforge/pebble/index/SearchIndexListener]
    //#post(net.sourceforge.pebble.index.SearchIndexListener__static_init): __Descendant_Table[net/sourceforge/pebble/index/SearchIndexListener] == &__Dispatch_Table
    //#post(net.sourceforge.pebble.index.SearchIndexListener__static_init): net/sourceforge/pebble/api/event/blogentry/BlogEntryListener.__Descendant_Table[net/sourceforge/pebble/index/SearchIndexListener] == &__Dispatch_Table
    //#post(net.sourceforge.pebble.index.SearchIndexListener__static_init): __Dispatch_Table.blogEntryAdded(Lnet/sourceforge/pebble/api/event/blogentry/BlogEntryEvent;)V == &blogEntryAdded
    //#post(net.sourceforge.pebble.index.SearchIndexListener__static_init): __Dispatch_Table.blogEntryChanged(Lnet/sourceforge/pebble/api/event/blogentry/BlogEntryEvent;)V == &blogEntryChanged
    //#post(net.sourceforge.pebble.index.SearchIndexListener__static_init): __Dispatch_Table.blogEntryPublished(Lnet/sourceforge/pebble/api/event/blogentry/BlogEntryEvent;)V == &blogEntryPublished
    //#post(net.sourceforge.pebble.index.SearchIndexListener__static_init): __Dispatch_Table.blogEntryRemoved(Lnet/sourceforge/pebble/api/event/blogentry/BlogEntryEvent;)V == &blogEntryRemoved
    //#post(net.sourceforge.pebble.index.SearchIndexListener__static_init): __Dispatch_Table.blogEntryUnpublished(Lnet/sourceforge/pebble/api/event/blogentry/BlogEntryEvent;)V == &blogEntryUnpublished
    //#post(net.sourceforge.pebble.index.SearchIndexListener__static_init): __Dispatch_Table.updateSearchIndex(Lnet/sourceforge/pebble/domain/BlogEntry;)V == &updateSearchIndex
    //#searchindexlistener.java:: end of method: net.sourceforge.pebble.index.SearchIndexListener.net.sourceforge.pebble.index.SearchIndexListener__static_init
    //#searchindexlistener.java:: end of class: net.sourceforge.pebble.index.SearchIndexListener
