//# 1 errors, 296 messages
//#
/*
    //#SearchResultsPager.java:1:1: class: org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager
    //#SearchResultsPager.java:1:1: method: org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager.org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager__static_init
 * 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.Locale;
import java.util.Map;
import org.apache.roller.weblogger.business.URLStrategy;
import org.apache.roller.weblogger.pojos.Weblog;
import org.apache.roller.weblogger.ui.rendering.util.WeblogSearchRequest;
import org.apache.roller.weblogger.util.I18nMessages;

/**
 * Pager for navigating through search results.
 */
public class SearchResultsPager implements WeblogEntriesPager {
    
    // message utils for doing i18n messages
    I18nMessages messageUtils = null;
    
    // url strategy
    URLStrategy urlStrategy = null;
    
    private Map entries = null;
    
    private Weblog weblog = null;
    private String      locale = null;
    private String      query = null;
    private String      category = null;
    private int         page = 0;
    private boolean     moreResults = false;
    
    
    public SearchResultsPager() {}
    //#SearchResultsPager.java:49: method: void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager.org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager()
    //#input(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager()): this
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager()): this.category
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager()): this.entries
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager()): this.locale
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager()): this.messageUtils
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager()): this.moreResults
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager()): this.page
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager()): this.query
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager()): this.urlStrategy
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager()): this.weblog
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager()): this.category == null
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager()): this.entries == null
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager()): this.locale == null
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager()): this.messageUtils == null
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager()): this.query == null
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager()): this.urlStrategy == null
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager()): this.weblog == null
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager()): this.moreResults == 0
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager()): this.page == 0
    //#SearchResultsPager.java:49: end of method: void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager.org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager()
    
    public SearchResultsPager(URLStrategy strat, WeblogSearchRequest searchRequest, Map entries, boolean more) {
    //#SearchResultsPager.java:51: method: void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager.org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)
    //#input(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): "request for messages in locale = "._tainted
    //#input(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): entries
    //#input(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): more
    //#input(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): org/apache/roller/weblogger/util/I18nMessages.__Descendant_Table[org/apache/roller/weblogger/util/I18nMessages]
    //#input(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): org/apache/roller/weblogger/util/I18nMessages.__Descendant_Table[others]
    //#input(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): org/apache/roller/weblogger/util/I18nMessages.log
    //#input(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): org/apache/roller/weblogger/util/I18nMessages.messagesMap
    //#input(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): searchRequest
    //#input(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): strat
    //#input(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): this
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): new I18nMessages(getMessages#2) num objects
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): new I18nMessages(getMessages#2).__Tag
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): new I18nMessages(getMessages#2).bundle
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): new I18nMessages(getMessages#2).locale
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): new Locale(SearchResultsPager#1) num objects
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): new Locale(SearchResultsPager#1)._tainted
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): new Locale(SearchResultsPager#2) num objects
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): new Locale(SearchResultsPager#2)._tainted
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): this.category
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): this.entries
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): this.locale
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): this.messageUtils
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): this.moreResults
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): this.page
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): this.query
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): this.urlStrategy
    //#output(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): this.weblog
    //#new obj(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): new I18nMessages(getMessages#2)
    //#new obj(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): new Locale(SearchResultsPager#1)
    //#new obj(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): new Locale(SearchResultsPager#2)
    //#pre[3] (void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): org/apache/roller/weblogger/util/I18nMessages.messagesMap != null
    //#pre[4] (void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): searchRequest != null
    //#presumption(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): org.apache.roller.weblogger.ui.rendering.util.WeblogSearchRequest:getLocale(...)@63 == null
    //#presumption(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): org.apache.roller.weblogger.ui.rendering.util.WeblogSearchRequest:getWeblog(...)@60 != null
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): init'ed(this.category)
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): this.entries == entries
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): init'ed(this.entries)
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): this.locale == null
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): this.messageUtils != null
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): this.moreResults == more
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): init'ed(this.moreResults)
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): init'ed(this.page)
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): init'ed(this.query)
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): this.urlStrategy == strat
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): init'ed(this.urlStrategy)
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): (soft) this.weblog != null
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): new I18nMessages(getMessages#2) num objects <= 1
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): new I18nMessages(getMessages#2).__Tag == org/apache/roller/weblogger/util/I18nMessages
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): init'ed(new I18nMessages(getMessages#2).bundle)
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): new I18nMessages(getMessages#2).locale != null
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): new Locale(SearchResultsPager#1) num objects == 0
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): new Locale(SearchResultsPager#1)._tainted == 0
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): new Locale(SearchResultsPager#2)._tainted == 0
    //#post(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): new Locale(SearchResultsPager#2) num objects == 0
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): Effects-of-calling:java.util.ResourceBundle:getBundle
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): Effects-of-calling:java.lang.StringBuilder
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): Effects-of-calling:java.lang.StringBuilder:append
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): Effects-of-calling:java.lang.StringBuilder:toString
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): Effects-of-calling:org.apache.commons.logging.Log:debug
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): Effects-of-calling:java.util.Map:get
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): Effects-of-calling:java.util.Map:put
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)): Effects-of-calling:java.util.Locale:toString
        
        // url strategy for building urls
        this.urlStrategy = strat;
        
        // store search results
        this.entries = entries;
        
        // data from search request
        this.weblog = searchRequest.getWeblog();
    //#SearchResultsPager.java:60: Warning: method not available
    //#    -- call on Weblog org.apache.roller.weblogger.ui.rendering.util.WeblogSearchRequest:getWeblog()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager
    //#    method: void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)
    //#    unanalyzed callee: Weblog org.apache.roller.weblogger.ui.rendering.util.WeblogSearchRequest:getWeblog()
        this.query = searchRequest.getQuery();
    //#SearchResultsPager.java:61: Warning: method not available
    //#    -- call on String org.apache.roller.weblogger.ui.rendering.util.WeblogSearchRequest:getQuery()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager
    //#    method: void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)
    //#    unanalyzed callee: String org.apache.roller.weblogger.ui.rendering.util.WeblogSearchRequest:getQuery()
        this.category = searchRequest.getWeblogCategoryName();
    //#SearchResultsPager.java:62: Warning: method not available
    //#    -- call on String org.apache.roller.weblogger.ui.rendering.util.WeblogSearchRequest:getWeblogCategoryName()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager
    //#    method: void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)
    //#    unanalyzed callee: String org.apache.roller.weblogger.ui.rendering.util.WeblogSearchRequest:getWeblogCategoryName()
        this.locale = searchRequest.getLocale();
    //#SearchResultsPager.java:63: Warning: method not available
    //#    -- call on String org.apache.roller.weblogger.ui.rendering.util.WeblogSearchRequest:getLocale()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager
    //#    method: void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)
    //#    unanalyzed callee: String org.apache.roller.weblogger.ui.rendering.util.WeblogSearchRequest:getLocale()
        this.page = searchRequest.getPageNum();
    //#SearchResultsPager.java:64: Warning: method not available
    //#    -- call on int org.apache.roller.weblogger.ui.rendering.util.WeblogSearchRequest:getPageNum()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager
    //#    method: void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)
    //#    unanalyzed callee: int org.apache.roller.weblogger.ui.rendering.util.WeblogSearchRequest:getPageNum()
        
        // does this pager have more results?
        this.moreResults = more;
        
        // get a message utils instance to handle i18n of messages
        Locale viewLocale = null;
        if(locale != null) {
    //#SearchResultsPager.java:71: Warning: test always goes same way
    //#    test predetermined because this.locale == null
    //#    severity: LOW
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager
    //#    method: void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)
    //#    from bb: Entry_BB_1
    //#    live edge: Entry_BB_1-->bb_7
    //#    tested vn: org.apache.roller.weblogger.ui.rendering.util.WeblogSearchRequest:getLocale(...)@63 == null
    //#    tested vn values: {1}
            String[] langCountry = locale.split("_");
    //#SearchResultsPager.java:72: Warning: dead code
    //#    dead code here because this.locale == null
    //#    severity: LOW
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager
    //#    method: void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)
    //#    dead bb: bb_2
            if(langCountry.length == 1) {
                viewLocale = new Locale(langCountry[0]);
    //#SearchResultsPager.java:74: Warning: dead code continues
    //#    dead code continues
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager
    //#    method: void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)
    //#    dead bb: bb_3
            } else if(langCountry.length == 2) {
    //#SearchResultsPager.java:75: Warning: dead code continues
    //#    dead code continues
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager
    //#    method: void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)
    //#    dead bb: bb_4
                viewLocale = new Locale(langCountry[0], langCountry[1]);
    //#SearchResultsPager.java:76: Warning: dead code continues
    //#    dead code continues
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager
    //#    method: void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)
    //#    dead bb: bb_5
            }
        } else {
    //#SearchResultsPager.java:78: Warning: dead code continues
    //#    dead code continues
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager
    //#    method: void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)
    //#    dead bb: bb_6
            viewLocale = weblog.getLocaleInstance();
    //#SearchResultsPager.java:79: Warning: method not available
    //#    -- call on Locale org.apache.roller.weblogger.pojos.Weblog:getLocaleInstance()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager
    //#    method: void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)
    //#    unanalyzed callee: Locale org.apache.roller.weblogger.pojos.Weblog:getLocaleInstance()
        }
        this.messageUtils = I18nMessages.getMessages(viewLocale);
    //#SearchResultsPager.java:81: ?precondition failure
    //#    org/apache/roller/weblogger/util/I18nMessages.getMessages: locale != null
    //#    severity: MEDIUM
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager
    //#    method: void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)
    //#    basic block: bb_8
    //#    assertion: viewLocale != null
    //#    callee: I18nMessages org/apache/roller/weblogger/util/I18nMessages.getMessages(Locale)
    //#    callee assertion: locale != null
    //#    callee file: I18nMessages.java
    //#    callee precondition index: [1]
    //#    callee srcpos: 87
    //#    VN: viewLocale
    //#    Expected: Inverse{null}
    //#    Bad: Addr_Set{null}
    //#    Attribs:  Ptr  null in Bad
    }
    //#SearchResultsPager.java:82: end of method: void org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager.org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager(URLStrategy, WeblogSearchRequest, Map, bool)
    
    
    public Map getEntries() {
        return entries;
    //#SearchResultsPager.java:86: method: Map org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager.getEntries()
    //#input(Map getEntries()): this
    //#input(Map getEntries()): this.entries
    //#output(Map getEntries()): return_value
    //#pre[2] (Map getEntries()): init'ed(this.entries)
    //#post(Map getEntries()): return_value == this.entries
    //#post(Map getEntries()): init'ed(return_value)
    //#SearchResultsPager.java:86: end of method: Map org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager.getEntries()
    }
    
    
    public String getHomeLink() {
        return urlStrategy.getWeblogURL(weblog, locale, false);
    //#SearchResultsPager.java:91: method: String org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager.getHomeLink()
    //#SearchResultsPager.java:91: Warning: method not available
    //#    -- call on String org.apache.roller.weblogger.business.URLStrategy:getWeblogURL(Weblog, String, bool)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager
    //#    method: String getHomeLink()
    //#    unanalyzed callee: String org.apache.roller.weblogger.business.URLStrategy:getWeblogURL(Weblog, String, bool)
    //#input(String getHomeLink()): this
    //#input(String getHomeLink()): this.locale
    //#input(String getHomeLink()): this.urlStrategy
    //#input(String getHomeLink()): this.weblog
    //#output(String getHomeLink()): return_value
    //#pre[2] (String getHomeLink()): init'ed(this.locale)
    //#pre[3] (String getHomeLink()): this.urlStrategy != null
    //#pre[4] (String getHomeLink()): init'ed(this.weblog)
    //#post(String getHomeLink()): init'ed(return_value)
    //#SearchResultsPager.java:91: end of method: String org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager.getHomeLink()
    }

    public String getHomeName() {
        return messageUtils.getString("searchPager.home");
    //#SearchResultsPager.java:95: method: String org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager.getHomeName()
    //#input(String getHomeName()): "Error getting key "._tainted
    //#input(String getHomeName()): "searchPager.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
    //#SearchResultsPager.java:95: end of method: String org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager.getHomeName()
    }

    
    public String getNextLink() {
        if(moreResults) {
    //#SearchResultsPager.java:100: method: String org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager.getNextLink()
    //#input(String getNextLink()): this
    //#input(String getNextLink()): this.category
    //#input(String getNextLink()): this.locale
    //#input(String getNextLink()): this.moreResults
    //#input(String getNextLink()): this.page
    //#input(String getNextLink()): this.query
    //#input(String getNextLink()): this.urlStrategy
    //#input(String getNextLink()): this.weblog
    //#output(String getNextLink()): return_value
    //#pre[4] (String getNextLink()): init'ed(this.moreResults)
    //#pre[2] (String getNextLink()): (soft) init'ed(this.category)
    //#pre[3] (String getNextLink()): (soft) init'ed(this.locale)
    //#pre[5] (String getNextLink()): (soft) this.page <= 4_294_967_294
    //#pre[6] (String getNextLink()): (soft) init'ed(this.query)
    //#pre[7] (String getNextLink()): (soft) this.urlStrategy != null
    //#pre[8] (String getNextLink()): (soft) init'ed(this.weblog)
    //#post(String getNextLink()): init'ed(return_value)
    //#test_vector(String getNextLink()): this.moreResults: {0}, {1}
            return urlStrategy.getWeblogSearchURL(weblog, locale, query, category, page + 1, false);
    //#SearchResultsPager.java:101: Warning: method not available
    //#    -- call on String org.apache.roller.weblogger.business.URLStrategy:getWeblogSearchURL(Weblog, String, String, String, int, bool)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager
    //#    method: String getNextLink()
    //#    unanalyzed callee: String org.apache.roller.weblogger.business.URLStrategy:getWeblogSearchURL(Weblog, String, String, String, int, bool)
        }
        return null;
    //#SearchResultsPager.java:103: end of method: String org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager.getNextLink()
    }

    public String getNextName() {
        if (getNextLink() != null) {
    //#SearchResultsPager.java:107: method: String org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager.getNextName()
    //#input(String getNextName()): "Error getting key "._tainted
    //#input(String getNextName()): "searchPager.next"._tainted
    //#input(String getNextName()): __Descendant_Table[org/apache/roller/weblogger/ui/rendering/pagers/SearchResultsPager]
    //#input(String getNextName()): __Descendant_Table[others]
    //#input(String getNextName()): __Dispatch_Table.getNextLink()Ljava/lang/String;
    //#input(String getNextName()): org/apache/roller/weblogger/util/I18nMessages.log
    //#input(String getNextName()): this
    //#input(String getNextName()): this.__Tag
    //#input(String getNextName()): this.category
    //#input(String getNextName()): this.locale
    //#input(String getNextName()): this.messageUtils
    //#input(String getNextName()): this.messageUtils.bundle
    //#input(String getNextName()): this.moreResults
    //#input(String getNextName()): this.page
    //#input(String getNextName()): this.query
    //#input(String getNextName()): this.urlStrategy
    //#input(String getNextName()): this.weblog
    //#output(String getNextName()): return_value
    //#pre[2] (String getNextName()): this.__Tag == org/apache/roller/weblogger/ui/rendering/pagers/SearchResultsPager
    //#pre[7] (String getNextName()): init'ed(this.moreResults)
    //#pre[3] (String getNextName()): (soft) init'ed(this.category)
    //#pre[4] (String getNextName()): (soft) init'ed(this.locale)
    //#pre[5] (String getNextName()): (soft) this.messageUtils != null
    //#pre[6] (String getNextName()): (soft) this.messageUtils.bundle != null
    //#pre[8] (String getNextName()): (soft) this.page <= 4_294_967_294
    //#pre[9] (String getNextName()): (soft) init'ed(this.query)
    //#pre[10] (String getNextName()): (soft) this.urlStrategy != null
    //#pre[11] (String getNextName()): (soft) init'ed(this.weblog)
    //#post(String getNextName()): init'ed(return_value)
    //#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.StringBuilder:toString
    //#unanalyzed(String getNextName()): Effects-of-calling:java.util.ResourceBundle:getString
    //#unanalyzed(String getNextName()): Effects-of-calling:java.lang.Throwable:__curr_excep_obj
    //#unanalyzed(String getNextName()): Effects-of-calling:org.apache.commons.logging.Log:warn
    //#unanalyzed(String getNextName()): Effects-of-calling:org.apache.roller.weblogger.business.URLStrategy:getWeblogSearchURL
            return messageUtils.getString("searchPager.next");
        }
        return null;
    //#SearchResultsPager.java:110: end of method: String org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager.getNextName()
    }

    public String getPrevLink() {
        if(page > 0) {
    //#SearchResultsPager.java:114: method: String org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager.getPrevLink()
    //#input(String getPrevLink()): this
    //#input(String getPrevLink()): this.category
    //#input(String getPrevLink()): this.locale
    //#input(String getPrevLink()): this.page
    //#input(String getPrevLink()): this.query
    //#input(String getPrevLink()): this.urlStrategy
    //#input(String getPrevLink()): this.weblog
    //#output(String getPrevLink()): return_value
    //#pre[4] (String getPrevLink()): init'ed(this.page)
    //#pre[2] (String getPrevLink()): (soft) init'ed(this.category)
    //#pre[3] (String getPrevLink()): (soft) init'ed(this.locale)
    //#pre[5] (String getPrevLink()): (soft) init'ed(this.query)
    //#pre[6] (String getPrevLink()): (soft) this.urlStrategy != null
    //#pre[7] (String getPrevLink()): (soft) init'ed(this.weblog)
    //#post(String getPrevLink()): init'ed(return_value)
    //#test_vector(String getPrevLink()): this.page: {-2_147_483_648..0}, {1..4_294_967_295}
            return urlStrategy.getWeblogSearchURL(weblog, locale, query, category, page - 1, false);
    //#SearchResultsPager.java:115: Warning: method not available
    //#    -- call on String org.apache.roller.weblogger.business.URLStrategy:getWeblogSearchURL(Weblog, String, String, String, int, bool)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager
    //#    method: String getPrevLink()
    //#    unanalyzed callee: String org.apache.roller.weblogger.business.URLStrategy:getWeblogSearchURL(Weblog, String, String, String, int, bool)
        }
        return null;
    //#SearchResultsPager.java:117: end of method: String org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager.getPrevLink()
    }

    public String getPrevName() {
        if (getPrevLink() != null) {
    //#SearchResultsPager.java:121: method: String org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager.getPrevName()
    //#input(String getPrevName()): "Error getting key "._tainted
    //#input(String getPrevName()): "searchPager.prev"._tainted
    //#input(String getPrevName()): __Descendant_Table[org/apache/roller/weblogger/ui/rendering/pagers/SearchResultsPager]
    //#input(String getPrevName()): __Descendant_Table[others]
    //#input(String getPrevName()): __Dispatch_Table.getPrevLink()Ljava/lang/String;
    //#input(String getPrevName()): org/apache/roller/weblogger/util/I18nMessages.log
    //#input(String getPrevName()): this
    //#input(String getPrevName()): this.__Tag
    //#input(String getPrevName()): this.category
    //#input(String getPrevName()): this.locale
    //#input(String getPrevName()): this.messageUtils
    //#input(String getPrevName()): this.messageUtils.bundle
    //#input(String getPrevName()): this.page
    //#input(String getPrevName()): this.query
    //#input(String getPrevName()): this.urlStrategy
    //#input(String getPrevName()): this.weblog
    //#output(String getPrevName()): return_value
    //#pre[2] (String getPrevName()): this.__Tag == org/apache/roller/weblogger/ui/rendering/pagers/SearchResultsPager
    //#pre[7] (String getPrevName()): init'ed(this.page)
    //#pre[3] (String getPrevName()): (soft) init'ed(this.category)
    //#pre[4] (String getPrevName()): (soft) init'ed(this.locale)
    //#pre[5] (String getPrevName()): (soft) this.messageUtils != null
    //#pre[6] (String getPrevName()): (soft) this.messageUtils.bundle != null
    //#pre[8] (String getPrevName()): (soft) init'ed(this.query)
    //#pre[9] (String getPrevName()): (soft) this.urlStrategy != null
    //#pre[10] (String getPrevName()): (soft) init'ed(this.weblog)
    //#post(String getPrevName()): init'ed(return_value)
    //#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.StringBuilder:toString
    //#unanalyzed(String getPrevName()): Effects-of-calling:java.util.ResourceBundle:getString
    //#unanalyzed(String getPrevName()): Effects-of-calling:java.lang.Throwable:__curr_excep_obj
    //#unanalyzed(String getPrevName()): Effects-of-calling:org.apache.commons.logging.Log:warn
    //#unanalyzed(String getPrevName()): Effects-of-calling:org.apache.roller.weblogger.business.URLStrategy:getWeblogSearchURL
            return messageUtils.getString("searchPager.prev");
        }
        return null;
    //#SearchResultsPager.java:124: end of method: String org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager.getPrevName()
    }

    
    public String getNextCollectionLink() {
        return null;
    //#SearchResultsPager.java:129: method: String org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager.getNextCollectionLink()
    //#output(String getNextCollectionLink()): return_value
    //#post(String getNextCollectionLink()): return_value == null
    //#SearchResultsPager.java:129: end of method: String org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager.getNextCollectionLink()
    }

    public String getNextCollectionName() {
        return null;
    //#SearchResultsPager.java:133: method: String org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager.getNextCollectionName()
    //#output(String getNextCollectionName()): return_value
    //#post(String getNextCollectionName()): return_value == null
    //#SearchResultsPager.java:133: end of method: String org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager.getNextCollectionName()
    }

    public String getPrevCollectionLink() {
        return null;
    //#SearchResultsPager.java:137: method: String org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager.getPrevCollectionLink()
    //#output(String getPrevCollectionLink()): return_value
    //#post(String getPrevCollectionLink()): return_value == null
    //#SearchResultsPager.java:137: end of method: String org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager.getPrevCollectionLink()
    }

    public String getPrevCollectionName() {
        return null;
    //#SearchResultsPager.java:141: method: String org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager.getPrevCollectionName()
    //#output(String getPrevCollectionName()): return_value
    //#post(String getPrevCollectionName()): return_value == null
    //#SearchResultsPager.java:141: end of method: String org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager.getPrevCollectionName()
    }
    
}
    //#output(org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager__static_init): __Descendant_Table[org/apache/roller/weblogger/ui/rendering/pagers/SearchResultsPager]
    //#output(org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager__static_init): __Dispatch_Table.getEntries()Ljava/util/Map;
    //#output(org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager__static_init): __Dispatch_Table.getHomeLink()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager__static_init): __Dispatch_Table.getHomeName()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager__static_init): __Dispatch_Table.getNextCollectionLink()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager__static_init): __Dispatch_Table.getNextCollectionName()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager__static_init): __Dispatch_Table.getNextLink()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager__static_init): __Dispatch_Table.getNextName()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager__static_init): __Dispatch_Table.getPrevCollectionLink()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager__static_init): __Dispatch_Table.getPrevCollectionName()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager__static_init): __Dispatch_Table.getPrevLink()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager__static_init): __Dispatch_Table.getPrevName()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager__static_init): org/apache/roller/weblogger/ui/rendering/pagers/WeblogEntriesPager.__Descendant_Table[org/apache/roller/weblogger/ui/rendering/pagers/SearchResultsPager]
    //#post(org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager__static_init): __Descendant_Table[org/apache/roller/weblogger/ui/rendering/pagers/SearchResultsPager] == &__Dispatch_Table
    //#post(org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager__static_init): org/apache/roller/weblogger/ui/rendering/pagers/WeblogEntriesPager.__Descendant_Table[org/apache/roller/weblogger/ui/rendering/pagers/SearchResultsPager] == &__Dispatch_Table
    //#post(org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager__static_init): __Dispatch_Table.getEntries()Ljava/util/Map; == &getEntries
    //#post(org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager__static_init): __Dispatch_Table.getHomeLink()Ljava/lang/String; == &getHomeLink
    //#post(org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager__static_init): __Dispatch_Table.getHomeName()Ljava/lang/String; == &getHomeName
    //#post(org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager__static_init): __Dispatch_Table.getNextCollectionLink()Ljava/lang/String; == &getNextCollectionLink
    //#post(org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager__static_init): __Dispatch_Table.getNextCollectionName()Ljava/lang/String; == &getNextCollectionName
    //#post(org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager__static_init): __Dispatch_Table.getNextLink()Ljava/lang/String; == &getNextLink
    //#post(org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager__static_init): __Dispatch_Table.getNextName()Ljava/lang/String; == &getNextName
    //#post(org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager__static_init): __Dispatch_Table.getPrevCollectionLink()Ljava/lang/String; == &getPrevCollectionLink
    //#post(org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager__static_init): __Dispatch_Table.getPrevCollectionName()Ljava/lang/String; == &getPrevCollectionName
    //#post(org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager__static_init): __Dispatch_Table.getPrevLink()Ljava/lang/String; == &getPrevLink
    //#post(org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager__static_init): __Dispatch_Table.getPrevName()Ljava/lang/String; == &getPrevName
    //#SearchResultsPager.java:: end of method: org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager.org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager__static_init
    //#SearchResultsPager.java:: end of class: org.apache.roller.weblogger.ui.rendering.pagers.SearchResultsPager
