//# 0 errors, 452 messages
//#
/*
    //#TemplateEdit.java:1:1: class: org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit
 * 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.struts2.editor;

import java.util.Arrays;
import java.util.Date;
import java.util.List;
import org.apache.commons.lang.StringUtils;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.roller.weblogger.WebloggerException;
import org.apache.roller.weblogger.business.WebloggerFactory;
import org.apache.roller.weblogger.business.UserManager;
import org.apache.roller.weblogger.config.WebloggerConfig;
import org.apache.roller.weblogger.pojos.WeblogPermission;
import org.apache.roller.weblogger.pojos.WeblogTemplate;
import org.apache.roller.weblogger.ui.struts2.util.UIAction;
import org.apache.roller.weblogger.util.Utilities;
import org.apache.roller.weblogger.util.cache.CacheManager;
import org.apache.struts2.interceptor.validation.SkipValidation;


/**
 * Action which handles editing for a single WeblogTemplate.
 */
public class TemplateEdit extends UIAction {
    
    private static Log log = LogFactory.getLog(TemplateEdit.class);
    //#TemplateEdit.java:44: method: org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit.org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init
    //#TemplateEdit.java:44: Warning: method not available
    //#    -- call on Log org.apache.commons.logging.LogFactory:getLog(Class)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit
    //#    method: org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init
    //#    unanalyzed callee: Log org.apache.commons.logging.LogFactory:getLog(Class)
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Descendant_Table[org/apache/roller/weblogger/ui/struts2/editor/TemplateEdit]
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.addError(Ljava/lang/String;)V
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.addError(Ljava/lang/String;Ljava/lang/String;)V
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.addError(Ljava/lang/String;Ljava/util/List;)V
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.addMessage(Ljava/lang/String;)V
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.addMessage(Ljava/lang/String;Ljava/lang/String;)V
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.addMessage(Ljava/lang/String;Ljava/util/List;)V
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.errorsExist()Z
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.execute()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getAbsoluteSiteURL()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getActionName()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getActionWeblog()Lorg/apache/roller/weblogger/pojos/Weblog;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getAuthenticatedUser()Lorg/apache/roller/weblogger/pojos/User;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getBean()Lorg/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getBooleanProp(Ljava/lang/String;)Z
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getCommentDaysList()Ljava/util/List;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getDesiredMenu()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getHoursList()Ljava/util/List;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getIntProp(Ljava/lang/String;)I
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getLocalesList()Ljava/util/List;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getMediumDateFormat()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getMenu()Lorg/apache/roller/weblogger/ui/core/util/menu/Menu;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getMinutesList()Ljava/util/List;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getPageTitle()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getProp(Ljava/lang/String;)Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getSecondsList()Ljava/util/List;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getShortDateFormat()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getSiteURL()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getTemplate()Lorg/apache/roller/weblogger/pojos/WeblogTemplate;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getTemplateLanguages()Ljava/util/List;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getTimeZonesList()Ljava/util/List;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getWeblog()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.isUserIsAdmin()Z
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.isUserRequired()Z
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.isWeblogRequired()Z
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.messagesExist()Z
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.myPrepare()V
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.myValidate()V
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.requiredUserRole()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.requiredWeblogPermissions()S
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.save()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.setActionName(Ljava/lang/String;)V
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.setActionWeblog(Lorg/apache/roller/weblogger/pojos/Weblog;)V
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.setAuthenticatedUser(Lorg/apache/roller/weblogger/pojos/User;)V
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.setBean(Lorg/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean;)V
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.setDesiredMenu(Ljava/lang/String;)V
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.setPageTitle(Ljava/lang/String;)V
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.setTemplate(Lorg/apache/roller/weblogger/pojos/WeblogTemplate;)V
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.setWeblog(Ljava/lang/String;)V
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): log
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): org/apache/roller/weblogger/ui/struts2/util/UIAction.__Descendant_Table[org/apache/roller/weblogger/ui/struts2/editor/TemplateEdit]
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): org/apache/roller/weblogger/ui/struts2/util/UIActionPreparable.__Descendant_Table[org/apache/roller/weblogger/ui/struts2/editor/TemplateEdit]
    //#output(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): org/apache/roller/weblogger/ui/struts2/util/UISecurityEnforced.__Descendant_Table[org/apache/roller/weblogger/ui/struts2/editor/TemplateEdit]
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Descendant_Table[org/apache/roller/weblogger/ui/struts2/editor/TemplateEdit] == &__Dispatch_Table
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): org/apache/roller/weblogger/ui/struts2/util/UIAction.__Descendant_Table[org/apache/roller/weblogger/ui/struts2/editor/TemplateEdit] == &__Dispatch_Table
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): org/apache/roller/weblogger/ui/struts2/util/UIActionPreparable.__Descendant_Table[org/apache/roller/weblogger/ui/struts2/editor/TemplateEdit] == &__Dispatch_Table
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): org/apache/roller/weblogger/ui/struts2/util/UISecurityEnforced.__Descendant_Table[org/apache/roller/weblogger/ui/struts2/editor/TemplateEdit] == &__Dispatch_Table
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.addError(Ljava/lang/String;)V == &org/apache/roller/weblogger/ui/struts2/util/UIAction.addError
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.addError(Ljava/lang/String;Ljava/lang/String;)V == &org/apache/roller/weblogger/ui/struts2/util/UIAction.addError
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.addError(Ljava/lang/String;Ljava/util/List;)V == &org/apache/roller/weblogger/ui/struts2/util/UIAction.addError
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.addMessage(Ljava/lang/String;)V == &org/apache/roller/weblogger/ui/struts2/util/UIAction.addMessage
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.addMessage(Ljava/lang/String;Ljava/lang/String;)V == &org/apache/roller/weblogger/ui/struts2/util/UIAction.addMessage
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.addMessage(Ljava/lang/String;Ljava/util/List;)V == &org/apache/roller/weblogger/ui/struts2/util/UIAction.addMessage
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.errorsExist()Z == &org/apache/roller/weblogger/ui/struts2/util/UIAction.errorsExist
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.execute()Ljava/lang/String; == &execute
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getAbsoluteSiteURL()Ljava/lang/String; == &org/apache/roller/weblogger/ui/struts2/util/UIAction.getAbsoluteSiteURL
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getActionName()Ljava/lang/String; == &org/apache/roller/weblogger/ui/struts2/util/UIAction.getActionName
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getActionWeblog()Lorg/apache/roller/weblogger/pojos/Weblog; == &org/apache/roller/weblogger/ui/struts2/util/UIAction.getActionWeblog
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getAuthenticatedUser()Lorg/apache/roller/weblogger/pojos/User; == &org/apache/roller/weblogger/ui/struts2/util/UIAction.getAuthenticatedUser
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getBean()Lorg/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean; == &getBean
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getBooleanProp(Ljava/lang/String;)Z == &org/apache/roller/weblogger/ui/struts2/util/UIAction.getBooleanProp
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getCommentDaysList()Ljava/util/List; == &org/apache/roller/weblogger/ui/struts2/util/UIAction.getCommentDaysList
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getDesiredMenu()Ljava/lang/String; == &org/apache/roller/weblogger/ui/struts2/util/UIAction.getDesiredMenu
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getHoursList()Ljava/util/List; == &org/apache/roller/weblogger/ui/struts2/util/UIAction.getHoursList
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getIntProp(Ljava/lang/String;)I == &org/apache/roller/weblogger/ui/struts2/util/UIAction.getIntProp
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getLocalesList()Ljava/util/List; == &org/apache/roller/weblogger/ui/struts2/util/UIAction.getLocalesList
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getMediumDateFormat()Ljava/lang/String; == &org/apache/roller/weblogger/ui/struts2/util/UIAction.getMediumDateFormat
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getMenu()Lorg/apache/roller/weblogger/ui/core/util/menu/Menu; == &org/apache/roller/weblogger/ui/struts2/util/UIAction.getMenu
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getMinutesList()Ljava/util/List; == &org/apache/roller/weblogger/ui/struts2/util/UIAction.getMinutesList
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getPageTitle()Ljava/lang/String; == &org/apache/roller/weblogger/ui/struts2/util/UIAction.getPageTitle
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getProp(Ljava/lang/String;)Ljava/lang/String; == &org/apache/roller/weblogger/ui/struts2/util/UIAction.getProp
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getSecondsList()Ljava/util/List; == &org/apache/roller/weblogger/ui/struts2/util/UIAction.getSecondsList
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getShortDateFormat()Ljava/lang/String; == &org/apache/roller/weblogger/ui/struts2/util/UIAction.getShortDateFormat
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getSiteURL()Ljava/lang/String; == &org/apache/roller/weblogger/ui/struts2/util/UIAction.getSiteURL
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getTemplate()Lorg/apache/roller/weblogger/pojos/WeblogTemplate; == &getTemplate
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getTemplateLanguages()Ljava/util/List; == &getTemplateLanguages
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getTimeZonesList()Ljava/util/List; == &org/apache/roller/weblogger/ui/struts2/util/UIAction.getTimeZonesList
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.getWeblog()Ljava/lang/String; == &org/apache/roller/weblogger/ui/struts2/util/UIAction.getWeblog
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.isUserIsAdmin()Z == &org/apache/roller/weblogger/ui/struts2/util/UIAction.isUserIsAdmin
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.isUserRequired()Z == &org/apache/roller/weblogger/ui/struts2/util/UIAction.isUserRequired
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.isWeblogRequired()Z == &org/apache/roller/weblogger/ui/struts2/util/UIAction.isWeblogRequired
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.messagesExist()Z == &org/apache/roller/weblogger/ui/struts2/util/UIAction.messagesExist
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.myPrepare()V == &myPrepare
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.myValidate()V == &myValidate
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.requiredUserRole()Ljava/lang/String; == &org/apache/roller/weblogger/ui/struts2/util/UIAction.requiredUserRole
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.requiredWeblogPermissions()S == &requiredWeblogPermissions
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.save()Ljava/lang/String; == &save
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.setActionName(Ljava/lang/String;)V == &org/apache/roller/weblogger/ui/struts2/util/UIAction.setActionName
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.setActionWeblog(Lorg/apache/roller/weblogger/pojos/Weblog;)V == &org/apache/roller/weblogger/ui/struts2/util/UIAction.setActionWeblog
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.setAuthenticatedUser(Lorg/apache/roller/weblogger/pojos/User;)V == &org/apache/roller/weblogger/ui/struts2/util/UIAction.setAuthenticatedUser
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.setBean(Lorg/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean;)V == &setBean
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.setDesiredMenu(Ljava/lang/String;)V == &org/apache/roller/weblogger/ui/struts2/util/UIAction.setDesiredMenu
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.setPageTitle(Ljava/lang/String;)V == &org/apache/roller/weblogger/ui/struts2/util/UIAction.setPageTitle
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.setTemplate(Lorg/apache/roller/weblogger/pojos/WeblogTemplate;)V == &setTemplate
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): __Dispatch_Table.setWeblog(Ljava/lang/String;)V == &org/apache/roller/weblogger/ui/struts2/util/UIAction.setWeblog
    //#post(org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init): init'ed(log)
    //#TemplateEdit.java:44: end of method: org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit.org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit__static_init
    
    // form bean for collection all template properties
    private TemplateEditBean bean = new TemplateEditBean();
    
    // the template we are working on
    private WeblogTemplate template = null;
    
    
    public TemplateEdit() {
    //#TemplateEdit.java:53: method: void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit.org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()
    //#input(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): org/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean.java.lang.Boolean.TRUE
    //#input(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): this
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): new TemplateEditBean(TemplateEdit#1) num objects
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): this.bean.__Tag
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): this.bean.autoContentType
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): this.bean.contents
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): this.bean.description
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): this.bean.hidden
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): this.bean.id
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): this.bean.link
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): this.bean.manualContentType
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): this.bean.name
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): this.bean.navbar
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): this.bean.templateLanguage
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): this.actionName
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): this.actionWeblog
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): this.authenticatedUser
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): this.bean
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): this.desiredMenu
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): this.pageTitle
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): this.template
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): this.weblog
    //#new obj(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): new TemplateEditBean(TemplateEdit#1)
    //#presumption(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): init'ed(org/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean.java.lang.Boolean.TRUE)
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): this.actionName == &"templateEdit"
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): this.actionWeblog == null
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): this.authenticatedUser == null
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): this.template == null
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): this.weblog == null
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): this.bean.contents == null
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): this.bean.description == null
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): this.bean.id == null
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): this.bean.link == null
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): this.bean.manualContentType == null
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): this.bean.name == null
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): this.bean.templateLanguage == null
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): this.bean == &new TemplateEditBean(TemplateEdit#1)
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): this.desiredMenu == &"editor"
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): this.pageTitle == &"pagesForm.title"
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): new TemplateEditBean(TemplateEdit#1) num objects == 1
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): this.bean.__Tag == org/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): this.bean.autoContentType == org/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean.java.lang.Boolean.TRUE
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): init'ed(this.bean.autoContentType)
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): this.bean.hidden == 0
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): this.bean.navbar == 0
    //#unanalyzed(void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()): Effects-of-calling:com.opensymphony.xwork2.ActionSupport
        this.actionName = "templateEdit";
        this.desiredMenu = "editor";
        this.pageTitle = "pagesForm.title";
    }
    //#TemplateEdit.java:57: end of method: void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit.org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit()
    
    
    @Override
    public short requiredWeblogPermissions() {
        return WeblogPermission.ADMIN;
    //#TemplateEdit.java:62: method: short org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit.requiredWeblogPermissions()
    //#input(short requiredWeblogPermissions()): org.apache.roller.weblogger.pojos.WeblogPermission.ADMIN
    //#output(short requiredWeblogPermissions()): return_value
    //#presumption(short requiredWeblogPermissions()): init'ed(org.apache.roller.weblogger.pojos.WeblogPermission.ADMIN)
    //#post(short requiredWeblogPermissions()): return_value == org.apache.roller.weblogger.pojos.WeblogPermission.ADMIN
    //#post(short requiredWeblogPermissions()): (soft) init'ed(return_value)
    //#TemplateEdit.java:62: end of method: short org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit.requiredWeblogPermissions()
    }
    
    
    public void myPrepare() {
        try {
            UserManager mgr = WebloggerFactory.getWeblogger().getUserManager();
    //#TemplateEdit.java:68: method: void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit.myPrepare()
    //#TemplateEdit.java:68: Warning: method not available
    //#    -- call on Weblogger org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit
    //#    method: void myPrepare()
    //#    unanalyzed callee: Weblogger org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger()
    //#TemplateEdit.java:68: Warning: method not available
    //#    -- call on UserManager org.apache.roller.weblogger.business.Weblogger:getUserManager()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit
    //#    method: void myPrepare()
    //#    unanalyzed callee: UserManager org.apache.roller.weblogger.business.Weblogger:getUserManager()
    //#input(void myPrepare()): "Error looking up template - "._tainted
    //#input(void myPrepare()): __Descendant_Table[org/apache/roller/weblogger/ui/struts2/editor/TemplateEdit]
    //#input(void myPrepare()): __Descendant_Table[others]
    //#input(void myPrepare()): __Dispatch_Table.getBean()Lorg/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean;
    //#input(void myPrepare()): __Dispatch_Table.setTemplate(Lorg/apache/roller/weblogger/pojos/WeblogTemplate;)V
    //#input(void myPrepare()): log
    //#input(void myPrepare()): org/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean.__Descendant_Table[org/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean]
    //#input(void myPrepare()): org/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean.__Descendant_Table[others]
    //#input(void myPrepare()): org/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean.__Dispatch_Table.getId()Ljava/lang/String;
    //#input(void myPrepare()): this
    //#input(void myPrepare()): this.__Tag
    //#input(void myPrepare()): this.bean
    //#input(void myPrepare()): this.bean.__Tag
    //#input(void myPrepare()): this.bean.id
    //#input(void myPrepare()): this.bean.id._tainted
    //#output(void myPrepare()): this.template
    //#pre[4] (void myPrepare()): this.__Tag == org/apache/roller/weblogger/ui/struts2/editor/TemplateEdit
    //#pre[5] (void myPrepare()): this.bean != null
    //#pre[6] (void myPrepare()): this.bean.__Tag == org/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean
    //#pre[7] (void myPrepare()): init'ed(this.bean.id)
    //#pre[1] (void myPrepare()): (soft) log != null
    //#presumption(void myPrepare()): org.apache.roller.weblogger.business.Weblogger:getUserManager(...)@68 != null
    //#presumption(void myPrepare()): org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger(...)@68 != null
    //#post(void myPrepare()): possibly_updated(this.template)
            setTemplate(mgr.getPage(getBean().getId()));
    //#TemplateEdit.java:69: Warning: method not available
    //#    -- call on WeblogTemplate org.apache.roller.weblogger.business.UserManager:getPage(String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit
    //#    method: void myPrepare()
    //#    unanalyzed callee: WeblogTemplate org.apache.roller.weblogger.business.UserManager:getPage(String)
        } catch (WebloggerException ex) {
            log.error("Error looking up template - "+getBean().getId(), ex);
    //#TemplateEdit.java:71: Warning: method not available
    //#    -- call on void org.apache.commons.logging.Log:error(Object, Throwable)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit
    //#    method: void myPrepare()
    //#    unanalyzed callee: void org.apache.commons.logging.Log:error(Object, Throwable)
        }
    }
    //#TemplateEdit.java:73: end of method: void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit.myPrepare()
    
    
    /**
     * Show template edit page.
     */
    @SkipValidation
    public String execute() {
        
        if(getTemplate() == null) {
    //#TemplateEdit.java:82: method: String org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit.execute()
    //#input(String execute()): __Descendant_Table[org/apache/roller/weblogger/ui/struts2/editor/TemplateEdit]
    //#input(String execute()): __Descendant_Table[others]
    //#input(String execute()): __Dispatch_Table.addError(Ljava/lang/String;)V
    //#input(String execute()): __Dispatch_Table.getBean()Lorg/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean;
    //#input(String execute()): __Dispatch_Table.getTemplate()Lorg/apache/roller/weblogger/pojos/WeblogTemplate;
    //#input(String execute()): java.lang.Boolean.FALSE
    //#input(String execute()): java.lang.Boolean.TRUE
    //#input(String execute()): org/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean.__Descendant_Table[org/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean]
    //#input(String execute()): org/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean.__Descendant_Table[others]
    //#input(String execute()): org/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean.__Dispatch_Table.copyFrom(Lorg/apache/roller/weblogger/pojos/WeblogTemplate;)V
    //#input(String execute()): org/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean.__Dispatch_Table.getManualContentType()Ljava/lang/String;
    //#input(String execute()): org/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean.__Dispatch_Table.setAutoContentType(Ljava/lang/Boolean;)V
    //#input(String execute()): org/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean.__Dispatch_Table.setManualContentType(Ljava/lang/String;)V
    //#input(String execute()): org/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean.java.lang.Boolean.FALSE
    //#input(String execute()): this
    //#input(String execute()): this.__Tag
    //#input(String execute()): this.bean
    //#input(String execute()): this.bean.__Tag
    //#input(String execute()): this.template
    //#output(String execute()): return_value
    //#output(String execute()): this.bean.autoContentType
    //#output(String execute()): this.bean.contents
    //#output(String execute()): this.bean.description
    //#output(String execute()): this.bean.hidden
    //#output(String execute()): this.bean.id
    //#output(String execute()): this.bean.link
    //#output(String execute()): this.bean.manualContentType
    //#output(String execute()): this.bean.name
    //#output(String execute()): this.bean.navbar
    //#output(String execute()): this.bean.templateLanguage
    //#pre[12] (String execute()): this.__Tag == org/apache/roller/weblogger/ui/struts2/editor/TemplateEdit
    //#pre[15] (String execute()): init'ed(this.template)
    //#pre[13] (String execute()): (soft) this.bean != null
    //#pre[14] (String execute()): (soft) this.bean.__Tag == org/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean
    //#presumption(String execute()): init'ed(java.lang.Boolean.FALSE)
    //#presumption(String execute()): init'ed(java.lang.Boolean.TRUE)
    //#post(String execute()): return_value in Addr_Set{&"input",&"list"}
    //#post(String execute()): this.bean.autoContentType == One-of{old this.bean.autoContentType, java.lang.Boolean.TRUE, java.lang.Boolean.FALSE}
    //#post(String execute()): possibly_updated(this.bean.contents)
    //#post(String execute()): possibly_updated(this.bean.description)
    //#post(String execute()): possibly_updated(this.bean.hidden)
    //#post(String execute()): possibly_updated(this.bean.id)
    //#post(String execute()): possibly_updated(this.bean.link)
    //#post(String execute()): possibly_updated(this.bean.manualContentType)
    //#post(String execute()): possibly_updated(this.bean.name)
    //#post(String execute()): possibly_updated(this.bean.navbar)
    //#post(String execute()): possibly_updated(this.bean.templateLanguage)
    //#unanalyzed(String execute()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogTemplate:getId
    //#unanalyzed(String execute()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogTemplate:getName
    //#unanalyzed(String execute()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogTemplate:getDescription
    //#unanalyzed(String execute()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogTemplate:getLink
    //#unanalyzed(String execute()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogTemplate:getContents
    //#unanalyzed(String execute()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogTemplate:isNavbar
    //#unanalyzed(String execute()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogTemplate:isHidden
    //#unanalyzed(String execute()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogTemplate:getTemplateLanguage
    //#unanalyzed(String execute()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogTemplate:getOutputContentType
    //#unanalyzed(String execute()): Effects-of-calling:org.apache.roller.weblogger.ui.struts2.util.UIAction:addActionError
    //#unanalyzed(String execute()): Effects-of-calling:org.apache.roller.weblogger.ui.struts2.util.UIAction:getText
    //#test_vector(String execute()): this.template: Inverse{null}, Addr_Set{null}
    //#test_vector(String execute()): org.apache.commons.lang.StringUtils:isEmpty(...)@92: {0}, {1}
            // TODO: i18n
            addError("Unable to locate specified template");
            return LIST;
        }
        
        WeblogTemplate page = getTemplate();
        getBean().copyFrom(template);
    //#TemplateEdit.java:89: Warning: unused assignment in callee
    //#    unused assignment to (this.bean.autoContentType) in copyFrom
    //#    severity: LOW
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit
    //#    method: String execute()
        
        // empty content-type indicates that page uses auto content-type detection
        if (StringUtils.isEmpty(page.getOutputContentType())) {
    //#TemplateEdit.java:92: Warning: method not available
    //#    -- call on String org.apache.roller.weblogger.pojos.WeblogTemplate:getOutputContentType()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit
    //#    method: String execute()
    //#    unanalyzed callee: String org.apache.roller.weblogger.pojos.WeblogTemplate:getOutputContentType()
    //#TemplateEdit.java:92: Warning: method not available
    //#    -- call on bool org.apache.commons.lang.StringUtils:isEmpty(String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit
    //#    method: String execute()
    //#    unanalyzed callee: bool org.apache.commons.lang.StringUtils:isEmpty(String)
            getBean().setAutoContentType(Boolean.TRUE);
        } else {
            getBean().setAutoContentType(Boolean.FALSE);
            getBean().setManualContentType(page.getOutputContentType());
    //#TemplateEdit.java:96: Warning: method not available
    //#    -- call on String org.apache.roller.weblogger.pojos.WeblogTemplate:getOutputContentType()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit
    //#    method: String execute()
    //#    unanalyzed callee: String org.apache.roller.weblogger.pojos.WeblogTemplate:getOutputContentType()
        }
        
        return INPUT;
    //#TemplateEdit.java:99: end of method: String org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit.execute()
    }
    
    
    /**
     * Save an existing template.
     */
    public String save() {
        
        if(getTemplate() == null) {
    //#TemplateEdit.java:108: method: String org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit.save()
    //#input(String save()): "Error updating page - "._tainted
    //#input(String save()): __Descendant_Table[org/apache/roller/weblogger/ui/struts2/editor/TemplateEdit]
    //#input(String save()): __Descendant_Table[others]
    //#input(String save()): __Dispatch_Table.addError(Ljava/lang/String;)V
    //#input(String save()): __Dispatch_Table.addError(Ljava/lang/String;Ljava/lang/String;)V
    //#input(String save()): __Dispatch_Table.addMessage(Ljava/lang/String;Ljava/lang/String;)V
    //#input(String save()): __Dispatch_Table.getActionWeblog()Lorg/apache/roller/weblogger/pojos/Weblog;
    //#input(String save()): __Dispatch_Table.getBean()Lorg/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean;
    //#input(String save()): __Dispatch_Table.getTemplate()Lorg/apache/roller/weblogger/pojos/WeblogTemplate;
    //#input(String save()): log
    //#input(String save()): org/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean.__Descendant_Table[org/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean]
    //#input(String save()): org/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean.__Descendant_Table[others]
    //#input(String save()): org/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean.__Dispatch_Table.copyTo(Lorg/apache/roller/weblogger/pojos/WeblogTemplate;)V
    //#input(String save()): org/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean.__Dispatch_Table.getAutoContentType()Ljava/lang/Boolean;
    //#input(String save()): org/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean.__Dispatch_Table.getContents()Ljava/lang/String;
    //#input(String save()): org/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean.__Dispatch_Table.getDescription()Ljava/lang/String;
    //#input(String save()): org/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean.__Dispatch_Table.getId()Ljava/lang/String;
    //#input(String save()): org/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean.__Dispatch_Table.getLink()Ljava/lang/String;
    //#input(String save()): org/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean.__Dispatch_Table.getManualContentType()Ljava/lang/String;
    //#input(String save()): org/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(String save()): org/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean.__Dispatch_Table.getTemplateLanguage()Ljava/lang/String;
    //#input(String save()): org/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean.__Dispatch_Table.isHidden()Z
    //#input(String save()): org/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean.__Dispatch_Table.isNavbar()Z
    //#input(String save()): this
    //#input(String save()): this.__Tag
    //#input(String save()): this.actionWeblog
    //#input(String save()): this.bean
    //#input(String save()): this.bean.__Tag
    //#input(String save()): this.bean.autoContentType
    //#input(String save()): this.bean.contents
    //#input(String save()): this.bean.description
    //#input(String save()): this.bean.hidden
    //#input(String save()): this.bean.id
    //#input(String save()): this.bean.id._tainted
    //#input(String save()): this.bean.link
    //#input(String save()): this.bean.manualContentType
    //#input(String save()): this.bean.name
    //#input(String save()): this.bean.navbar
    //#input(String save()): this.bean.templateLanguage
    //#input(String save()): this.template
    //#output(String save()): return_value
    //#pre[3] (String save()): this.__Tag == org/apache/roller/weblogger/ui/struts2/editor/TemplateEdit
    //#pre[18] (String save()): init'ed(this.template)
    //#pre[1] (String save()): (soft) log != null
    //#pre[4] (String save()): (soft) init'ed(this.actionWeblog)
    //#pre[5] (String save()): (soft) this.bean != null
    //#pre[6] (String save()): (soft) this.bean.__Tag == org/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean
    //#pre[7] (String save()): (soft) init'ed(this.bean.autoContentType)
    //#pre[8] (String save()): (soft) init'ed(this.bean.contents)
    //#pre[9] (String save()): (soft) init'ed(this.bean.description)
    //#pre[10] (String save()): (soft) init'ed(this.bean.hidden)
    //#pre[11] (String save()): (soft) init'ed(this.bean.id)
    //#pre[13] (String save()): (soft) this.bean.link != null
    //#pre[14] (String save()): (soft) init'ed(this.bean.manualContentType)
    //#pre[15] (String save()): (soft) init'ed(this.bean.name)
    //#pre[16] (String save()): (soft) init'ed(this.bean.navbar)
    //#pre[17] (String save()): (soft) init'ed(this.bean.templateLanguage)
    //#presumption(String save()): org.apache.roller.weblogger.business.Weblogger:getUserManager(...)@132 != null
    //#presumption(String save()): org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger(...)@132 != null
    //#presumption(String save()): org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger(...)@134 != null
    //#post(String save()): return_value in Addr_Set{&"input",&"list"}
    //#unanalyzed(String save()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogTemplate:getName
    //#unanalyzed(String save()): Effects-of-calling:java.lang.String:equals
    //#unanalyzed(String save()): Effects-of-calling:org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger
    //#unanalyzed(String save()): Effects-of-calling:org.apache.roller.weblogger.business.Weblogger:getUserManager
    //#unanalyzed(String save()): Effects-of-calling:getActionWeblog
    //#unanalyzed(String save()): Effects-of-calling:org.apache.roller.weblogger.business.UserManager:getPageByName
    //#unanalyzed(String save()): Effects-of-calling:addError
    //#unanalyzed(String save()): Effects-of-calling:java.lang.Throwable:__curr_excep_obj
    //#unanalyzed(String save()): Effects-of-calling:org.apache.commons.logging.Log:error
    //#unanalyzed(String save()): Effects-of-calling:org.apache.commons.lang.StringUtils:isEmpty
    //#unanalyzed(String save()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogTemplate:getLink
    //#unanalyzed(String save()): Effects-of-calling:org.apache.roller.weblogger.business.UserManager:getPageByLink
    //#unanalyzed(String save()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogTemplate:setContents
    //#unanalyzed(String save()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogTemplate:isCustom
    //#unanalyzed(String save()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogTemplate:setName
    //#unanalyzed(String save()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogTemplate:setDescription
    //#unanalyzed(String save()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogTemplate:setLink
    //#unanalyzed(String save()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogTemplate:setNavbar
    //#unanalyzed(String save()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogTemplate:setHidden
    //#unanalyzed(String save()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogTemplate:setTemplateLanguage
    //#unanalyzed(String save()): Effects-of-calling:org.apache.roller.weblogger.ui.struts2.util.UIAction:addActionError
    //#unanalyzed(String save()): Effects-of-calling:org.apache.roller.weblogger.ui.struts2.util.UIAction:getText
    //#unanalyzed(String save()): Effects-of-calling:org.apache.roller.weblogger.ui.struts2.util.UIAction:addActionMessage
    //#test_vector(String save()): this.bean.autoContentType: Addr_Set{null}, Inverse{null}
    //#test_vector(String save()): this.template: Inverse{null}, Addr_Set{null}
    //#test_vector(String save()): java.lang.Boolean:booleanValue(...)@123: {1}, {0}
    //#test_vector(String save()): org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit:hasActionErrors(...)@117: {1}, {0}
            // TODO: i18n
            addError("Unable to locate specified template");
            return LIST;
        }
        
        // validation
        myValidate();
        
        if(!hasActionErrors()) try {
    //#TemplateEdit.java:117: Warning: method not available
    //#    -- call on bool org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit:hasActionErrors()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit
    //#    method: String save()
    //#    unanalyzed callee: bool org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit:hasActionErrors()
            
            WeblogTemplate template = getTemplate();
            getBean().copyTo(template);
            template.setLastModified(new Date());
    //#TemplateEdit.java:121: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.pojos.WeblogTemplate:setLastModified(Date)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit
    //#    method: String save()
    //#    unanalyzed callee: void org.apache.roller.weblogger.pojos.WeblogTemplate:setLastModified(Date)
            
            if (getBean().getAutoContentType() == null ||
                    !getBean().getAutoContentType().booleanValue()) {
                template.setOutputContentType(getBean().getManualContentType());
    //#TemplateEdit.java:125: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.pojos.WeblogTemplate:setOutputContentType(String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit
    //#    method: String save()
    //#    unanalyzed callee: void org.apache.roller.weblogger.pojos.WeblogTemplate:setOutputContentType(String)
            } else {
                // empty content-type indicates that template uses auto content-type detection
                template.setOutputContentType(null);
    //#TemplateEdit.java:128: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.pojos.WeblogTemplate:setOutputContentType(String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit
    //#    method: String save()
    //#    unanalyzed callee: void org.apache.roller.weblogger.pojos.WeblogTemplate:setOutputContentType(String)
            }
            
            // save template and flush
            UserManager mgr = WebloggerFactory.getWeblogger().getUserManager();
    //#TemplateEdit.java:132: Warning: method not available
    //#    -- call on Weblogger org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit
    //#    method: String save()
    //#    unanalyzed callee: Weblogger org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger()
    //#TemplateEdit.java:132: Warning: method not available
    //#    -- call on UserManager org.apache.roller.weblogger.business.Weblogger:getUserManager()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit
    //#    method: String save()
    //#    unanalyzed callee: UserManager org.apache.roller.weblogger.business.Weblogger:getUserManager()
            mgr.savePage(template);
    //#TemplateEdit.java:133: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.business.UserManager:savePage(WeblogTemplate)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit
    //#    method: String save()
    //#    unanalyzed callee: void org.apache.roller.weblogger.business.UserManager:savePage(WeblogTemplate)
            WebloggerFactory.getWeblogger().flush();
    //#TemplateEdit.java:134: Warning: method not available
    //#    -- call on Weblogger org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit
    //#    method: String save()
    //#    unanalyzed callee: Weblogger org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger()
    //#TemplateEdit.java:134: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.business.Weblogger:flush()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit
    //#    method: String save()
    //#    unanalyzed callee: void org.apache.roller.weblogger.business.Weblogger:flush()
            
            // notify caches
            CacheManager.invalidate(template);
    //#TemplateEdit.java:137: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.util.cache.CacheManager:invalidate(WeblogTemplate)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit
    //#    method: String save()
    //#    unanalyzed callee: void org.apache.roller.weblogger.util.cache.CacheManager:invalidate(WeblogTemplate)
            
            // success message
            addMessage("pageForm.save.success", template.getName());
    //#TemplateEdit.java:140: Warning: method not available
    //#    -- call on String org.apache.roller.weblogger.pojos.WeblogTemplate:getName()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit
    //#    method: String save()
    //#    unanalyzed callee: String org.apache.roller.weblogger.pojos.WeblogTemplate:getName()
            
        } catch (WebloggerException ex) {
            log.error("Error updating page - "+getBean().getId(), ex);
    //#TemplateEdit.java:143: Warning: method not available
    //#    -- call on void org.apache.commons.logging.Log:error(Object, Throwable)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit
    //#    method: String save()
    //#    unanalyzed callee: void org.apache.commons.logging.Log:error(Object, Throwable)
            // TODO: i18n
            addError("Error saving template");
        }
        
        return INPUT;
    //#TemplateEdit.java:148: end of method: String org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit.save()
    }
    
    
    private void myValidate() {
        
        // if name changed make sure there isn't a conflict
        if(!getTemplate().getName().equals(getBean().getName())) {
    //#TemplateEdit.java:155: method: void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit.myValidate()
    //#TemplateEdit.java:155: Warning: method not available
    //#    -- call on String org.apache.roller.weblogger.pojos.WeblogTemplate:getName()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit
    //#    method: void myValidate()
    //#    unanalyzed callee: String org.apache.roller.weblogger.pojos.WeblogTemplate:getName()
    //#input(void myValidate()): __Descendant_Table[org/apache/roller/weblogger/ui/struts2/editor/TemplateEdit]
    //#input(void myValidate()): __Descendant_Table[others]
    //#input(void myValidate()): __Dispatch_Table.addError(Ljava/lang/String;Ljava/lang/String;)V
    //#input(void myValidate()): __Dispatch_Table.getActionWeblog()Lorg/apache/roller/weblogger/pojos/Weblog;
    //#input(void myValidate()): __Dispatch_Table.getBean()Lorg/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean;
    //#input(void myValidate()): __Dispatch_Table.getTemplate()Lorg/apache/roller/weblogger/pojos/WeblogTemplate;
    //#input(void myValidate()): log
    //#input(void myValidate()): org/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean.__Descendant_Table[org/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean]
    //#input(void myValidate()): org/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean.__Descendant_Table[others]
    //#input(void myValidate()): org/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean.__Dispatch_Table.getLink()Ljava/lang/String;
    //#input(void myValidate()): org/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void myValidate()): this
    //#input(void myValidate()): this.__Tag
    //#input(void myValidate()): this.actionWeblog
    //#input(void myValidate()): this.bean
    //#input(void myValidate()): this.bean.__Tag
    //#input(void myValidate()): this.bean.link
    //#input(void myValidate()): this.bean.name
    //#input(void myValidate()): this.template
    //#pre[3] (void myValidate()): this.__Tag == org/apache/roller/weblogger/ui/struts2/editor/TemplateEdit
    //#pre[5] (void myValidate()): this.bean != null
    //#pre[6] (void myValidate()): this.bean.__Tag == org/apache/roller/weblogger/ui/struts2/editor/TemplateEditBean
    //#pre[8] (void myValidate()): init'ed(this.bean.name)
    //#pre[9] (void myValidate()): this.template != null
    //#pre[1] (void myValidate()): (soft) log != null
    //#pre[4] (void myValidate()): (soft) init'ed(this.actionWeblog)
    //#pre[7] (void myValidate()): (soft) this.bean.link != null
    //#presumption(void myValidate()): org.apache.roller.weblogger.business.Weblogger:getUserManager(...)@157 != null
    //#presumption(void myValidate()): org.apache.roller.weblogger.business.Weblogger:getUserManager(...)@170 != null
    //#presumption(void myValidate()): org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger(...)@157 != null
    //#presumption(void myValidate()): org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger(...)@170 != null
    //#presumption(void myValidate()): org.apache.roller.weblogger.pojos.WeblogTemplate:getName(...)@155 != null
    //#unanalyzed(void myValidate()): Effects-of-calling:org.apache.roller.weblogger.ui.struts2.util.UIAction:addActionError
    //#unanalyzed(void myValidate()): Effects-of-calling:org.apache.roller.weblogger.ui.struts2.util.UIAction:getText
    //#test_vector(void myValidate()): java.lang.String:equals(...)@155: {1}, {0}
    //#test_vector(void myValidate()): java.lang.String:equals(...)@167: {1}, {0}
    //#test_vector(void myValidate()): org.apache.commons.lang.StringUtils:isEmpty(...)@167: {1}, {0}
    //#test_vector(void myValidate()): org.apache.roller.weblogger.business.UserManager:getPageByLink(...)@171: Addr_Set{null}, Inverse{null}
    //#test_vector(void myValidate()): org.apache.roller.weblogger.business.UserManager:getPageByName(...)@158: Addr_Set{null}, Inverse{null}
            try {
                UserManager umgr = WebloggerFactory.getWeblogger().getUserManager();
    //#TemplateEdit.java:157: Warning: method not available
    //#    -- call on Weblogger org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit
    //#    method: void myValidate()
    //#    unanalyzed callee: Weblogger org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger()
    //#TemplateEdit.java:157: Warning: method not available
    //#    -- call on UserManager org.apache.roller.weblogger.business.Weblogger:getUserManager()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit
    //#    method: void myValidate()
    //#    unanalyzed callee: UserManager org.apache.roller.weblogger.business.Weblogger:getUserManager()
                if(umgr.getPageByName(getActionWeblog(), getBean().getName()) != null) {
    //#TemplateEdit.java:158: Warning: method not available
    //#    -- call on WeblogTemplate org.apache.roller.weblogger.business.UserManager:getPageByName(Weblog, String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit
    //#    method: void myValidate()
    //#    unanalyzed callee: WeblogTemplate org.apache.roller.weblogger.business.UserManager:getPageByName(Weblog, String)
                    addError("pagesForm.error.alreadyExists", getBean().getName());
                }
            } catch (WebloggerException ex) {
                log.error("Error checking page name uniqueness", ex);
    //#TemplateEdit.java:162: Warning: method not available
    //#    -- call on void org.apache.commons.logging.Log:error(Object, Throwable)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit
    //#    method: void myValidate()
    //#    unanalyzed callee: void org.apache.commons.logging.Log:error(Object, Throwable)
            }
        }
        
        // if link changed make sure there isn't a conflict
        if(!StringUtils.isEmpty(getBean().getLink()) &&
    //#TemplateEdit.java:167: Warning: method not available
    //#    -- call on bool org.apache.commons.lang.StringUtils:isEmpty(String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit
    //#    method: void myValidate()
    //#    unanalyzed callee: bool org.apache.commons.lang.StringUtils:isEmpty(String)
    //#TemplateEdit.java:167: Warning: method not available
    //#    -- call on String org.apache.roller.weblogger.pojos.WeblogTemplate:getLink()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit
    //#    method: void myValidate()
    //#    unanalyzed callee: String org.apache.roller.weblogger.pojos.WeblogTemplate:getLink()
                !getBean().getLink().equals(getTemplate().getLink())) {
            try {
                UserManager umgr = WebloggerFactory.getWeblogger().getUserManager();
    //#TemplateEdit.java:170: Warning: method not available
    //#    -- call on Weblogger org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit
    //#    method: void myValidate()
    //#    unanalyzed callee: Weblogger org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger()
    //#TemplateEdit.java:170: Warning: method not available
    //#    -- call on UserManager org.apache.roller.weblogger.business.Weblogger:getUserManager()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit
    //#    method: void myValidate()
    //#    unanalyzed callee: UserManager org.apache.roller.weblogger.business.Weblogger:getUserManager()
                if(umgr.getPageByLink(getActionWeblog(), getBean().getLink()) != null) {
    //#TemplateEdit.java:171: Warning: method not available
    //#    -- call on WeblogTemplate org.apache.roller.weblogger.business.UserManager:getPageByLink(Weblog, String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit
    //#    method: void myValidate()
    //#    unanalyzed callee: WeblogTemplate org.apache.roller.weblogger.business.UserManager:getPageByLink(Weblog, String)
                    addError("pagesForm.error.alreadyExists", getBean().getLink());
                }
            } catch (WebloggerException ex) {
                log.error("Error checking page link uniqueness", ex);
    //#TemplateEdit.java:175: Warning: method not available
    //#    -- call on void org.apache.commons.logging.Log:error(Object, Throwable)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit
    //#    method: void myValidate()
    //#    unanalyzed callee: void org.apache.commons.logging.Log:error(Object, Throwable)
            }
        }
    }
    //#TemplateEdit.java:178: end of method: void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit.myValidate()
    
    
    public List getTemplateLanguages() {
        String langs = WebloggerConfig.getProperty("rendering.templateLanguages","velocity");
    //#TemplateEdit.java:182: method: List org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit.getTemplateLanguages()
    //#TemplateEdit.java:182: Warning: method not available
    //#    -- call on String org.apache.roller.weblogger.config.WebloggerConfig:getProperty(String, String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit
    //#    method: List getTemplateLanguages()
    //#    unanalyzed callee: String org.apache.roller.weblogger.config.WebloggerConfig:getProperty(String, String)
    //#output(List getTemplateLanguages()): return_value
    //#post(List getTemplateLanguages()): init'ed(return_value)
        String[] langsArray = Utilities.stringToStringArray(langs, ",");
    //#TemplateEdit.java:183: Warning: method not available
    //#    -- call on String[] org.apache.roller.weblogger.util.Utilities:stringToStringArray(String, String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit
    //#    method: List getTemplateLanguages()
    //#    unanalyzed callee: String[] org.apache.roller.weblogger.util.Utilities:stringToStringArray(String, String)
        return Arrays.asList(langsArray);
    //#TemplateEdit.java:184: end of method: List org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit.getTemplateLanguages()
    }
    
    
    public TemplateEditBean getBean() {
        return bean;
    //#TemplateEdit.java:189: method: TemplateEditBean org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit.getBean()
    //#input(TemplateEditBean getBean()): this
    //#input(TemplateEditBean getBean()): this.bean
    //#output(TemplateEditBean getBean()): return_value
    //#pre[2] (TemplateEditBean getBean()): init'ed(this.bean)
    //#post(TemplateEditBean getBean()): return_value == this.bean
    //#post(TemplateEditBean getBean()): init'ed(return_value)
    //#TemplateEdit.java:189: end of method: TemplateEditBean org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit.getBean()
    }

    public void setBean(TemplateEditBean bean) {
        this.bean = bean;
    //#TemplateEdit.java:193: method: void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit.setBean(TemplateEditBean)
    //#input(void setBean(TemplateEditBean)): bean
    //#input(void setBean(TemplateEditBean)): this
    //#output(void setBean(TemplateEditBean)): this.bean
    //#post(void setBean(TemplateEditBean)): this.bean == bean
    //#post(void setBean(TemplateEditBean)): init'ed(this.bean)
    }
    //#TemplateEdit.java:194: end of method: void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit.setBean(TemplateEditBean)

    public WeblogTemplate getTemplate() {
        return template;
    //#TemplateEdit.java:197: method: WeblogTemplate org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit.getTemplate()
    //#input(WeblogTemplate getTemplate()): this
    //#input(WeblogTemplate getTemplate()): this.template
    //#output(WeblogTemplate getTemplate()): return_value
    //#pre[2] (WeblogTemplate getTemplate()): init'ed(this.template)
    //#post(WeblogTemplate getTemplate()): return_value == this.template
    //#post(WeblogTemplate getTemplate()): init'ed(return_value)
    //#TemplateEdit.java:197: end of method: WeblogTemplate org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit.getTemplate()
    }

    public void setTemplate(WeblogTemplate template) {
        this.template = template;
    //#TemplateEdit.java:201: method: void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit.setTemplate(WeblogTemplate)
    //#input(void setTemplate(WeblogTemplate)): template
    //#input(void setTemplate(WeblogTemplate)): this
    //#output(void setTemplate(WeblogTemplate)): this.template
    //#post(void setTemplate(WeblogTemplate)): this.template == template
    //#post(void setTemplate(WeblogTemplate)): init'ed(this.template)
    }
    //#TemplateEdit.java:202: end of method: void org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit.setTemplate(WeblogTemplate)
    
}
    //#TemplateEdit.java:: end of class: org.apache.roller.weblogger.ui.struts2.editor.TemplateEdit
