//# 0 errors, 241 messages
//#
/*
    //#WeblogPreviewResourceRequest.java:1:1: class: org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest
 * 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.util;

import javax.servlet.http.HttpServletRequest;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.roller.weblogger.WebloggerException;
import org.apache.roller.weblogger.business.themes.ThemeNotFoundException;
import org.apache.roller.weblogger.business.WebloggerFactory;
import org.apache.roller.weblogger.business.themes.ThemeManager;
import org.apache.roller.weblogger.pojos.Theme;


/**
 *
 */
public class WeblogPreviewResourceRequest extends WeblogResourceRequest {
    
    private static Log log = LogFactory.getLog(WeblogPreviewResourceRequest.class);
    //#WeblogPreviewResourceRequest.java:36: method: org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest.org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init
    //#WeblogPreviewResourceRequest.java:36: Warning: method not available
    //#    -- call on Log org.apache.commons.logging.LogFactory:getLog(Class)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest
    //#    method: org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init
    //#    unanalyzed callee: Log org.apache.commons.logging.LogFactory:getLog(Class)
    //#output(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Descendant_Table[org/apache/roller/weblogger/ui/rendering/util/WeblogPreviewResourceRequest]
    //#output(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Dispatch_Table.getAuthenticUser()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Dispatch_Table.getLocale()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Dispatch_Table.getLocaleInstance()Ljava/util/Locale;
    //#output(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Dispatch_Table.getPathInfo()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Dispatch_Table.getResourcePath()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Dispatch_Table.getTheme()Lorg/apache/roller/weblogger/pojos/Theme;
    //#output(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Dispatch_Table.getThemeName()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Dispatch_Table.getUser()Lorg/apache/roller/weblogger/pojos/User;
    //#output(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Dispatch_Table.getWeblog()Lorg/apache/roller/weblogger/pojos/Weblog;
    //#output(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Dispatch_Table.getWeblogHandle()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Dispatch_Table.isLocale(Ljava/lang/String;)Z
    //#output(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Dispatch_Table.isLoggedIn()Z
    //#output(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Dispatch_Table.setAuthenticUser(Ljava/lang/String;)V
    //#output(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Dispatch_Table.setLocale(Ljava/lang/String;)V
    //#output(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Dispatch_Table.setLocaleInstance(Ljava/util/Locale;)V
    //#output(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Dispatch_Table.setPathInfo(Ljava/lang/String;)V
    //#output(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Dispatch_Table.setResourcePath(Ljava/lang/String;)V
    //#output(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Dispatch_Table.setTheme(Lorg/apache/roller/weblogger/pojos/Theme;)V
    //#output(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Dispatch_Table.setThemeName(Ljava/lang/String;)V
    //#output(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Dispatch_Table.setUser(Lorg/apache/roller/weblogger/pojos/User;)V
    //#output(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Dispatch_Table.setWeblog(Lorg/apache/roller/weblogger/pojos/Weblog;)V
    //#output(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Dispatch_Table.setWeblogHandle(Ljava/lang/String;)V
    //#output(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): log
    //#output(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): org/apache/roller/weblogger/ui/rendering/util/ParsedRequest.__Descendant_Table[org/apache/roller/weblogger/ui/rendering/util/WeblogPreviewResourceRequest]
    //#output(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): org/apache/roller/weblogger/ui/rendering/util/WeblogRequest.__Descendant_Table[org/apache/roller/weblogger/ui/rendering/util/WeblogPreviewResourceRequest]
    //#output(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): org/apache/roller/weblogger/ui/rendering/util/WeblogResourceRequest.__Descendant_Table[org/apache/roller/weblogger/ui/rendering/util/WeblogPreviewResourceRequest]
    //#post(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Descendant_Table[org/apache/roller/weblogger/ui/rendering/util/WeblogPreviewResourceRequest] == &__Dispatch_Table
    //#post(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): org/apache/roller/weblogger/ui/rendering/util/ParsedRequest.__Descendant_Table[org/apache/roller/weblogger/ui/rendering/util/WeblogPreviewResourceRequest] == &__Dispatch_Table
    //#post(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): org/apache/roller/weblogger/ui/rendering/util/WeblogRequest.__Descendant_Table[org/apache/roller/weblogger/ui/rendering/util/WeblogPreviewResourceRequest] == &__Dispatch_Table
    //#post(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): org/apache/roller/weblogger/ui/rendering/util/WeblogResourceRequest.__Descendant_Table[org/apache/roller/weblogger/ui/rendering/util/WeblogPreviewResourceRequest] == &__Dispatch_Table
    //#post(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Dispatch_Table.getAuthenticUser()Ljava/lang/String; == &getAuthenticUser
    //#post(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Dispatch_Table.getLocale()Ljava/lang/String; == &org/apache/roller/weblogger/ui/rendering/util/WeblogRequest.getLocale
    //#post(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Dispatch_Table.getLocaleInstance()Ljava/util/Locale; == &org/apache/roller/weblogger/ui/rendering/util/WeblogRequest.getLocaleInstance
    //#post(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Dispatch_Table.getPathInfo()Ljava/lang/String; == &org/apache/roller/weblogger/ui/rendering/util/WeblogRequest.getPathInfo
    //#post(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Dispatch_Table.getResourcePath()Ljava/lang/String; == &org/apache/roller/weblogger/ui/rendering/util/WeblogResourceRequest.getResourcePath
    //#post(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Dispatch_Table.getTheme()Lorg/apache/roller/weblogger/pojos/Theme; == &getTheme
    //#post(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Dispatch_Table.getThemeName()Ljava/lang/String; == &getThemeName
    //#post(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Dispatch_Table.getUser()Lorg/apache/roller/weblogger/pojos/User; == &org/apache/roller/weblogger/ui/rendering/util/ParsedRequest.getUser
    //#post(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Dispatch_Table.getWeblog()Lorg/apache/roller/weblogger/pojos/Weblog; == &org/apache/roller/weblogger/ui/rendering/util/WeblogRequest.getWeblog
    //#post(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Dispatch_Table.getWeblogHandle()Ljava/lang/String; == &org/apache/roller/weblogger/ui/rendering/util/WeblogRequest.getWeblogHandle
    //#post(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Dispatch_Table.isLocale(Ljava/lang/String;)Z == &org/apache/roller/weblogger/ui/rendering/util/WeblogResourceRequest.isLocale
    //#post(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Dispatch_Table.isLoggedIn()Z == &isLoggedIn
    //#post(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Dispatch_Table.setAuthenticUser(Ljava/lang/String;)V == &org/apache/roller/weblogger/ui/rendering/util/ParsedRequest.setAuthenticUser
    //#post(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Dispatch_Table.setLocale(Ljava/lang/String;)V == &org/apache/roller/weblogger/ui/rendering/util/WeblogRequest.setLocale
    //#post(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Dispatch_Table.setLocaleInstance(Ljava/util/Locale;)V == &org/apache/roller/weblogger/ui/rendering/util/WeblogRequest.setLocaleInstance
    //#post(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Dispatch_Table.setPathInfo(Ljava/lang/String;)V == &org/apache/roller/weblogger/ui/rendering/util/WeblogRequest.setPathInfo
    //#post(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Dispatch_Table.setResourcePath(Ljava/lang/String;)V == &org/apache/roller/weblogger/ui/rendering/util/WeblogResourceRequest.setResourcePath
    //#post(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Dispatch_Table.setTheme(Lorg/apache/roller/weblogger/pojos/Theme;)V == &setTheme
    //#post(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Dispatch_Table.setThemeName(Ljava/lang/String;)V == &setThemeName
    //#post(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Dispatch_Table.setUser(Lorg/apache/roller/weblogger/pojos/User;)V == &org/apache/roller/weblogger/ui/rendering/util/ParsedRequest.setUser
    //#post(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Dispatch_Table.setWeblog(Lorg/apache/roller/weblogger/pojos/Weblog;)V == &org/apache/roller/weblogger/ui/rendering/util/WeblogRequest.setWeblog
    //#post(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): __Dispatch_Table.setWeblogHandle(Ljava/lang/String;)V == &org/apache/roller/weblogger/ui/rendering/util/WeblogRequest.setWeblogHandle
    //#post(org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init): init'ed(log)
    //#WeblogPreviewResourceRequest.java:36: end of method: org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest.org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest__static_init
        
    // lightweight attributes
    private String themeName = null;
    
    // heavyweight attributes
    private Theme theme = null;
    
    
    public WeblogPreviewResourceRequest() {}
    //#WeblogPreviewResourceRequest.java:45: method: void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest.org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest()
    //#input(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest()): this
    //#output(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest()): this.authenticUser
    //#output(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest()): this.locale
    //#output(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest()): this.localeInstance
    //#output(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest()): this.pathInfo
    //#output(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest()): this.request
    //#output(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest()): this.resourcePath
    //#output(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest()): this.theme
    //#output(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest()): this.themeName
    //#output(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest()): this.user
    //#output(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest()): this.weblog
    //#output(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest()): this.weblogHandle
    //#post(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest()): this.authenticUser == null
    //#post(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest()): this.locale == null
    //#post(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest()): this.localeInstance == null
    //#post(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest()): this.pathInfo == null
    //#post(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest()): this.request == null
    //#post(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest()): this.resourcePath == null
    //#post(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest()): this.theme == null
    //#post(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest()): this.themeName == null
    //#post(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest()): this.user == null
    //#post(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest()): this.weblog == null
    //#post(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest()): this.weblogHandle == null
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest()): Effects-of-calling:org.apache.roller.weblogger.ui.rendering.util.WeblogRequest
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest()): Effects-of-calling:org.apache.roller.weblogger.ui.rendering.util.ParsedRequest
    //#WeblogPreviewResourceRequest.java:45: end of method: void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest.org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest()
    
    
    public WeblogPreviewResourceRequest(HttpServletRequest request) 
            throws InvalidRequestException {
        
        // let parent go first
        super(request);
    //#WeblogPreviewResourceRequest.java:52: method: void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest.org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)
    //#WeblogPreviewResourceRequest.java:52: Warning: suspicious precondition
    //#    the precondition for this.__Tag is not a contiguous range of values
    //#    severity: SUPPRESSED
    //#    class: org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest
    //#    method: void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)
    //#    suspicious precondition index: [2]
    //#input(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): "handle = "._tainted
    //#input(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): "invalid resource path info, "._tainted
    //#input(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): "locale = "._tainted
    //#input(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): "not a weblog request, "._tainted
    //#input(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): "parsing path "._tainted
    //#input(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): "pathInfo = "._tainted
    //#input(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): "resourcePath = "._tainted
    //#input(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): "theme = "._tainted
    //#input(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): __Dispatch_Table.getPathInfo()Ljava/lang/String;
    //#input(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): __Dispatch_Table.isLocale(Ljava/lang/String;)Z
    //#input(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): log
    //#input(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): org/apache/roller/weblogger/ui/rendering/util/WeblogCommentRequest.__Dispatch_Table.isLocale(Ljava/lang/String;)Z
    //#input(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): org/apache/roller/weblogger/ui/rendering/util/WeblogFeedRequest.__Dispatch_Table.isLocale(Ljava/lang/String;)Z
    //#input(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): org/apache/roller/weblogger/ui/rendering/util/WeblogPageRequest.__Dispatch_Table.isLocale(Ljava/lang/String;)Z
    //#input(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): org/apache/roller/weblogger/ui/rendering/util/WeblogPreviewRequest.__Dispatch_Table.isLocale(Ljava/lang/String;)Z
    //#input(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): org/apache/roller/weblogger/ui/rendering/util/WeblogRequest.__Descendant_Table[org/apache/roller/weblogger/ui/rendering/util/WeblogCommentRequest]
    //#input(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): org/apache/roller/weblogger/ui/rendering/util/WeblogRequest.__Descendant_Table[org/apache/roller/weblogger/ui/rendering/util/WeblogFeedRequest]
    //#input(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): org/apache/roller/weblogger/ui/rendering/util/WeblogRequest.__Descendant_Table[org/apache/roller/weblogger/ui/rendering/util/WeblogPageRequest]
    //#input(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): org/apache/roller/weblogger/ui/rendering/util/WeblogRequest.__Descendant_Table[org/apache/roller/weblogger/ui/rendering/util/WeblogPreviewRequest]
    //#input(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): org/apache/roller/weblogger/ui/rendering/util/WeblogRequest.__Descendant_Table[org/apache/roller/weblogger/ui/rendering/util/WeblogPreviewResourceRequest]
    //#input(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): org/apache/roller/weblogger/ui/rendering/util/WeblogRequest.__Descendant_Table[org/apache/roller/weblogger/ui/rendering/util/WeblogRequest]
    //#input(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): org/apache/roller/weblogger/ui/rendering/util/WeblogRequest.__Descendant_Table[org/apache/roller/weblogger/ui/rendering/util/WeblogResourceRequest]
    //#input(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): org/apache/roller/weblogger/ui/rendering/util/WeblogRequest.__Descendant_Table[org/apache/roller/weblogger/ui/rendering/util/WeblogSearchRequest]
    //#input(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): org/apache/roller/weblogger/ui/rendering/util/WeblogRequest.__Descendant_Table[org/apache/roller/weblogger/ui/rendering/util/WeblogTrackbackRequest]
    //#input(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): org/apache/roller/weblogger/ui/rendering/util/WeblogRequest.__Descendant_Table[others]
    //#input(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): org/apache/roller/weblogger/ui/rendering/util/WeblogRequest.__Dispatch_Table.isLocale(Ljava/lang/String;)Z
    //#input(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): org/apache/roller/weblogger/ui/rendering/util/WeblogRequest.log
    //#input(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): org/apache/roller/weblogger/ui/rendering/util/WeblogResourceRequest.__Descendant_Table[org/apache/roller/weblogger/ui/rendering/util/WeblogPreviewResourceRequest]
    //#input(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): org/apache/roller/weblogger/ui/rendering/util/WeblogResourceRequest.__Descendant_Table[org/apache/roller/weblogger/ui/rendering/util/WeblogResourceRequest]
    //#input(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): org/apache/roller/weblogger/ui/rendering/util/WeblogResourceRequest.__Descendant_Table[others]
    //#input(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): org/apache/roller/weblogger/ui/rendering/util/WeblogResourceRequest.__Dispatch_Table.getPathInfo()Ljava/lang/String;
    //#input(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): org/apache/roller/weblogger/ui/rendering/util/WeblogResourceRequest.__Dispatch_Table.isLocale(Ljava/lang/String;)Z
    //#input(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): org/apache/roller/weblogger/ui/rendering/util/WeblogResourceRequest.log
    //#input(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): org/apache/roller/weblogger/ui/rendering/util/WeblogSearchRequest.__Dispatch_Table.isLocale(Ljava/lang/String;)Z
    //#input(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): org/apache/roller/weblogger/ui/rendering/util/WeblogTrackbackRequest.__Dispatch_Table.isLocale(Ljava/lang/String;)Z
    //#input(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): request
    //#input(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): this
    //#input(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): this.__Tag
    //#output(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): java.lang.String:substring(...)._tainted
    //#output(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): this.__Tag
    //#output(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): this.authenticUser
    //#output(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): this.locale
    //#output(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): this.localeInstance
    //#output(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): this.pathInfo
    //#output(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): this.request
    //#output(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): this.resourcePath
    //#output(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): this.theme
    //#output(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): this.themeName
    //#output(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): this.user
    //#output(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): this.weblog
    //#output(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): this.weblogHandle
    //#new obj(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): java.lang.String:substring(...)
    //#pre[1] (void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): log != null
    //#pre[2] (void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): this.__Tag in {org/apache/roller/weblogger/ui/rendering/util/WeblogPreviewResourceRequest, org/apache/roller/weblogger/ui/rendering/util/WeblogResourceRequest}
    //#pre[3] (void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): org/apache/roller/weblogger/ui/rendering/util/WeblogRequest.log != null
    //#pre[4] (void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): org/apache/roller/weblogger/ui/rendering/util/WeblogResourceRequest.log != null
    //#pre[5] (void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): request != null
    //#post(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): java.lang.String:substring(...)._tainted == 0
    //#post(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): this.__Tag == old this.__Tag
    //#post(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): this.__Tag in {org/apache/roller/weblogger/ui/rendering/util/WeblogPreviewResourceRequest, org/apache/roller/weblogger/ui/rendering/util/WeblogResourceRequest}
    //#post(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): init'ed(this.authenticUser)
    //#post(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): init'ed(this.locale)
    //#post(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): this.localeInstance == null
    //#post(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): this.theme == null
    //#post(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): this.user == null
    //#post(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): this.weblog == null
    //#post(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): this.pathInfo != null
    //#post(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): this.request == request
    //#post(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): this.request != null
    //#post(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): init'ed(this.resourcePath)
    //#post(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): init'ed(this.themeName)
    //#post(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): this.weblogHandle == One-of{null, undefined}
    //#post(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): this.weblogHandle == null
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): Effects-of-calling:org.apache.roller.weblogger.ui.rendering.util.WeblogRequest
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): Effects-of-calling:javax.servlet.http.HttpServletRequest:getServletPath
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): Effects-of-calling:getPathInfo
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): Effects-of-calling:java.lang.StringBuilder
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): Effects-of-calling:java.lang.StringBuilder:append
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): Effects-of-calling:java.lang.StringBuilder:toString
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): Effects-of-calling:org.apache.commons.logging.Log:debug
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): Effects-of-calling:java.lang.String:trim
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): Effects-of-calling:java.lang.String:length
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): Effects-of-calling:java.lang.String:startsWith
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): Effects-of-calling:java.lang.String:substring
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): Effects-of-calling:java.lang.String:replaceAll
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): Effects-of-calling:org.apache.roller.weblogger.util.URLUtilities:decode
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): Effects-of-calling:org.apache.commons.logging.Log:isDebugEnabled
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): Effects-of-calling:javax.servlet.http.HttpServletRequest:getRequestURL
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): Effects-of-calling:org.apache.roller.weblogger.WebloggerException
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): Effects-of-calling:java.lang.String:split
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): Effects-of-calling:org.apache.roller.weblogger.ui.rendering.util.ParsedRequest
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): Effects-of-calling:javax.servlet.http.HttpServletRequest:getPathInfo
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): Effects-of-calling:java.lang.String:endsWith
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): Effects-of-calling:javax.servlet.http.HttpServletRequest:getUserPrincipal
    //#unanalyzed(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): Effects-of-calling:java.security.Principal:getName
    //#test_vector(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): javax.servlet.http.HttpServletRequest:getParameter(...)@56: Addr_Set{null}, Inverse{null}
    //#test_vector(void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)): org.apache.commons.logging.Log:isDebugEnabled(...)@60: {0}, {1}
        
        // all we need to worry about is the query params
        // the only param we expect is "theme"
        if(request.getParameter("theme") != null) {
            this.themeName = request.getParameter("theme");
        }
        
        if(log.isDebugEnabled()) {
    //#WeblogPreviewResourceRequest.java:60: Warning: method not available
    //#    -- call on bool org.apache.commons.logging.Log:isDebugEnabled()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest
    //#    method: void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)
    //#    unanalyzed callee: bool org.apache.commons.logging.Log:isDebugEnabled()
            log.debug("theme = "+this.themeName);
    //#WeblogPreviewResourceRequest.java:61: Warning: method not available
    //#    -- call on void org.apache.commons.logging.Log:debug(Object)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest
    //#    method: void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)
    //#    unanalyzed callee: void org.apache.commons.logging.Log:debug(Object)
        }
    }
    //#WeblogPreviewResourceRequest.java:63: end of method: void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest.org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest(HttpServletRequest)
    
    public String getThemeName() {
        return themeName;
    //#WeblogPreviewResourceRequest.java:66: method: String org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest.getThemeName()
    //#input(String getThemeName()): this
    //#input(String getThemeName()): this.themeName
    //#output(String getThemeName()): return_value
    //#pre[2] (String getThemeName()): init'ed(this.themeName)
    //#post(String getThemeName()): return_value == this.themeName
    //#post(String getThemeName()): init'ed(return_value)
    //#WeblogPreviewResourceRequest.java:66: end of method: String org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest.getThemeName()
    }

    public void setThemeName(String theme) {
        this.themeName = theme;
    //#WeblogPreviewResourceRequest.java:70: method: void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest.setThemeName(String)
    //#input(void setThemeName(String)): theme
    //#input(void setThemeName(String)): this
    //#output(void setThemeName(String)): this.themeName
    //#post(void setThemeName(String)): this.themeName == theme
    //#post(void setThemeName(String)): init'ed(this.themeName)
    }
    //#WeblogPreviewResourceRequest.java:71: end of method: void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest.setThemeName(String)
    
    // override so that previews never show login status
    public String getAuthenticUser() {
        return null;
    //#WeblogPreviewResourceRequest.java:75: method: String org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest.getAuthenticUser()
    //#output(String getAuthenticUser()): return_value
    //#post(String getAuthenticUser()): return_value == null
    //#WeblogPreviewResourceRequest.java:75: end of method: String org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest.getAuthenticUser()
    }
    
    // override so that previews never show login status
    public boolean isLoggedIn() {
        return false;
    //#WeblogPreviewResourceRequest.java:80: method: bool org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest.isLoggedIn()
    //#output(bool isLoggedIn()): return_value
    //#post(bool isLoggedIn()): return_value == 0
    //#WeblogPreviewResourceRequest.java:80: end of method: bool org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest.isLoggedIn()
    }

    public Theme getTheme() {
        
        if(theme == null && themeName != null) {
    //#WeblogPreviewResourceRequest.java:85: method: Theme org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest.getTheme()
    //#input(Theme getTheme()): "Error looking up theme "._tainted
    //#input(Theme getTheme()): log
    //#input(Theme getTheme()): this
    //#input(Theme getTheme()): this.theme
    //#input(Theme getTheme()): this.themeName
    //#input(Theme getTheme()): this.themeName._tainted
    //#output(Theme getTheme()): return_value
    //#output(Theme getTheme()): this.theme
    //#pre[5] (Theme getTheme()): init'ed(this.theme)
    //#pre[4] (Theme getTheme()): (soft) log != null
    //#pre[8] (Theme getTheme()): (soft) init'ed(this.themeName)
    //#presumption(Theme getTheme()): org.apache.roller.weblogger.business.Weblogger:getThemeManager(...)@87 != null
    //#presumption(Theme getTheme()): org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger(...)@87 != null
    //#post(Theme getTheme()): init'ed(return_value)
    //#post(Theme getTheme()): this.theme == return_value
    //#test_vector(Theme getTheme()): this.theme: Inverse{null}, Addr_Set{null}
    //#test_vector(Theme getTheme()): this.themeName: Addr_Set{null}, Inverse{null}
            try {
                ThemeManager themeMgr = WebloggerFactory.getWeblogger().getThemeManager();
    //#WeblogPreviewResourceRequest.java:87: Warning: method not available
    //#    -- call on Weblogger org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest
    //#    method: Theme getTheme()
    //#    unanalyzed callee: Weblogger org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger()
    //#WeblogPreviewResourceRequest.java:87: Warning: method not available
    //#    -- call on ThemeManager org.apache.roller.weblogger.business.Weblogger:getThemeManager()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest
    //#    method: Theme getTheme()
    //#    unanalyzed callee: ThemeManager org.apache.roller.weblogger.business.Weblogger:getThemeManager()
                theme = themeMgr.getTheme(themeName);
    //#WeblogPreviewResourceRequest.java:88: Warning: method not available
    //#    -- call on SharedTheme org.apache.roller.weblogger.business.themes.ThemeManager:getTheme(String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest
    //#    method: Theme getTheme()
    //#    unanalyzed callee: SharedTheme org.apache.roller.weblogger.business.themes.ThemeManager:getTheme(String)
            } catch(ThemeNotFoundException tnfe) {
                // bogus theme specified ... don't worry about it
            } catch(WebloggerException re) {
                log.error("Error looking up theme "+themeName, re);
    //#WeblogPreviewResourceRequest.java:92: Warning: method not available
    //#    -- call on void org.apache.commons.logging.Log:error(Object, Throwable)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest
    //#    method: Theme getTheme()
    //#    unanalyzed callee: void org.apache.commons.logging.Log:error(Object, Throwable)
            }
        }
        
        return theme;
    //#WeblogPreviewResourceRequest.java:96: end of method: Theme org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest.getTheme()
    }

    public void setTheme(Theme theme) {
        this.theme = theme;
    //#WeblogPreviewResourceRequest.java:100: method: void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest.setTheme(Theme)
    //#input(void setTheme(Theme)): theme
    //#input(void setTheme(Theme)): this
    //#output(void setTheme(Theme)): this.theme
    //#post(void setTheme(Theme)): this.theme == theme
    //#post(void setTheme(Theme)): init'ed(this.theme)
    }
    //#WeblogPreviewResourceRequest.java:101: end of method: void org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest.setTheme(Theme)
}
    //#WeblogPreviewResourceRequest.java:: end of class: org.apache.roller.weblogger.ui.rendering.util.WeblogPreviewResourceRequest
