//# 3 errors, 521 messages
//#
/*
    //#WeblogEntriesPermalinkPager.java:1:1: class: org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager
 * Licensed to the Apache Software Foundation (ASF) under one or more
 *  contributor license agreements.  The ASF licenses this file to You
 * under the Apache License, Version 2.0 (the "License"); you may not
 * use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.  For additional information regarding
 * copyright in this work, please see the NOTICE file in the top level
 * directory of this distribution.
 */

package org.apache.roller.weblogger.ui.rendering.pagers;

import java.util.Collections;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.TreeMap;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.roller.weblogger.WebloggerException;
import org.apache.roller.weblogger.business.URLStrategy;
import org.apache.roller.weblogger.business.Weblogger;
import org.apache.roller.weblogger.business.WebloggerFactory;
import org.apache.roller.weblogger.business.WeblogManager;
import org.apache.roller.weblogger.pojos.WeblogEntry;
import org.apache.roller.weblogger.pojos.Weblog;
import org.apache.roller.weblogger.pojos.wrapper.WeblogEntryWrapper;
import org.apache.roller.weblogger.util.Utilities;


/**
 *
 */
public class WeblogEntriesPermalinkPager extends AbstractWeblogEntriesPager {
    
    private static Log log = LogFactory.getLog(WeblogEntriesPermalinkPager.class);
    //#WeblogEntriesPermalinkPager.java:44: method: org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager.org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager__static_init
    //#WeblogEntriesPermalinkPager.java:44: Warning: method not available
    //#    -- call on Log org.apache.commons.logging.LogFactory:getLog(Class)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager
    //#    method: org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager__static_init
    //#    unanalyzed callee: Log org.apache.commons.logging.LogFactory:getLog(Class)
    //#output(org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager__static_init): __Descendant_Table[org/apache/roller/weblogger/ui/rendering/pagers/WeblogEntriesPermalinkPager]
    //#output(org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager__static_init): __Dispatch_Table.createURL(IILorg/apache/roller/weblogger/pojos/Weblog;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/List;)Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager__static_init): __Dispatch_Table.getEntries()Ljava/util/Map;
    //#output(org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager__static_init): __Dispatch_Table.getHomeLink()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager__static_init): __Dispatch_Table.getHomeName()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager__static_init): __Dispatch_Table.getNextCollectionLink()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager__static_init): __Dispatch_Table.getNextCollectionName()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager__static_init): __Dispatch_Table.getNextEntry()Lorg/apache/roller/weblogger/pojos/WeblogEntry;
    //#output(org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager__static_init): __Dispatch_Table.getNextLink()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager__static_init): __Dispatch_Table.getNextName()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager__static_init): __Dispatch_Table.getPrevCollectionLink()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager__static_init): __Dispatch_Table.getPrevCollectionName()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager__static_init): __Dispatch_Table.getPrevEntry()Lorg/apache/roller/weblogger/pojos/WeblogEntry;
    //#output(org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager__static_init): __Dispatch_Table.getPrevLink()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager__static_init): __Dispatch_Table.getPrevName()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager__static_init): __Dispatch_Table.getToday()Ljava/util/Date;
    //#output(org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager__static_init): __Dispatch_Table.hasMoreEntries()Z
    //#output(org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager__static_init): __Dispatch_Table.parseDate(Ljava/lang/String;)Ljava/util/Date;
    //#output(org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager__static_init): log
    //#output(org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager__static_init): org/apache/roller/weblogger/ui/rendering/pagers/AbstractWeblogEntriesPager.__Descendant_Table[org/apache/roller/weblogger/ui/rendering/pagers/WeblogEntriesPermalinkPager]
    //#output(org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager__static_init): org/apache/roller/weblogger/ui/rendering/pagers/WeblogEntriesPager.__Descendant_Table[org/apache/roller/weblogger/ui/rendering/pagers/WeblogEntriesPermalinkPager]
    //#post(org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager__static_init): __Descendant_Table[org/apache/roller/weblogger/ui/rendering/pagers/WeblogEntriesPermalinkPager] == &__Dispatch_Table
    //#post(org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager__static_init): org/apache/roller/weblogger/ui/rendering/pagers/AbstractWeblogEntriesPager.__Descendant_Table[org/apache/roller/weblogger/ui/rendering/pagers/WeblogEntriesPermalinkPager] == &__Dispatch_Table
    //#post(org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager__static_init): org/apache/roller/weblogger/ui/rendering/pagers/WeblogEntriesPager.__Descendant_Table[org/apache/roller/weblogger/ui/rendering/pagers/WeblogEntriesPermalinkPager] == &__Dispatch_Table
    //#post(org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager__static_init): __Dispatch_Table.createURL(IILorg/apache/roller/weblogger/pojos/Weblog;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/List;)Ljava/lang/String; == &org/apache/roller/weblogger/ui/rendering/pagers/AbstractWeblogEntriesPager.createURL
    //#post(org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager__static_init): __Dispatch_Table.getEntries()Ljava/util/Map; == &getEntries
    //#post(org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager__static_init): __Dispatch_Table.getHomeLink()Ljava/lang/String; == &getHomeLink
    //#post(org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager__static_init): __Dispatch_Table.getHomeName()Ljava/lang/String; == &getHomeName
    //#post(org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager__static_init): __Dispatch_Table.getNextCollectionLink()Ljava/lang/String; == &org/apache/roller/weblogger/ui/rendering/pagers/AbstractWeblogEntriesPager.getNextCollectionLink
    //#post(org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager__static_init): __Dispatch_Table.getNextCollectionName()Ljava/lang/String; == &org/apache/roller/weblogger/ui/rendering/pagers/AbstractWeblogEntriesPager.getNextCollectionName
    //#post(org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager__static_init): __Dispatch_Table.getNextEntry()Lorg/apache/roller/weblogger/pojos/WeblogEntry; == &getNextEntry
    //#post(org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager__static_init): __Dispatch_Table.getNextLink()Ljava/lang/String; == &getNextLink
    //#post(org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager__static_init): __Dispatch_Table.getNextName()Ljava/lang/String; == &getNextName
    //#post(org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager__static_init): __Dispatch_Table.getPrevCollectionLink()Ljava/lang/String; == &org/apache/roller/weblogger/ui/rendering/pagers/AbstractWeblogEntriesPager.getPrevCollectionLink
    //#post(org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager__static_init): __Dispatch_Table.getPrevCollectionName()Ljava/lang/String; == &org/apache/roller/weblogger/ui/rendering/pagers/AbstractWeblogEntriesPager.getPrevCollectionName
    //#post(org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager__static_init): __Dispatch_Table.getPrevEntry()Lorg/apache/roller/weblogger/pojos/WeblogEntry; == &getPrevEntry
    //#post(org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager__static_init): __Dispatch_Table.getPrevLink()Ljava/lang/String; == &getPrevLink
    //#post(org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager__static_init): __Dispatch_Table.getPrevName()Ljava/lang/String; == &getPrevName
    //#post(org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager__static_init): __Dispatch_Table.getToday()Ljava/util/Date; == &org/apache/roller/weblogger/ui/rendering/pagers/AbstractWeblogEntriesPager.getToday
    //#post(org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager__static_init): __Dispatch_Table.hasMoreEntries()Z == &org/apache/roller/weblogger/ui/rendering/pagers/AbstractWeblogEntriesPager.hasMoreEntries
    //#post(org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager__static_init): __Dispatch_Table.parseDate(Ljava/lang/String;)Ljava/util/Date; == &org/apache/roller/weblogger/ui/rendering/pagers/AbstractWeblogEntriesPager.parseDate
    //#post(org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager__static_init): init'ed(log)
    //#WeblogEntriesPermalinkPager.java:44: end of method: org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager.org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager__static_init
    
    WeblogEntry currEntry = null;
    WeblogEntry nextEntry = null;
    WeblogEntry prevEntry = null;
    
    // collection for the pager
    Map entries = null;
    
    
    public WeblogEntriesPermalinkPager(
            URLStrategy        strat,
            Weblog             weblog,
            String             locale,
            String             pageLink,
            String             entryAnchor,
            String             dateString,
            String             catPath,
            List               tags,
            int                page) {
        
        super(strat, weblog, locale, pageLink, entryAnchor, dateString, catPath, tags, page);
    //#WeblogEntriesPermalinkPager.java:65: method: void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager.org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)
    //#WeblogEntriesPermalinkPager.java:65: Warning: suspicious precondition
    //#    the precondition for this.__Tag is not a contiguous range of values
    //#    severity: SUPPRESSED
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager
    //#    method: void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)
    //#    suspicious precondition index: [7]
    //#input(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): "request for messages in locale = "._tainted
    //#input(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): __Descendant_Table[org/apache/roller/weblogger/ui/rendering/pagers/WeblogEntriesPermalinkPager]
    //#input(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): __Descendant_Table[org/apache/roller/weblogger/ui/rendering/pagers/WeblogEntriesPreviewPager]
    //#input(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): __Descendant_Table[others]
    //#input(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): __Dispatch_Table.getEntries()Ljava/util/Map;
    //#input(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): catPath
    //#input(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): dateString
    //#input(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): entryAnchor
    //#input(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): locale
    //#input(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): locale._tainted
    //#input(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): org/apache/roller/weblogger/ui/rendering/pagers/WeblogEntriesPreviewPager.__Dispatch_Table.getEntries()Ljava/util/Map;
    //#input(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): org/apache/roller/weblogger/util/I18nMessages.__Descendant_Table[org/apache/roller/weblogger/util/I18nMessages]
    //#input(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): org/apache/roller/weblogger/util/I18nMessages.__Descendant_Table[others]
    //#input(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): org/apache/roller/weblogger/util/I18nMessages.log
    //#input(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): org/apache/roller/weblogger/util/I18nMessages.messagesMap
    //#input(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): page
    //#input(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): pageLink
    //#input(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): strat
    //#input(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): tags
    //#input(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): this
    //#input(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): this.__Tag
    //#input(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): weblog
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): new ArrayList(AbstractWeblogEntriesPager#1) num objects
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): new I18nMessages(getMessages#2) num objects
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): new I18nMessages(getMessages#2).__Tag
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): new I18nMessages(getMessages#2).bundle
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): new I18nMessages(getMessages#2).locale
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): new Locale(AbstractWeblogEntriesPager#2) num objects
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): new Locale(AbstractWeblogEntriesPager#2)._tainted
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): new Locale(AbstractWeblogEntriesPager#3) num objects
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): new Locale(AbstractWeblogEntriesPager#3)._tainted
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): new TreeMap(getEntries#1) num objects
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): new TreeMap(getEntries#3) num objects
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): this.__Tag
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): this.catPath
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): this.currEntry
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): this.dateString
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): this.entries
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): this.entryAnchor
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): this.length
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): this.locale
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): this.messageUtils
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): this.nextEntry
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): this.offset
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): this.page
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): this.pageLink
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): this.prevEntry
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): this.tags
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): this.urlStrategy
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): this.weblog
    //#new obj(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): new ArrayList(AbstractWeblogEntriesPager#1)
    //#new obj(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): new I18nMessages(getMessages#2)
    //#new obj(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): new Locale(AbstractWeblogEntriesPager#2)
    //#new obj(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): new Locale(AbstractWeblogEntriesPager#3)
    //#new obj(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): new TreeMap(getEntries#1)
    //#new obj(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): new TreeMap(getEntries#3)
    //#pre[4] (void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): locale == null
    //#pre[7] (void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): this.__Tag in {org/apache/roller/weblogger/ui/rendering/pagers/WeblogEntriesPermalinkPager, org/apache/roller/weblogger/ui/rendering/pagers/WeblogEntriesPreviewPager}
    //#pre[9] (void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): org/apache/roller/weblogger/util/I18nMessages.messagesMap != null
    //#pre[15] (void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): weblog != null
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): this.__Tag == old this.__Tag
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): this.__Tag in {org/apache/roller/weblogger/ui/rendering/pagers/WeblogEntriesPermalinkPager, org/apache/roller/weblogger/ui/rendering/pagers/WeblogEntriesPreviewPager}
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): this.catPath == catPath
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): init'ed(this.catPath)
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): init'ed(this.currEntry)
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): this.dateString == dateString
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): init'ed(this.dateString)
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): init'ed(this.entries)
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): this.entryAnchor == entryAnchor
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): init'ed(this.entryAnchor)
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): init'ed(this.length)
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): this.locale == null
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): this.messageUtils != null
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): init'ed(this.nextEntry)
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): init'ed(this.offset)
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): this.page == One-of{0, page}
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): this.page >= 0
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): this.pageLink == pageLink
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): init'ed(this.pageLink)
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): init'ed(this.prevEntry)
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): this.tags == One-of{&new ArrayList(AbstractWeblogEntriesPager#1), tags}
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): this.tags != null
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): this.urlStrategy == strat
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): init'ed(this.urlStrategy)
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): this.weblog == weblog
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): this.weblog != null
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): new ArrayList(AbstractWeblogEntriesPager#1) num objects == 1
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): new I18nMessages(getMessages#2) num objects <= 1
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): new I18nMessages(getMessages#2).__Tag == org/apache/roller/weblogger/util/I18nMessages
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): init'ed(new I18nMessages(getMessages#2).bundle)
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): new I18nMessages(getMessages#2).locale != null
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): new Locale(AbstractWeblogEntriesPager#2) num objects == 0
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): new Locale(AbstractWeblogEntriesPager#2)._tainted == 0
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): new Locale(AbstractWeblogEntriesPager#3)._tainted == 0
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): new Locale(AbstractWeblogEntriesPager#3) num objects == 0
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): new TreeMap(getEntries#1) num objects <= 1
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): new TreeMap(getEntries#3) num objects <= 1
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): Effects-of-calling:org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): Effects-of-calling:org.apache.roller.weblogger.business.Weblogger:getWeblogManager
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:getPubTime
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:getStatus
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): Effects-of-calling:java.lang.String:equals
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): Effects-of-calling:java.lang.Throwable:__curr_excep_obj
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): Effects-of-calling:java.lang.StringBuilder
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): Effects-of-calling:java.lang.StringBuilder:append
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): Effects-of-calling:java.lang.StringBuilder:toString
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): Effects-of-calling:org.apache.roller.weblogger.business.WeblogManager:getWeblogEntryByAnchor
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): Effects-of-calling:java.util.TreeMap
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): Effects-of-calling:java.sql.Timestamp:getTime
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): Effects-of-calling:java.util.Date
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): Effects-of-calling:java.util.Collections:singletonList
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): Effects-of-calling:java.util.Map:put
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): Effects-of-calling:org.apache.commons.logging.Log:error
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:setData
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): Effects-of-calling:java.lang.System:currentTimeMillis
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): Effects-of-calling:java.sql.Timestamp
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:setPubTime
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): Effects-of-calling:java.util.ArrayList
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): Effects-of-calling:org.apache.roller.weblogger.config.WebloggerRuntimeConfig:getIntProperty
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): Effects-of-calling:org.apache.roller.weblogger.pojos.Weblog:getEntryDisplayCount
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): Effects-of-calling:java.lang.String:split
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): Effects-of-calling:java.util.Locale
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): Effects-of-calling:org.apache.roller.weblogger.pojos.Weblog:getLocaleInstance
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): Effects-of-calling:java.util.ResourceBundle:getBundle
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): Effects-of-calling:org.apache.commons.logging.Log:debug
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): Effects-of-calling:java.util.Map:get
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)): Effects-of-calling:java.util.Locale:toString
        
        getEntries();
    }
    //#WeblogEntriesPermalinkPager.java:68: end of method: void org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager.org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager(URLStrategy, Weblog, String, String, String, String, String, List, int)
    
    
    public Map getEntries() {
        if (entries == null) try {
    //#WeblogEntriesPermalinkPager.java:72: method: Map org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager.getEntries()
    //#input(Map getEntries()): log
    //#input(Map getEntries()): this
    //#input(Map getEntries()): this.entries
    //#input(Map getEntries()): this.entryAnchor
    //#input(Map getEntries()): this.weblog
    //#output(Map getEntries()): new TreeMap(getEntries#1) num objects
    //#output(Map getEntries()): return_value
    //#output(Map getEntries()): this.currEntry
    //#output(Map getEntries()): this.entries
    //#new obj(Map getEntries()): new TreeMap(getEntries#1)
    //#pre[3] (Map getEntries()): init'ed(this.entries)
    //#pre[1] (Map getEntries()): (soft) log != null
    //#pre[5] (Map getEntries()): (soft) init'ed(this.entryAnchor)
    //#pre[7] (Map getEntries()): (soft) init'ed(this.weblog)
    //#presumption(Map getEntries()): org.apache.roller.weblogger.business.Weblogger:getWeblogManager(...)@74 != null
    //#presumption(Map getEntries()): org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger(...)@73 != null
    //#presumption(Map getEntries()): org.apache.roller.weblogger.pojos.WeblogEntry:getPubTime(...)@78 != null
    //#presumption(Map getEntries()): org.apache.roller.weblogger.pojos.WeblogEntry:getStatus(...)@76 != null
    //#post(Map getEntries()): return_value == One-of{old this.entries, &new TreeMap(getEntries#1)}
    //#post(Map getEntries()): init'ed(return_value)
    //#post(Map getEntries()): this.entries == return_value
    //#post(Map getEntries()): possibly_updated(this.currEntry)
    //#post(Map getEntries()): new TreeMap(getEntries#1) num objects <= 1
    //#test_vector(Map getEntries()): this.entries: Inverse{null}, Addr_Set{null}
    //#test_vector(Map getEntries()): java.lang.String:equals(...)@76: {0}, {1}
    //#test_vector(Map getEntries()): org.apache.roller.weblogger.business.WeblogManager:getWeblogEntryByAnchor(...)@75: Addr_Set{null}, Inverse{null}
            Weblogger roller = WebloggerFactory.getWeblogger();
    //#WeblogEntriesPermalinkPager.java:73: Warning: method not available
    //#    -- call on Weblogger org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager
    //#    method: Map getEntries()
    //#    unanalyzed callee: Weblogger org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger()
            WeblogManager wmgr = roller.getWeblogManager();
    //#WeblogEntriesPermalinkPager.java:74: Warning: method not available
    //#    -- call on WeblogManager org.apache.roller.weblogger.business.Weblogger:getWeblogManager()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager
    //#    method: Map getEntries()
    //#    unanalyzed callee: WeblogManager org.apache.roller.weblogger.business.Weblogger:getWeblogManager()
            currEntry = wmgr.getWeblogEntryByAnchor(weblog, entryAnchor);
    //#WeblogEntriesPermalinkPager.java:75: Warning: method not available
    //#    -- call on WeblogEntry org.apache.roller.weblogger.business.WeblogManager:getWeblogEntryByAnchor(Weblog, String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager
    //#    method: Map getEntries()
    //#    unanalyzed callee: WeblogEntry org.apache.roller.weblogger.business.WeblogManager:getWeblogEntryByAnchor(Weblog, String)
            if (currEntry != null && currEntry.getStatus().equals(WeblogEntry.PUBLISHED)) {
    //#WeblogEntriesPermalinkPager.java:76: Warning: method not available
    //#    -- call on String org.apache.roller.weblogger.pojos.WeblogEntry:getStatus()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager
    //#    method: Map getEntries()
    //#    unanalyzed callee: String org.apache.roller.weblogger.pojos.WeblogEntry:getStatus()
                entries = new TreeMap();
                entries.put(new Date(currEntry.getPubTime().getTime()),Collections.singletonList(WeblogEntryWrapper.wrap(currEntry, urlStrategy)));
    //#WeblogEntriesPermalinkPager.java:78: Warning: method not available
    //#    -- call on Timestamp org.apache.roller.weblogger.pojos.WeblogEntry:getPubTime()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager
    //#    method: Map getEntries()
    //#    unanalyzed callee: Timestamp org.apache.roller.weblogger.pojos.WeblogEntry:getPubTime()
    //#WeblogEntriesPermalinkPager.java:78: ?use of default init
    //#    init'ed(this.urlStrategy)
    //#    severity: SUPPRESSED
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager
    //#    method: Map getEntries()
    //#    basic block: bb_5
    //#    assertion: init'ed(this.urlStrategy)
    //#    VN: this.urlStrategy
    //#    Expected: Univ-VN-Set
    //#    Bad: {Invalid}
    //#    Attribs:  Ptr  Bad only invalid
            }
        } catch (Exception e) {
            log.error("ERROR: fetching entry");
    //#WeblogEntriesPermalinkPager.java:81: Warning: method not available
    //#    -- call on void org.apache.commons.logging.Log:error(Object)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager
    //#    method: Map getEntries()
    //#    unanalyzed callee: void org.apache.commons.logging.Log:error(Object)
        }


        
        return entries;
    //#WeblogEntriesPermalinkPager.java:86: end of method: Map org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager.getEntries()
    }
    
    
    public String getHomeLink() {
        return createURL(0, 0, weblog, locale, pageLink, null, dateString, catPath, tags);
    //#WeblogEntriesPermalinkPager.java:91: method: String org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager.getHomeLink()
    //#WeblogEntriesPermalinkPager.java:91: Warning: suspicious precondition
    //#    the precondition for this.__Tag is not a contiguous range of values
    //#    severity: SUPPRESSED
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager
    //#    method: String getHomeLink()
    //#    suspicious precondition index: [2]
    //#input(String getHomeLink()): __Descendant_Table[org/apache/roller/weblogger/ui/rendering/pagers/WeblogEntriesPermalinkPager]
    //#input(String getHomeLink()): __Descendant_Table[org/apache/roller/weblogger/ui/rendering/pagers/WeblogEntriesPreviewPager]
    //#input(String getHomeLink()): __Descendant_Table[others]
    //#input(String getHomeLink()): __Dispatch_Table.createURL(IILorg/apache/roller/weblogger/pojos/Weblog;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/List;)Ljava/lang/String;
    //#input(String getHomeLink()): org/apache/roller/weblogger/ui/rendering/pagers/WeblogEntriesPreviewPager.__Dispatch_Table.createURL(IILorg/apache/roller/weblogger/pojos/Weblog;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/List;)Ljava/lang/String;
    //#input(String getHomeLink()): this
    //#input(String getHomeLink()): this.__Tag
    //#input(String getHomeLink()): this.catPath
    //#input(String getHomeLink()): this.dateString
    //#input(String getHomeLink()): this.locale
    //#input(String getHomeLink()): this.pageLink
    //#input(String getHomeLink()): this.tags
    //#input(String getHomeLink()): this.urlStrategy
    //#input(String getHomeLink()): this.weblog
    //#output(String getHomeLink()): return_value
    //#pre[2] (String getHomeLink()): this.__Tag in {org/apache/roller/weblogger/ui/rendering/pagers/WeblogEntriesPermalinkPager, org/apache/roller/weblogger/ui/rendering/pagers/WeblogEntriesPreviewPager}
    //#pre[3] (String getHomeLink()): init'ed(this.catPath)
    //#pre[4] (String getHomeLink()): init'ed(this.dateString)
    //#pre[5] (String getHomeLink()): init'ed(this.locale)
    //#pre[6] (String getHomeLink()): init'ed(this.pageLink)
    //#pre[7] (String getHomeLink()): init'ed(this.tags)
    //#pre[8] (String getHomeLink()): this.urlStrategy != null
    //#pre[9] (String getHomeLink()): init'ed(this.weblog)
    //#post(String getHomeLink()): init'ed(return_value)
    //#unanalyzed(String getHomeLink()): Effects-of-calling:org.apache.roller.weblogger.business.URLStrategy:getWeblogPageURL
    //#unanalyzed(String getHomeLink()): Effects-of-calling:org.apache.roller.weblogger.business.URLStrategy:getWeblogEntryURL
    //#unanalyzed(String getHomeLink()): Effects-of-calling:org.apache.roller.weblogger.business.URLStrategy:getWeblogCollectionURL
    //#WeblogEntriesPermalinkPager.java:91: end of method: String org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager.getHomeLink()
    }
    
    
    public String getHomeName() {
        return messageUtils.getString("weblogEntriesPager.single.home");
    //#WeblogEntriesPermalinkPager.java:96: method: String org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager.getHomeName()
    //#input(String getHomeName()): "Error getting key "._tainted
    //#input(String getHomeName()): "weblogEntriesPager.single.home"._tainted
    //#input(String getHomeName()): org/apache/roller/weblogger/util/I18nMessages.log
    //#input(String getHomeName()): this
    //#input(String getHomeName()): this.messageUtils
    //#input(String getHomeName()): this.messageUtils.bundle
    //#output(String getHomeName()): return_value
    //#pre[2] (String getHomeName()): this.messageUtils != null
    //#pre[3] (String getHomeName()): (soft) this.messageUtils.bundle != null
    //#post(String getHomeName()): init'ed(return_value)
    //#unanalyzed(String getHomeName()): Effects-of-calling:java.lang.StringBuilder
    //#unanalyzed(String getHomeName()): Effects-of-calling:java.lang.StringBuilder:append
    //#unanalyzed(String getHomeName()): Effects-of-calling:java.lang.StringBuilder:toString
    //#unanalyzed(String getHomeName()): Effects-of-calling:java.util.ResourceBundle:getString
    //#unanalyzed(String getHomeName()): Effects-of-calling:java.lang.Throwable:__curr_excep_obj
    //#unanalyzed(String getHomeName()): Effects-of-calling:org.apache.commons.logging.Log:warn
    //#WeblogEntriesPermalinkPager.java:96: end of method: String org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager.getHomeName()
    }
    
    
    public String getNextLink() {
        if (getNextEntry() != null) {
    //#WeblogEntriesPermalinkPager.java:101: method: String org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager.getNextLink()
    //#WeblogEntriesPermalinkPager.java:101: Warning: suspicious precondition
    //#    the precondition for this.__Tag is not a contiguous range of values
    //#    severity: SUPPRESSED
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager
    //#    method: String getNextLink()
    //#    suspicious precondition index: [4]
    //#    Attribs:  Soft
    //#input(String getNextLink()): __Descendant_Table[org/apache/roller/weblogger/ui/rendering/pagers/WeblogEntriesPermalinkPager]
    //#input(String getNextLink()): __Descendant_Table[org/apache/roller/weblogger/ui/rendering/pagers/WeblogEntriesPreviewPager]
    //#input(String getNextLink()): __Descendant_Table[others]
    //#input(String getNextLink()): __Dispatch_Table.createURL(IILorg/apache/roller/weblogger/pojos/Weblog;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/List;)Ljava/lang/String;
    //#input(String getNextLink()): log
    //#input(String getNextLink()): org/apache/roller/weblogger/ui/rendering/pagers/WeblogEntriesPreviewPager.__Dispatch_Table.createURL(IILorg/apache/roller/weblogger/pojos/Weblog;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/List;)Ljava/lang/String;
    //#input(String getNextLink()): this
    //#input(String getNextLink()): this.__Tag
    //#input(String getNextLink()): this.catPath
    //#input(String getNextLink()): this.currEntry
    //#input(String getNextLink()): this.dateString
    //#input(String getNextLink()): this.locale
    //#input(String getNextLink()): this.nextEntry
    //#input(String getNextLink()): this.pageLink
    //#input(String getNextLink()): this.tags
    //#input(String getNextLink()): this.urlStrategy
    //#input(String getNextLink()): this.weblog
    //#output(String getNextLink()): return_value
    //#output(String getNextLink()): this.nextEntry
    //#pre[2] (String getNextLink()): init'ed(this.nextEntry)
    //#pre[1] (String getNextLink()): (soft) log != null
    //#pre[4] (String getNextLink()): (soft) this.__Tag in {org/apache/roller/weblogger/ui/rendering/pagers/WeblogEntriesPermalinkPager, org/apache/roller/weblogger/ui/rendering/pagers/WeblogEntriesPreviewPager}
    //#pre[5] (String getNextLink()): (soft) init'ed(this.catPath)
    //#pre[6] (String getNextLink()): (soft) init'ed(this.currEntry)
    //#pre[7] (String getNextLink()): (soft) init'ed(this.dateString)
    //#pre[8] (String getNextLink()): (soft) init'ed(this.locale)
    //#pre[9] (String getNextLink()): (soft) init'ed(this.pageLink)
    //#pre[10] (String getNextLink()): (soft) init'ed(this.tags)
    //#pre[11] (String getNextLink()): (soft) this.urlStrategy != null
    //#pre[12] (String getNextLink()): (soft) init'ed(this.weblog)
    //#post(String getNextLink()): init'ed(return_value)
    //#post(String getNextLink()): init'ed(this.nextEntry)
    //#unanalyzed(String getNextLink()): Effects-of-calling:org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger
    //#unanalyzed(String getNextLink()): Effects-of-calling:org.apache.roller.weblogger.business.Weblogger:getWeblogManager
    //#unanalyzed(String getNextLink()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:getPubTime
    //#unanalyzed(String getNextLink()): Effects-of-calling:java.util.Date
    //#unanalyzed(String getNextLink()): Effects-of-calling:java.sql.Timestamp:after
    //#unanalyzed(String getNextLink()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:getStatus
    //#unanalyzed(String getNextLink()): Effects-of-calling:java.lang.String:equals
    //#unanalyzed(String getNextLink()): Effects-of-calling:java.lang.Throwable:__curr_excep_obj
    //#unanalyzed(String getNextLink()): Effects-of-calling:org.apache.commons.logging.Log:error
    //#unanalyzed(String getNextLink()): Effects-of-calling:org.apache.roller.weblogger.business.WeblogManager:getNextEntry
    //#unanalyzed(String getNextLink()): Effects-of-calling:org.apache.roller.weblogger.business.URLStrategy:getWeblogPageURL
    //#unanalyzed(String getNextLink()): Effects-of-calling:org.apache.roller.weblogger.business.URLStrategy:getWeblogEntryURL
    //#unanalyzed(String getNextLink()): Effects-of-calling:org.apache.roller.weblogger.business.URLStrategy:getWeblogCollectionURL
            return createURL(0, 0, weblog, locale, pageLink, nextEntry.getAnchor(), dateString, catPath, tags);
    //#WeblogEntriesPermalinkPager.java:102: Warning: method not available
    //#    -- call on String org.apache.roller.weblogger.pojos.WeblogEntry:getAnchor()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager
    //#    method: String getNextLink()
    //#    unanalyzed callee: String org.apache.roller.weblogger.pojos.WeblogEntry:getAnchor()
        }
        return null;
    //#WeblogEntriesPermalinkPager.java:104: end of method: String org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager.getNextLink()
    }
    
    
    public String getNextName() {
        if (getNextEntry() != null) {
    //#WeblogEntriesPermalinkPager.java:109: method: String org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager.getNextName()
    //#input(String getNextName()): " "._tainted
    //#input(String getNextName()): ""._tainted
    //#input(String getNextName()): "..."._tainted
    //#input(String getNextName()): "Error getting key "._tainted
    //#input(String getNextName()): "weblogEntriesPager.single.next"._tainted
    //#input(String getNextName()): log
    //#input(String getNextName()): org/apache/roller/weblogger/util/I18nMessages.log
    //#input(String getNextName()): this
    //#input(String getNextName()): this.currEntry
    //#input(String getNextName()): this.locale
    //#input(String getNextName()): this.messageUtils
    //#input(String getNextName()): this.messageUtils.bundle
    //#input(String getNextName()): this.nextEntry
    //#output(String getNextName()): return_value
    //#output(String getNextName()): this.nextEntry
    //#pre[2] (String getNextName()): init'ed(this.nextEntry)
    //#pre[1] (String getNextName()): (soft) log != null
    //#pre[4] (String getNextName()): (soft) init'ed(this.currEntry)
    //#pre[5] (String getNextName()): (soft) init'ed(this.locale)
    //#pre[6] (String getNextName()): (soft) this.messageUtils != null
    //#pre[7] (String getNextName()): (soft) this.messageUtils.bundle != null
    //#presumption(String getNextName()): org.apache.roller.weblogger.pojos.WeblogEntry:getTitle(...)@110 != null
    //#post(String getNextName()): init'ed(return_value)
    //#post(String getNextName()): init'ed(this.nextEntry)
    //#unanalyzed(String getNextName()): Effects-of-calling:org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger
    //#unanalyzed(String getNextName()): Effects-of-calling:org.apache.roller.weblogger.business.Weblogger:getWeblogManager
    //#unanalyzed(String getNextName()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:getPubTime
    //#unanalyzed(String getNextName()): Effects-of-calling:java.util.Date
    //#unanalyzed(String getNextName()): Effects-of-calling:java.sql.Timestamp:after
    //#unanalyzed(String getNextName()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:getStatus
    //#unanalyzed(String getNextName()): Effects-of-calling:java.lang.String:equals
    //#unanalyzed(String getNextName()): Effects-of-calling:java.lang.Throwable:__curr_excep_obj
    //#unanalyzed(String getNextName()): Effects-of-calling:org.apache.commons.logging.Log:error
    //#unanalyzed(String getNextName()): Effects-of-calling:java.lang.String:indexOf
    //#unanalyzed(String getNextName()): Effects-of-calling:java.lang.String:substring
    //#unanalyzed(String getNextName()): Effects-of-calling:java.lang.StringBuilder
    //#unanalyzed(String getNextName()): Effects-of-calling:java.lang.StringBuilder:append
    //#unanalyzed(String getNextName()): Effects-of-calling:java.lang.String:length
    //#unanalyzed(String getNextName()): Effects-of-calling:java.lang.StringBuilder:toString
    //#unanalyzed(String getNextName()): Effects-of-calling:java.lang.StringBuffer
    //#unanalyzed(String getNextName()): Effects-of-calling:java.lang.StringBuffer:append
    //#unanalyzed(String getNextName()): Effects-of-calling:java.lang.StringBuffer:toString
    //#unanalyzed(String getNextName()): Effects-of-calling:java.lang.String:trim
    //#unanalyzed(String getNextName()): Effects-of-calling:java.lang.String:lastIndexOf
    //#unanalyzed(String getNextName()): Effects-of-calling:java.util.ResourceBundle:getString
    //#unanalyzed(String getNextName()): Effects-of-calling:java.text.MessageFormat:format
    //#unanalyzed(String getNextName()): Effects-of-calling:org.apache.commons.logging.Log:warn
    //#unanalyzed(String getNextName()): Effects-of-calling:org.apache.roller.weblogger.business.WeblogManager:getNextEntry
            String title = Utilities.truncateNicely(getNextEntry().getTitle(), 15, 20, "...");
    //#WeblogEntriesPermalinkPager.java:110: ?null dereference
    //#    getNextEntry(...) != null
    //#    severity: MEDIUM
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager
    //#    method: String getNextName()
    //#    basic block: bb_2
    //#    assertion: getNextEntry(...) != null
    //#    VN: getNextEntry(...)
    //#    Expected: Inverse{null} or Invalid
    //#    Bad: Addr_Set{null}
    //#    Attribs:  Ptr  null in Bad
    //#WeblogEntriesPermalinkPager.java:110: Warning: method not available
    //#    -- call on String org.apache.roller.weblogger.pojos.WeblogEntry:getTitle()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager
    //#    method: String getNextName()
    //#    unanalyzed callee: String org.apache.roller.weblogger.pojos.WeblogEntry:getTitle()
            return messageUtils.getString("weblogEntriesPager.single.next", new Object[] {title});
        }
        return null;
    //#WeblogEntriesPermalinkPager.java:113: end of method: String org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager.getNextName()
    }
    
    
    public String getPrevLink() {
        if (getPrevEntry() != null) {
    //#WeblogEntriesPermalinkPager.java:118: method: String org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager.getPrevLink()
    //#WeblogEntriesPermalinkPager.java:118: Warning: suspicious precondition
    //#    the precondition for this.__Tag is not a contiguous range of values
    //#    severity: SUPPRESSED
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager
    //#    method: String getPrevLink()
    //#    suspicious precondition index: [4]
    //#    Attribs:  Soft
    //#input(String getPrevLink()): __Descendant_Table[org/apache/roller/weblogger/ui/rendering/pagers/WeblogEntriesPermalinkPager]
    //#input(String getPrevLink()): __Descendant_Table[org/apache/roller/weblogger/ui/rendering/pagers/WeblogEntriesPreviewPager]
    //#input(String getPrevLink()): __Descendant_Table[others]
    //#input(String getPrevLink()): __Dispatch_Table.createURL(IILorg/apache/roller/weblogger/pojos/Weblog;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/List;)Ljava/lang/String;
    //#input(String getPrevLink()): log
    //#input(String getPrevLink()): org/apache/roller/weblogger/ui/rendering/pagers/WeblogEntriesPreviewPager.__Dispatch_Table.createURL(IILorg/apache/roller/weblogger/pojos/Weblog;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/List;)Ljava/lang/String;
    //#input(String getPrevLink()): this
    //#input(String getPrevLink()): this.__Tag
    //#input(String getPrevLink()): this.catPath
    //#input(String getPrevLink()): this.currEntry
    //#input(String getPrevLink()): this.dateString
    //#input(String getPrevLink()): this.locale
    //#input(String getPrevLink()): this.pageLink
    //#input(String getPrevLink()): this.prevEntry
    //#input(String getPrevLink()): this.tags
    //#input(String getPrevLink()): this.urlStrategy
    //#input(String getPrevLink()): this.weblog
    //#output(String getPrevLink()): return_value
    //#output(String getPrevLink()): this.prevEntry
    //#pre[2] (String getPrevLink()): init'ed(this.prevEntry)
    //#pre[1] (String getPrevLink()): (soft) log != null
    //#pre[4] (String getPrevLink()): (soft) this.__Tag in {org/apache/roller/weblogger/ui/rendering/pagers/WeblogEntriesPermalinkPager, org/apache/roller/weblogger/ui/rendering/pagers/WeblogEntriesPreviewPager}
    //#pre[5] (String getPrevLink()): (soft) init'ed(this.catPath)
    //#pre[6] (String getPrevLink()): (soft) init'ed(this.currEntry)
    //#pre[7] (String getPrevLink()): (soft) init'ed(this.dateString)
    //#pre[8] (String getPrevLink()): (soft) init'ed(this.locale)
    //#pre[9] (String getPrevLink()): (soft) init'ed(this.pageLink)
    //#pre[10] (String getPrevLink()): (soft) init'ed(this.tags)
    //#pre[11] (String getPrevLink()): (soft) this.urlStrategy != null
    //#pre[12] (String getPrevLink()): (soft) init'ed(this.weblog)
    //#post(String getPrevLink()): init'ed(return_value)
    //#post(String getPrevLink()): init'ed(this.prevEntry)
    //#unanalyzed(String getPrevLink()): Effects-of-calling:org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger
    //#unanalyzed(String getPrevLink()): Effects-of-calling:org.apache.roller.weblogger.business.Weblogger:getWeblogManager
    //#unanalyzed(String getPrevLink()): Effects-of-calling:org.apache.roller.weblogger.business.WeblogManager:getPreviousEntry
    //#unanalyzed(String getPrevLink()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:getPubTime
    //#unanalyzed(String getPrevLink()): Effects-of-calling:java.util.Date
    //#unanalyzed(String getPrevLink()): Effects-of-calling:java.sql.Timestamp:after
    //#unanalyzed(String getPrevLink()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:getStatus
    //#unanalyzed(String getPrevLink()): Effects-of-calling:java.lang.String:equals
    //#unanalyzed(String getPrevLink()): Effects-of-calling:java.lang.Throwable:__curr_excep_obj
    //#unanalyzed(String getPrevLink()): Effects-of-calling:org.apache.commons.logging.Log:error
    //#unanalyzed(String getPrevLink()): Effects-of-calling:org.apache.roller.weblogger.business.URLStrategy:getWeblogPageURL
    //#unanalyzed(String getPrevLink()): Effects-of-calling:org.apache.roller.weblogger.business.URLStrategy:getWeblogEntryURL
    //#unanalyzed(String getPrevLink()): Effects-of-calling:org.apache.roller.weblogger.business.URLStrategy:getWeblogCollectionURL
            return createURL(0, 0, weblog, locale, pageLink, prevEntry.getAnchor(), dateString, catPath, tags);
    //#WeblogEntriesPermalinkPager.java:119: Warning: method not available
    //#    -- call on String org.apache.roller.weblogger.pojos.WeblogEntry:getAnchor()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager
    //#    method: String getPrevLink()
    //#    unanalyzed callee: String org.apache.roller.weblogger.pojos.WeblogEntry:getAnchor()
        }
        return null;
    //#WeblogEntriesPermalinkPager.java:121: end of method: String org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager.getPrevLink()
    }
    
    
    public String getPrevName() {
        if (getPrevEntry() != null) {
    //#WeblogEntriesPermalinkPager.java:126: method: String org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager.getPrevName()
    //#input(String getPrevName()): " "._tainted
    //#input(String getPrevName()): ""._tainted
    //#input(String getPrevName()): "..."._tainted
    //#input(String getPrevName()): "Error getting key "._tainted
    //#input(String getPrevName()): "weblogEntriesPager.single.prev"._tainted
    //#input(String getPrevName()): log
    //#input(String getPrevName()): org/apache/roller/weblogger/util/I18nMessages.log
    //#input(String getPrevName()): this
    //#input(String getPrevName()): this.currEntry
    //#input(String getPrevName()): this.locale
    //#input(String getPrevName()): this.messageUtils
    //#input(String getPrevName()): this.messageUtils.bundle
    //#input(String getPrevName()): this.prevEntry
    //#output(String getPrevName()): return_value
    //#output(String getPrevName()): this.prevEntry
    //#pre[2] (String getPrevName()): init'ed(this.prevEntry)
    //#pre[1] (String getPrevName()): (soft) log != null
    //#pre[4] (String getPrevName()): (soft) init'ed(this.currEntry)
    //#pre[5] (String getPrevName()): (soft) init'ed(this.locale)
    //#pre[6] (String getPrevName()): (soft) this.messageUtils != null
    //#pre[7] (String getPrevName()): (soft) this.messageUtils.bundle != null
    //#presumption(String getPrevName()): org.apache.roller.weblogger.pojos.WeblogEntry:getTitle(...)@127 != null
    //#post(String getPrevName()): init'ed(return_value)
    //#post(String getPrevName()): init'ed(this.prevEntry)
    //#unanalyzed(String getPrevName()): Effects-of-calling:org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger
    //#unanalyzed(String getPrevName()): Effects-of-calling:org.apache.roller.weblogger.business.Weblogger:getWeblogManager
    //#unanalyzed(String getPrevName()): Effects-of-calling:org.apache.roller.weblogger.business.WeblogManager:getPreviousEntry
    //#unanalyzed(String getPrevName()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:getPubTime
    //#unanalyzed(String getPrevName()): Effects-of-calling:java.util.Date
    //#unanalyzed(String getPrevName()): Effects-of-calling:java.sql.Timestamp:after
    //#unanalyzed(String getPrevName()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:getStatus
    //#unanalyzed(String getPrevName()): Effects-of-calling:java.lang.String:equals
    //#unanalyzed(String getPrevName()): Effects-of-calling:java.lang.Throwable:__curr_excep_obj
    //#unanalyzed(String getPrevName()): Effects-of-calling:org.apache.commons.logging.Log:error
    //#unanalyzed(String getPrevName()): Effects-of-calling:java.lang.String:indexOf
    //#unanalyzed(String getPrevName()): Effects-of-calling:java.lang.String:substring
    //#unanalyzed(String getPrevName()): Effects-of-calling:java.lang.StringBuilder
    //#unanalyzed(String getPrevName()): Effects-of-calling:java.lang.StringBuilder:append
    //#unanalyzed(String getPrevName()): Effects-of-calling:java.lang.String:length
    //#unanalyzed(String getPrevName()): Effects-of-calling:java.lang.StringBuilder:toString
    //#unanalyzed(String getPrevName()): Effects-of-calling:java.lang.StringBuffer
    //#unanalyzed(String getPrevName()): Effects-of-calling:java.lang.StringBuffer:append
    //#unanalyzed(String getPrevName()): Effects-of-calling:java.lang.StringBuffer:toString
    //#unanalyzed(String getPrevName()): Effects-of-calling:java.lang.String:trim
    //#unanalyzed(String getPrevName()): Effects-of-calling:java.lang.String:lastIndexOf
    //#unanalyzed(String getPrevName()): Effects-of-calling:java.util.ResourceBundle:getString
    //#unanalyzed(String getPrevName()): Effects-of-calling:java.text.MessageFormat:format
    //#unanalyzed(String getPrevName()): Effects-of-calling:org.apache.commons.logging.Log:warn
            String title = Utilities.truncateNicely(getPrevEntry().getTitle(), 15, 20, "...");
    //#WeblogEntriesPermalinkPager.java:127: ?null dereference
    //#    getPrevEntry(...) != null
    //#    severity: MEDIUM
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager
    //#    method: String getPrevName()
    //#    basic block: bb_2
    //#    assertion: getPrevEntry(...) != null
    //#    VN: getPrevEntry(...)
    //#    Expected: Inverse{null} or Invalid
    //#    Bad: Addr_Set{null}
    //#    Attribs:  Ptr  null in Bad
    //#WeblogEntriesPermalinkPager.java:127: Warning: method not available
    //#    -- call on String org.apache.roller.weblogger.pojos.WeblogEntry:getTitle()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager
    //#    method: String getPrevName()
    //#    unanalyzed callee: String org.apache.roller.weblogger.pojos.WeblogEntry:getTitle()
            return messageUtils.getString("weblogEntriesPager.single.prev", new Object[] {title});
        }
        return null;
    //#WeblogEntriesPermalinkPager.java:130: end of method: String org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager.getPrevName()
    }
    
    
    private WeblogEntry getNextEntry() {
        if (nextEntry == null) try {
    //#WeblogEntriesPermalinkPager.java:135: method: WeblogEntry org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager.getNextEntry()
    //#input(WeblogEntry getNextEntry()): log
    //#input(WeblogEntry getNextEntry()): this
    //#input(WeblogEntry getNextEntry()): this.currEntry
    //#input(WeblogEntry getNextEntry()): this.locale
    //#input(WeblogEntry getNextEntry()): this.nextEntry
    //#output(WeblogEntry getNextEntry()): return_value
    //#output(WeblogEntry getNextEntry()): this.nextEntry
    //#pre[2] (WeblogEntry getNextEntry()): init'ed(this.nextEntry)
    //#pre[1] (WeblogEntry getNextEntry()): (soft) log != null
    //#pre[4] (WeblogEntry getNextEntry()): (soft) init'ed(this.currEntry)
    //#pre[5] (WeblogEntry getNextEntry()): (soft) init'ed(this.locale)
    //#presumption(WeblogEntry getNextEntry()): org.apache.roller.weblogger.business.Weblogger:getWeblogManager(...)@137 != null
    //#presumption(WeblogEntry getNextEntry()): org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger(...)@136 != null
    //#presumption(WeblogEntry getNextEntry()): org.apache.roller.weblogger.pojos.WeblogEntry:getPubTime(...)@140 != null
    //#presumption(WeblogEntry getNextEntry()): org.apache.roller.weblogger.pojos.WeblogEntry:getStatus(...)@140 != null
    //#post(WeblogEntry getNextEntry()): init'ed(return_value)
    //#post(WeblogEntry getNextEntry()): this.nextEntry == return_value
    //#test_vector(WeblogEntry getNextEntry()): this.nextEntry: Inverse{null}, Addr_Set{null}
    //#test_vector(WeblogEntry getNextEntry()): java.lang.String:equals(...)@140: {0}, {1}
    //#test_vector(WeblogEntry getNextEntry()): java.sql.Timestamp:after(...)@140: {0}, {1}
    //#test_vector(WeblogEntry getNextEntry()): org.apache.roller.weblogger.business.WeblogManager:getNextEntry(...)@138: Addr_Set{null}, Inverse{null}
            Weblogger roller = WebloggerFactory.getWeblogger();
    //#WeblogEntriesPermalinkPager.java:136: Warning: method not available
    //#    -- call on Weblogger org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager
    //#    method: WeblogEntry getNextEntry()
    //#    unanalyzed callee: Weblogger org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger()
            WeblogManager wmgr = roller.getWeblogManager();
    //#WeblogEntriesPermalinkPager.java:137: Warning: method not available
    //#    -- call on WeblogManager org.apache.roller.weblogger.business.Weblogger:getWeblogManager()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager
    //#    method: WeblogEntry getNextEntry()
    //#    unanalyzed callee: WeblogManager org.apache.roller.weblogger.business.Weblogger:getWeblogManager()
            nextEntry = wmgr.getNextEntry(currEntry, null, locale);
    //#WeblogEntriesPermalinkPager.java:138: Warning: method not available
    //#    -- call on WeblogEntry org.apache.roller.weblogger.business.WeblogManager:getNextEntry(WeblogEntry, String, String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager
    //#    method: WeblogEntry getNextEntry()
    //#    unanalyzed callee: WeblogEntry org.apache.roller.weblogger.business.WeblogManager:getNextEntry(WeblogEntry, String, String)
            // make sure that entry is published and not to future
            if (nextEntry != null && nextEntry.getPubTime().after(new Date())
    //#WeblogEntriesPermalinkPager.java:140: Warning: method not available
    //#    -- call on Timestamp org.apache.roller.weblogger.pojos.WeblogEntry:getPubTime()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager
    //#    method: WeblogEntry getNextEntry()
    //#    unanalyzed callee: Timestamp org.apache.roller.weblogger.pojos.WeblogEntry:getPubTime()
    //#WeblogEntriesPermalinkPager.java:140: Warning: method not available
    //#    -- call on String org.apache.roller.weblogger.pojos.WeblogEntry:getStatus()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager
    //#    method: WeblogEntry getNextEntry()
    //#    unanalyzed callee: String org.apache.roller.weblogger.pojos.WeblogEntry:getStatus()
            && nextEntry.getStatus().equals(WeblogEntry.PUBLISHED)) {
                nextEntry = null;
            }
        } catch (WebloggerException e) {
            log.error("ERROR: getting next entry", e);
    //#WeblogEntriesPermalinkPager.java:145: Warning: method not available
    //#    -- call on void org.apache.commons.logging.Log:error(Object, Throwable)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager
    //#    method: WeblogEntry getNextEntry()
    //#    unanalyzed callee: void org.apache.commons.logging.Log:error(Object, Throwable)
        }

        return nextEntry;
    //#WeblogEntriesPermalinkPager.java:148: end of method: WeblogEntry org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager.getNextEntry()
    }
    
    
    private WeblogEntry getPrevEntry() {
        if (prevEntry == null) try {
    //#WeblogEntriesPermalinkPager.java:153: method: WeblogEntry org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager.getPrevEntry()
    //#input(WeblogEntry getPrevEntry()): log
    //#input(WeblogEntry getPrevEntry()): this
    //#input(WeblogEntry getPrevEntry()): this.currEntry
    //#input(WeblogEntry getPrevEntry()): this.locale
    //#input(WeblogEntry getPrevEntry()): this.prevEntry
    //#output(WeblogEntry getPrevEntry()): return_value
    //#output(WeblogEntry getPrevEntry()): this.prevEntry
    //#pre[2] (WeblogEntry getPrevEntry()): init'ed(this.prevEntry)
    //#pre[1] (WeblogEntry getPrevEntry()): (soft) log != null
    //#pre[4] (WeblogEntry getPrevEntry()): (soft) init'ed(this.currEntry)
    //#pre[5] (WeblogEntry getPrevEntry()): (soft) init'ed(this.locale)
    //#presumption(WeblogEntry getPrevEntry()): org.apache.roller.weblogger.business.Weblogger:getWeblogManager(...)@155 != null
    //#presumption(WeblogEntry getPrevEntry()): org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger(...)@154 != null
    //#presumption(WeblogEntry getPrevEntry()): org.apache.roller.weblogger.pojos.WeblogEntry:getPubTime(...)@158 != null
    //#presumption(WeblogEntry getPrevEntry()): org.apache.roller.weblogger.pojos.WeblogEntry:getStatus(...)@158 != null
    //#post(WeblogEntry getPrevEntry()): init'ed(return_value)
    //#post(WeblogEntry getPrevEntry()): this.prevEntry == return_value
    //#test_vector(WeblogEntry getPrevEntry()): this.prevEntry: Inverse{null}, Addr_Set{null}
    //#test_vector(WeblogEntry getPrevEntry()): java.lang.String:equals(...)@158: {0}, {1}
    //#test_vector(WeblogEntry getPrevEntry()): java.sql.Timestamp:after(...)@158: {0}, {1}
    //#test_vector(WeblogEntry getPrevEntry()): org.apache.roller.weblogger.business.WeblogManager:getPreviousEntry(...)@156: Addr_Set{null}, Inverse{null}
            Weblogger roller = WebloggerFactory.getWeblogger();
    //#WeblogEntriesPermalinkPager.java:154: Warning: method not available
    //#    -- call on Weblogger org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager
    //#    method: WeblogEntry getPrevEntry()
    //#    unanalyzed callee: Weblogger org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger()
            WeblogManager wmgr = roller.getWeblogManager();
    //#WeblogEntriesPermalinkPager.java:155: Warning: method not available
    //#    -- call on WeblogManager org.apache.roller.weblogger.business.Weblogger:getWeblogManager()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager
    //#    method: WeblogEntry getPrevEntry()
    //#    unanalyzed callee: WeblogManager org.apache.roller.weblogger.business.Weblogger:getWeblogManager()
            prevEntry = wmgr.getPreviousEntry(currEntry, null, locale);
    //#WeblogEntriesPermalinkPager.java:156: Warning: method not available
    //#    -- call on WeblogEntry org.apache.roller.weblogger.business.WeblogManager:getPreviousEntry(WeblogEntry, String, String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager
    //#    method: WeblogEntry getPrevEntry()
    //#    unanalyzed callee: WeblogEntry org.apache.roller.weblogger.business.WeblogManager:getPreviousEntry(WeblogEntry, String, String)
            // make sure that entry is published and not to future
            if (prevEntry != null && prevEntry.getPubTime().after(new Date())
    //#WeblogEntriesPermalinkPager.java:158: Warning: method not available
    //#    -- call on Timestamp org.apache.roller.weblogger.pojos.WeblogEntry:getPubTime()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager
    //#    method: WeblogEntry getPrevEntry()
    //#    unanalyzed callee: Timestamp org.apache.roller.weblogger.pojos.WeblogEntry:getPubTime()
    //#WeblogEntriesPermalinkPager.java:158: Warning: method not available
    //#    -- call on String org.apache.roller.weblogger.pojos.WeblogEntry:getStatus()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager
    //#    method: WeblogEntry getPrevEntry()
    //#    unanalyzed callee: String org.apache.roller.weblogger.pojos.WeblogEntry:getStatus()
            && prevEntry.getStatus().equals(WeblogEntry.PUBLISHED)) {
                prevEntry = null;
            }
        } catch (WebloggerException e) {
            log.error("ERROR: getting prev entry", e);
    //#WeblogEntriesPermalinkPager.java:163: Warning: method not available
    //#    -- call on void org.apache.commons.logging.Log:error(Object, Throwable)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager
    //#    method: WeblogEntry getPrevEntry()
    //#    unanalyzed callee: void org.apache.commons.logging.Log:error(Object, Throwable)
        }

        return prevEntry;
    //#WeblogEntriesPermalinkPager.java:166: end of method: WeblogEntry org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager.getPrevEntry()
    }
    
}
    //#WeblogEntriesPermalinkPager.java:: end of class: org.apache.roller.weblogger.ui.rendering.pagers.WeblogEntriesPermalinkPager
