//# 0 errors, 648 messages
//#
/*
    //#EntryEdit.java:1:1: class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
 * 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.sql.Timestamp;
import java.util.Arrays;
import java.util.Collections;
import java.util.Date;
import java.util.Iterator;
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.WeblogManager;
import org.apache.roller.weblogger.pojos.WeblogCategory;
import org.apache.roller.weblogger.pojos.WeblogPermission;
import org.apache.roller.weblogger.pojos.WeblogEntry;
import org.apache.roller.weblogger.util.cache.CacheManager;
import org.apache.roller.weblogger.util.MailUtil;
import org.apache.roller.weblogger.util.MediacastException;
import org.apache.roller.weblogger.util.MediacastResource;
import org.apache.roller.weblogger.util.MediacastUtil;
import org.apache.roller.weblogger.util.RollerMessages;
import org.apache.roller.weblogger.util.RollerMessages.RollerMessage;
import org.apache.roller.weblogger.util.Trackback;
import org.apache.roller.weblogger.util.TrackbackNotAllowedException;
import org.apache.struts2.interceptor.validation.SkipValidation;


/**
 * Edit an existing entry.
 */
public final class EntryEdit extends EntryBase {
    
    private static Log log = LogFactory.getLog(EntryEdit.class);
    //#EntryEdit.java:53: method: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit.org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init
    //#EntryEdit.java:53: Warning: method not available
    //#    -- call on Log org.apache.commons.logging.LogFactory:getLog(Class)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init
    //#    unanalyzed callee: Log org.apache.commons.logging.LogFactory:getLog(Class)
    //#output(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Descendant_Table[org/apache/roller/weblogger/ui/struts2/editor/EntryEdit]
    //#output(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Dispatch_Table.execute()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Dispatch_Table.getBean()Lorg/apache/roller/weblogger/ui/struts2/editor/EntryBean;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Dispatch_Table.getCategories()Ljava/util/List;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Dispatch_Table.getEditor()Lorg/apache/roller/weblogger/ui/core/plugins/WeblogEntryEditor;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Dispatch_Table.getEntry()Lorg/apache/roller/weblogger/pojos/WeblogEntry;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Dispatch_Table.getEntryPlugins()Ljava/util/List;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Dispatch_Table.getJsonAutocompleteUrl()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Dispatch_Table.getPreviewURL()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Dispatch_Table.getRecentDraftEntries()Ljava/util/List;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Dispatch_Table.getRecentPendingEntries()Ljava/util/List;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Dispatch_Table.getRecentPublishedEntries()Ljava/util/List;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Dispatch_Table.getRecentScheduledEntries()Ljava/util/List;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Dispatch_Table.getTrackbackUrl()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Dispatch_Table.isUserAnAuthor()Z
    //#output(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Dispatch_Table.myPrepare()V
    //#output(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Dispatch_Table.reindexEntry(Lorg/apache/roller/weblogger/pojos/WeblogEntry;)V
    //#output(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Dispatch_Table.requiredWeblogPermissions()S
    //#output(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Dispatch_Table.save()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Dispatch_Table.setBean(Lorg/apache/roller/weblogger/ui/struts2/editor/EntryBean;)V
    //#output(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Dispatch_Table.setEntry(Lorg/apache/roller/weblogger/pojos/WeblogEntry;)V
    //#output(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Dispatch_Table.setTrackbackUrl(Ljava/lang/String;)V
    //#output(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Dispatch_Table.trackback()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): log
    //#output(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): org/apache/roller/weblogger/ui/struts2/editor/EntryBase.__Descendant_Table[org/apache/roller/weblogger/ui/struts2/editor/EntryEdit]
    //#post(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Descendant_Table[org/apache/roller/weblogger/ui/struts2/editor/EntryEdit] == &__Dispatch_Table
    //#post(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): org/apache/roller/weblogger/ui/struts2/editor/EntryBase.__Descendant_Table[org/apache/roller/weblogger/ui/struts2/editor/EntryEdit] == &__Dispatch_Table
    //#post(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Dispatch_Table.execute()Ljava/lang/String; == &execute
    //#post(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Dispatch_Table.getBean()Lorg/apache/roller/weblogger/ui/struts2/editor/EntryBean; == &getBean
    //#post(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Dispatch_Table.getCategories()Ljava/util/List; == &getCategories
    //#post(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Dispatch_Table.getEditor()Lorg/apache/roller/weblogger/ui/core/plugins/WeblogEntryEditor; == &org/apache/roller/weblogger/ui/struts2/editor/EntryBase.getEditor
    //#post(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Dispatch_Table.getEntry()Lorg/apache/roller/weblogger/pojos/WeblogEntry; == &getEntry
    //#post(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Dispatch_Table.getEntryPlugins()Ljava/util/List; == &org/apache/roller/weblogger/ui/struts2/editor/EntryBase.getEntryPlugins
    //#post(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Dispatch_Table.getJsonAutocompleteUrl()Ljava/lang/String; == &org/apache/roller/weblogger/ui/struts2/editor/EntryBase.getJsonAutocompleteUrl
    //#post(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Dispatch_Table.getPreviewURL()Ljava/lang/String; == &getPreviewURL
    //#post(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Dispatch_Table.getRecentDraftEntries()Ljava/util/List; == &org/apache/roller/weblogger/ui/struts2/editor/EntryBase.getRecentDraftEntries
    //#post(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Dispatch_Table.getRecentPendingEntries()Ljava/util/List; == &org/apache/roller/weblogger/ui/struts2/editor/EntryBase.getRecentPendingEntries
    //#post(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Dispatch_Table.getRecentPublishedEntries()Ljava/util/List; == &org/apache/roller/weblogger/ui/struts2/editor/EntryBase.getRecentPublishedEntries
    //#post(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Dispatch_Table.getRecentScheduledEntries()Ljava/util/List; == &org/apache/roller/weblogger/ui/struts2/editor/EntryBase.getRecentScheduledEntries
    //#post(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Dispatch_Table.getTrackbackUrl()Ljava/lang/String; == &getTrackbackUrl
    //#post(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Dispatch_Table.isUserAnAuthor()Z == &org/apache/roller/weblogger/ui/struts2/editor/EntryBase.isUserAnAuthor
    //#post(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Dispatch_Table.myPrepare()V == &myPrepare
    //#post(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Dispatch_Table.reindexEntry(Lorg/apache/roller/weblogger/pojos/WeblogEntry;)V == &org/apache/roller/weblogger/ui/struts2/editor/EntryBase.reindexEntry
    //#post(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Dispatch_Table.requiredWeblogPermissions()S == &requiredWeblogPermissions
    //#post(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Dispatch_Table.save()Ljava/lang/String; == &save
    //#post(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Dispatch_Table.setBean(Lorg/apache/roller/weblogger/ui/struts2/editor/EntryBean;)V == &setBean
    //#post(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Dispatch_Table.setEntry(Lorg/apache/roller/weblogger/pojos/WeblogEntry;)V == &setEntry
    //#post(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Dispatch_Table.setTrackbackUrl(Ljava/lang/String;)V == &setTrackbackUrl
    //#post(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): __Dispatch_Table.trackback()Ljava/lang/String; == &trackback
    //#post(org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init): init'ed(log)
    //#EntryEdit.java:53: end of method: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit.org.apache.roller.weblogger.ui.struts2.editor.EntryEdit__static_init
    
    // bean for managing form data
    private EntryBean bean = new EntryBean();
    
    // the entry we are editing
    private WeblogEntry entry = null;
    
    // url to send trackback to
    private String trackbackUrl = null;
    
    
    public EntryEdit() {
    //#EntryEdit.java:65: method: void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit.org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()
    //#input(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): new EntryBean(EntryEdit#1) num objects
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.bean.__Tag
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.bean.allowComments
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.bean.categoryId
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.bean.commentCount
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.bean.commentDays
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.bean.dateString
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.bean.enclosureURL
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.bean.hours
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.bean.id
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.bean.locale
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.bean.minutes
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.bean.pinnedToMain
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.bean.plugins
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.bean.rightToLeft
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.bean.seconds
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.bean.status
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.bean.summary
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.bean.tagsString
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.bean.text
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.bean.title
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.bean.weblogHandle
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): new Integer(EntryBean#1) num objects
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.actionName
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.bean
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.desiredMenu
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.entry
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.pageTitle
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.trackbackUrl
    //#new obj(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): new EntryBean(EntryEdit#1)
    //#new obj(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): new Integer(EntryBean#1)
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.actionName == &"entryEdit"
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.bean == &new EntryBean(EntryEdit#1)
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.desiredMenu == &"editor"
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.entry == null
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.trackbackUrl == null
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.bean.categoryId == null
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.bean.dateString == null
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.bean.enclosureURL == null
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.bean.id == null
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.bean.locale == null
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.bean.plugins == null
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.bean.status == null
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.bean.summary == null
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.bean.tagsString == null
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.bean.text == null
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.bean.title == null
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.bean.weblogHandle == null
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.pageTitle == &"weblogEdit.title.editEntry"
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): new EntryBean(EntryEdit#1) num objects == 1
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.bean.allowComments == 1
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): new Integer(EntryBean#1) num objects == 1
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.bean.__Tag == org/apache/roller/weblogger/ui/struts2/editor/EntryBean
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.bean.commentCount == 0
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.bean.hours == 0
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.bean.minutes == 0
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.bean.pinnedToMain == 0
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.bean.rightToLeft == 0
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.bean.seconds == 0
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): this.bean.commentDays == &new Integer(EntryBean#1)
    //#unanalyzed(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): Effects-of-calling:java.lang.Integer
    //#unanalyzed(void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()): Effects-of-calling:org.apache.roller.weblogger.ui.struts2.util.UIAction
        this.actionName = "entryEdit";
        this.desiredMenu = "editor";
        this.pageTitle = "weblogEdit.title.editEntry";
    }
    //#EntryEdit.java:69: end of method: void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit.org.apache.roller.weblogger.ui.struts2.editor.EntryEdit()
    
    
    @Override
    public short requiredWeblogPermissions() {
        return WeblogPermission.LIMITED;
    //#EntryEdit.java:74: method: short org.apache.roller.weblogger.ui.struts2.editor.EntryEdit.requiredWeblogPermissions()
    //#input(short requiredWeblogPermissions()): org.apache.roller.weblogger.pojos.WeblogPermission.LIMITED
    //#output(short requiredWeblogPermissions()): return_value
    //#presumption(short requiredWeblogPermissions()): init'ed(org.apache.roller.weblogger.pojos.WeblogPermission.LIMITED)
    //#post(short requiredWeblogPermissions()): return_value == org.apache.roller.weblogger.pojos.WeblogPermission.LIMITED
    //#post(short requiredWeblogPermissions()): (soft) init'ed(return_value)
    //#EntryEdit.java:74: end of method: short org.apache.roller.weblogger.ui.struts2.editor.EntryEdit.requiredWeblogPermissions()
    }
    
    
    public void myPrepare() {
        if(getBean().getId() != null) {
    //#EntryEdit.java:79: method: void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit.myPrepare()
    //#input(void myPrepare()): "Error looking up entry by id - "._tainted
    //#input(void myPrepare()): log
    //#input(void myPrepare()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Descendant_Table[org/apache/roller/weblogger/ui/struts2/editor/EntryBean]
    //#input(void myPrepare()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Descendant_Table[others]
    //#input(void myPrepare()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Dispatch_Table.getId()Ljava/lang/String;
    //#input(void myPrepare()): this
    //#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.entry
    //#pre[4] (void myPrepare()): this.bean != null
    //#pre[5] (void myPrepare()): this.bean.__Tag == org/apache/roller/weblogger/ui/struts2/editor/EntryBean
    //#pre[6] (void myPrepare()): init'ed(this.bean.id)
    //#pre[1] (void myPrepare()): (soft) log != null
    //#presumption(void myPrepare()): org.apache.roller.weblogger.business.Weblogger:getWeblogManager(...)@81 != null
    //#presumption(void myPrepare()): org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger(...)@81 != null
    //#post(void myPrepare()): possibly_updated(this.entry)
    //#test_vector(void myPrepare()): this.bean.id: Addr_Set{null}, Inverse{null}
            try {
                WeblogManager wmgr = WebloggerFactory.getWeblogger().getWeblogManager();
    //#EntryEdit.java:81: Warning: method not available
    //#    -- call on Weblogger org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: void myPrepare()
    //#    unanalyzed callee: Weblogger org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger()
    //#EntryEdit.java:81: Warning: method not available
    //#    -- call on WeblogManager org.apache.roller.weblogger.business.Weblogger:getWeblogManager()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: void myPrepare()
    //#    unanalyzed callee: WeblogManager org.apache.roller.weblogger.business.Weblogger:getWeblogManager()
                setEntry(wmgr.getWeblogEntry(getBean().getId()));
    //#EntryEdit.java:82: Warning: method not available
    //#    -- call on WeblogEntry org.apache.roller.weblogger.business.WeblogManager:getWeblogEntry(String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: void myPrepare()
    //#    unanalyzed callee: WeblogEntry org.apache.roller.weblogger.business.WeblogManager:getWeblogEntry(String)
            } catch (WebloggerException ex) {
                log.error("Error looking up entry by id - "+getBean().getId(), ex);
    //#EntryEdit.java:84: 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.EntryEdit
    //#    method: void myPrepare()
    //#    unanalyzed callee: void org.apache.commons.logging.Log:error(Object, Throwable)
            }
        }
    }
    //#EntryEdit.java:87: end of method: void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit.myPrepare()
    
    
    /**
     * Show form for editing an existing entry.
     * 
     * @return String The result of the action.
     */
    @SkipValidation
    public String execute() {
        
        // make sure we have an entry to edit and it belongs to the action weblog
        if(getEntry() == null) {
    //#EntryEdit.java:99: method: String org.apache.roller.weblogger.ui.struts2.editor.EntryEdit.execute()
    //#input(String execute()): ", "._tainted
    //#input(String execute()): "entry pubtime is "._tainted
    //#input(String execute()): "pubtime vals are "._tainted
    //#input(String execute()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Descendant_Table[org/apache/roller/weblogger/ui/struts2/editor/EntryBean]
    //#input(String execute()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Descendant_Table[others]
    //#input(String execute()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Dispatch_Table.copyFrom(Lorg/apache/roller/weblogger/pojos/WeblogEntry;Ljava/util/Locale;)V
    //#input(String execute()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Dispatch_Table.getDateString()Ljava/lang/String;
    //#input(String execute()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Dispatch_Table.getHours()I
    //#input(String execute()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Dispatch_Table.getMinutes()I
    //#input(String execute()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Dispatch_Table.getSeconds()I
    //#input(String execute()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Dispatch_Table.setAllowComments(Z)V
    //#input(String execute()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Dispatch_Table.setCategoryId(Ljava/lang/String;)V
    //#input(String execute()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Dispatch_Table.setCommentCount(I)V
    //#input(String execute()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Dispatch_Table.setCommentDays(Ljava/lang/Integer;)V
    //#input(String execute()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Dispatch_Table.setDateString(Ljava/lang/String;)V
    //#input(String execute()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Dispatch_Table.setEnclosureURL(Ljava/lang/String;)V
    //#input(String execute()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Dispatch_Table.setHours(I)V
    //#input(String execute()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Dispatch_Table.setId(Ljava/lang/String;)V
    //#input(String execute()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Dispatch_Table.setLocale(Ljava/lang/String;)V
    //#input(String execute()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Dispatch_Table.setMinutes(I)V
    //#input(String execute()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Dispatch_Table.setPinnedToMain(Z)V
    //#input(String execute()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Dispatch_Table.setPlugins([Ljava/lang/String;)V
    //#input(String execute()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Dispatch_Table.setRightToLeft(Z)V
    //#input(String execute()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Dispatch_Table.setSeconds(I)V
    //#input(String execute()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Dispatch_Table.setStatus(Ljava/lang/String;)V
    //#input(String execute()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Dispatch_Table.setSummary(Ljava/lang/String;)V
    //#input(String execute()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Dispatch_Table.setTagsAsString(Ljava/lang/String;)V
    //#input(String execute()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Dispatch_Table.setText(Ljava/lang/String;)V
    //#input(String execute()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Dispatch_Table.setTitle(Ljava/lang/String;)V
    //#input(String execute()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.log
    //#input(String execute()): this
    //#input(String execute()): this.bean
    //#input(String execute()): this.bean.__Tag
    //#input(String execute()): this.bean.dateString._tainted
    //#input(String execute()): this.entry
    //#output(String execute()): return_value
    //#output(String execute()): this.bean.allowComments
    //#output(String execute()): this.bean.categoryId
    //#output(String execute()): this.bean.commentCount
    //#output(String execute()): this.bean.commentDays
    //#output(String execute()): this.bean.dateString
    //#output(String execute()): this.bean.enclosureURL
    //#output(String execute()): this.bean.hours
    //#output(String execute()): this.bean.id
    //#output(String execute()): this.bean.locale
    //#output(String execute()): this.bean.minutes
    //#output(String execute()): this.bean.pinnedToMain
    //#output(String execute()): this.bean.plugins
    //#output(String execute()): this.bean.rightToLeft
    //#output(String execute()): this.bean.seconds
    //#output(String execute()): this.bean.status
    //#output(String execute()): this.bean.summary
    //#output(String execute()): this.bean.tagsString
    //#output(String execute()): this.bean.text
    //#output(String execute()): this.bean.title
    //#pre[25] (String execute()): init'ed(this.entry)
    //#pre[20] (String execute()): (soft) org/apache/roller/weblogger/ui/struts2/editor/EntryBean.log != null
    //#pre[22] (String execute()): (soft) this.bean != null
    //#pre[23] (String execute()): (soft) this.bean.__Tag == org/apache/roller/weblogger/ui/struts2/editor/EntryBean
    //#presumption(String execute()): org.apache.roller.weblogger.pojos.WeblogEntry:getWebsite(...)@101 != null
    //#post(String execute()): return_value in Addr_Set{&"input",&"access-denied",&"error"}
    //#post(String execute()): possibly_updated(this.bean.allowComments)
    //#post(String execute()): possibly_updated(this.bean.categoryId)
    //#post(String execute()): possibly_updated(this.bean.commentCount)
    //#post(String execute()): possibly_updated(this.bean.commentDays)
    //#post(String execute()): possibly_updated(this.bean.dateString)
    //#post(String execute()): possibly_updated(this.bean.enclosureURL)
    //#post(String execute()): possibly_updated(this.bean.hours)
    //#post(String execute()): possibly_updated(this.bean.id)
    //#post(String execute()): possibly_updated(this.bean.locale)
    //#post(String execute()): possibly_updated(this.bean.minutes)
    //#post(String execute()): possibly_updated(this.bean.pinnedToMain)
    //#post(String execute()): possibly_updated(this.bean.plugins)
    //#post(String execute()): possibly_updated(this.bean.rightToLeft)
    //#post(String execute()): possibly_updated(this.bean.seconds)
    //#post(String execute()): possibly_updated(this.bean.status)
    //#post(String execute()): possibly_updated(this.bean.summary)
    //#post(String execute()): possibly_updated(this.bean.tagsString)
    //#post(String execute()): possibly_updated(this.bean.text)
    //#post(String execute()): possibly_updated(this.bean.title)
    //#unanalyzed(String execute()): Effects-of-calling:java.lang.StringBuilder
    //#unanalyzed(String execute()): Effects-of-calling:java.lang.StringBuilder:append
    //#unanalyzed(String execute()): Effects-of-calling:java.lang.StringBuilder:toString
    //#unanalyzed(String execute()): Effects-of-calling:org.apache.commons.logging.Log:debug
    //#unanalyzed(String execute()): Effects-of-calling:java.util.Calendar:setTime
    //#unanalyzed(String execute()): Effects-of-calling:java.text.SimpleDateFormat
    //#unanalyzed(String execute()): Effects-of-calling:java.text.DateFormat:setTimeZone
    //#unanalyzed(String execute()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:getWebsite
    //#unanalyzed(String execute()): Effects-of-calling:java.lang.String:equals
    //#unanalyzed(String execute()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:getId
    //#unanalyzed(String execute()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:getTitle
    //#unanalyzed(String execute()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:getLocale
    //#unanalyzed(String execute()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:getStatus
    //#unanalyzed(String execute()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:getSummary
    //#unanalyzed(String execute()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:getText
    //#unanalyzed(String execute()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:getCategory
    //#unanalyzed(String execute()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogCategory:getId
    //#unanalyzed(String execute()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:getTagsAsString
    //#unanalyzed(String execute()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:getComments
    //#unanalyzed(String execute()): Effects-of-calling:java.util.List:size
    //#unanalyzed(String execute()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:getPlugins
    //#unanalyzed(String execute()): Effects-of-calling:org.apache.commons.lang.StringUtils:split
    //#unanalyzed(String execute()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:getPubTime
    //#unanalyzed(String execute()): Effects-of-calling:java.util.Calendar:getInstance
    //#unanalyzed(String execute()): Effects-of-calling:org.apache.roller.weblogger.pojos.Weblog:getTimeZoneInstance
    //#unanalyzed(String execute()): Effects-of-calling:java.util.Calendar:setTimeZone
    //#unanalyzed(String execute()): Effects-of-calling:java.util.Calendar:get
    //#unanalyzed(String execute()): Effects-of-calling:java.text.DateFormat:format
    //#unanalyzed(String execute()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:getAllowComments
    //#unanalyzed(String execute()): Effects-of-calling:java.lang.Boolean:booleanValue
    //#unanalyzed(String execute()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:getCommentDays
    //#unanalyzed(String execute()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:getRightToLeft
    //#unanalyzed(String execute()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:getPinnedToMain
    //#unanalyzed(String execute()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:getEntryAttributes
    //#unanalyzed(String execute()): Effects-of-calling:java.util.Set:size
    //#unanalyzed(String execute()): Effects-of-calling:java.util.Set:iterator
    //#unanalyzed(String execute()): Effects-of-calling:java.util.Iterator:hasNext
    //#unanalyzed(String execute()): Effects-of-calling:java.util.Iterator:next
    //#unanalyzed(String execute()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntryAttribute:getName
    //#unanalyzed(String execute()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntryAttribute:getValue
    //#test_vector(String execute()): this.entry: Inverse{null}, Addr_Set{null}
    //#test_vector(String execute()): org.apache.roller.weblogger.pojos.Weblog:equals(...)@101: {1}, {0}
            return ERROR;
        } else if(!getEntry().getWebsite().equals(getActionWeblog())) {
    //#EntryEdit.java:101: Warning: method not available
    //#    -- call on Weblog org.apache.roller.weblogger.pojos.WeblogEntry:getWebsite()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String execute()
    //#    unanalyzed callee: Weblog org.apache.roller.weblogger.pojos.WeblogEntry:getWebsite()
    //#EntryEdit.java:101: Warning: method not available
    //#    -- call on Weblog org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:getActionWeblog()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String execute()
    //#    unanalyzed callee: Weblog org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:getActionWeblog()
    //#EntryEdit.java:101: Warning: method not available
    //#    -- call on bool org.apache.roller.weblogger.pojos.Weblog:equals(Object)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String execute()
    //#    unanalyzed callee: bool org.apache.roller.weblogger.pojos.Weblog:equals(Object)
            return DENIED;
        }
        
        // load bean with pojo data
        getBean().copyFrom(getEntry(), getLocale());
    //#EntryEdit.java:106: Warning: method not available
    //#    -- call on Locale org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:getLocale()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String execute()
    //#    unanalyzed callee: Locale org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:getLocale()
        
        return INPUT;
    //#EntryEdit.java:108: end of method: String org.apache.roller.weblogger.ui.struts2.editor.EntryEdit.execute()
    }
    
    
    /**
     * Save weblog entry.
     * 
     * @return String The result of the action.
     */
    public String save() {
        
        // make sure we have an entry to edit and it belongs to the action weblog
        if(getEntry() == null) {
    //#EntryEdit.java:120: method: String org.apache.roller.weblogger.ui.struts2.editor.EntryEdit.save()
    //#input(String save()): ""._tainted
    //#input(String save()): "&#10;"._tainted
    //#input(String save()): ", "._tainted
    //#input(String save()): "Category could not be found - "._tainted
    //#input(String save()): "catId = "._tainted
    //#input(String save()): "commentDays = "._tainted
    //#input(String save()): "comments = "._tainted
    //#input(String save()): "date = "._tainted
    //#input(String save()): "dateString yields date - "._tainted
    //#input(String save()): "entry bean is ...&#10;"._tainted
    //#input(String save()): "final status = "._tainted
    //#input(String save()): "hours = "._tainted
    //#input(String save()): "locale = "._tainted
    //#input(String save()): "minutes = "._tainted
    //#input(String save()): "plugins = "._tainted
    //#input(String save()): "pubtime = "._tainted
    //#input(String save()): "pubtime is "._tainted
    //#input(String save()): "pubtime vals are "._tainted
    //#input(String save()): "seconds = "._tainted
    //#input(String save()): "status = "._tainted
    //#input(String save()): "summary size = "._tainted
    //#input(String save()): "tags = "._tainted
    //#input(String save()): "title = "._tainted
    //#input(String save()): "txt size = "._tainted
    //#input(String save()): "updtime = "._tainted
    //#input(String save()): __Descendant_Table[org/apache/roller/weblogger/ui/struts2/editor/EntryEdit]
    //#input(String save()): __Descendant_Table[others]
    //#input(String save()): __Dispatch_Table.reindexEntry(Lorg/apache/roller/weblogger/pojos/WeblogEntry;)V
    //#input(String save()): log
    //#input(String save()): org.apache.roller.weblogger.pojos.WeblogPermission.AUTHOR
    //#input(String save()): org/apache/roller/weblogger/ui/struts2/editor/EntryBase.log
    //#input(String save()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Descendant_Table[org/apache/roller/weblogger/ui/struts2/editor/EntryBean]
    //#input(String save()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Descendant_Table[others]
    //#input(String save()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Dispatch_Table.copyTo(Lorg/apache/roller/weblogger/pojos/WeblogEntry;)V
    //#input(String save()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Dispatch_Table.getAllowComments()Z
    //#input(String save()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Dispatch_Table.getCategoryId()Ljava/lang/String;
    //#input(String save()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Dispatch_Table.getCommentDays()Ljava/lang/Integer;
    //#input(String save()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Dispatch_Table.getDateString()Ljava/lang/String;
    //#input(String save()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Dispatch_Table.getEnclosureURL()Ljava/lang/String;
    //#input(String save()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Dispatch_Table.getHours()I
    //#input(String save()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Dispatch_Table.getLocale()Ljava/lang/String;
    //#input(String save()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Dispatch_Table.getMinutes()I
    //#input(String save()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Dispatch_Table.getPinnedToMain()Z
    //#input(String save()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Dispatch_Table.getPlugins()[Ljava/lang/String;
    //#input(String save()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Dispatch_Table.getPubTime(Ljava/util/Locale;Ljava/util/TimeZone;)Ljava/sql/Timestamp;
    //#input(String save()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Dispatch_Table.getRightToLeft()Z
    //#input(String save()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Dispatch_Table.getSeconds()I
    //#input(String save()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Dispatch_Table.getStatus()Ljava/lang/String;
    //#input(String save()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Dispatch_Table.getSummary()Ljava/lang/String;
    //#input(String save()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Dispatch_Table.getTagsAsString()Ljava/lang/String;
    //#input(String save()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Dispatch_Table.getText()Ljava/lang/String;
    //#input(String save()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Dispatch_Table.getTitle()Ljava/lang/String;
    //#input(String save()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.__Dispatch_Table.toString()Ljava/lang/String;
    //#input(String save()): org/apache/roller/weblogger/ui/struts2/editor/EntryBean.log
    //#input(String save()): this
    //#input(String save()): this.__Tag
    //#input(String save()): this.bean
    //#input(String save()): this.bean.__Tag
    //#input(String save()): this.bean.allowComments
    //#input(String save()): this.bean.categoryId
    //#input(String save()): this.bean.categoryId._tainted
    //#input(String save()): this.bean.commentDays
    //#input(String save()): this.bean.commentDays._tainted
    //#input(String save()): this.bean.dateString
    //#input(String save()): this.bean.dateString._tainted
    //#input(String save()): this.bean.enclosureURL
    //#input(String save()): this.bean.hours
    //#input(String save()): this.bean.locale
    //#input(String save()): this.bean.locale._tainted
    //#input(String save()): this.bean.minutes
    //#input(String save()): this.bean.pinnedToMain
    //#input(String save()): this.bean.plugins
    //#input(String save()): this.bean.plugins._tainted
    //#input(String save()): this.bean.rightToLeft
    //#input(String save()): this.bean.seconds
    //#input(String save()): this.bean.status
    //#input(String save()): this.bean.status._tainted
    //#input(String save()): this.bean.summary
    //#input(String save()): this.bean.summary._tainted
    //#input(String save()): this.bean.tagsString
    //#input(String save()): this.bean.tagsString._tainted
    //#input(String save()): this.bean.text
    //#input(String save()): this.bean.text._tainted
    //#input(String save()): this.bean.title
    //#input(String save()): this.bean.title._tainted
    //#input(String save()): this.entry
    //#output(String save()): return_value
    //#pre[40] (String save()): init'ed(this.entry)
    //#pre[1] (String save()): (soft) log != null
    //#pre[2] (String save()): (soft) org/apache/roller/weblogger/ui/struts2/editor/EntryBase.log != null
    //#pre[3] (String save()): (soft) org/apache/roller/weblogger/ui/struts2/editor/EntryBean.log != null
    //#pre[5] (String save()): (soft) this.__Tag == org/apache/roller/weblogger/ui/struts2/editor/EntryEdit
    //#pre[6] (String save()): (soft) this.bean != null
    //#pre[7] (String save()): (soft) this.bean.__Tag == org/apache/roller/weblogger/ui/struts2/editor/EntryBean
    //#pre[8] (String save()): (soft) init'ed(this.bean.allowComments)
    //#pre[9] (String save()): (soft) this.bean.categoryId != null
    //#pre[12] (String save()): (soft) init'ed(this.bean.commentDays)
    //#pre[14] (String save()): (soft) init'ed(this.bean.dateString)
    //#pre[17] (String save()): (soft) init'ed(this.bean.enclosureURL)
    //#pre[18] (String save()): (soft) init'ed(this.bean.hours)
    //#pre[19] (String save()): (soft) init'ed(this.bean.locale)
    //#pre[21] (String save()): (soft) init'ed(this.bean.minutes)
    //#pre[22] (String save()): (soft) init'ed(this.bean.pinnedToMain)
    //#pre[23] (String save()): (soft) init'ed(this.bean.plugins)
    //#pre[25] (String save()): (soft) init'ed(this.bean.rightToLeft)
    //#pre[26] (String save()): (soft) init'ed(this.bean.seconds)
    //#pre[27] (String save()): (soft) init'ed(this.bean.status)
    //#pre[30] (String save()): (soft) init'ed(this.bean.summary)
    //#pre[32] (String save()): (soft) init'ed(this.bean.tagsString)
    //#pre[35] (String save()): (soft) init'ed(this.bean.text)
    //#pre[37] (String save()): (soft) init'ed(this.bean.title)
    //#presumption(String save()): org.apache.roller.weblogger.business.Weblogger:getAutopingManager(...)@201 != null
    //#presumption(String save()): org.apache.roller.weblogger.business.Weblogger:getWeblogManager(...)@127 != null
    //#presumption(String save()): org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger(...)@127 != null
    //#presumption(String save()): org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger(...)@191 != null
    //#presumption(String save()): org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger(...)@201 != null
    //#presumption(String save()): org.apache.roller.weblogger.pojos.WeblogEntry:getWebsite(...)@122 != null
    //#presumption(String save()): init'ed(org.apache.roller.weblogger.pojos.WeblogPermission.AUTHOR)
    //#presumption(String save()): org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:getActionWeblog(...)@133 != null
    //#presumption(String save()): org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:getActionWeblog(...)@146 != null
    //#presumption(String save()): org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:getAuthenticatedUser(...)@152 != null
    //#presumption(String save()): org.apache.roller.weblogger.util.MediacastUtil:lookupResource(...)@160 != null
    //#post(String save()): return_value in Addr_Set{&"input",&"access-denied",&"error"}
    //#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:java.lang.StringBuilder
    //#unanalyzed(String save()): Effects-of-calling:java.lang.StringBuilder:append
    //#unanalyzed(String save()): Effects-of-calling:java.lang.StringBuilder:toString
    //#unanalyzed(String save()): Effects-of-calling:org.apache.commons.logging.Log:debug
    //#unanalyzed(String save()): Effects-of-calling:java.util.Calendar:setTime
    //#unanalyzed(String save()): Effects-of-calling:java.text.SimpleDateFormat
    //#unanalyzed(String save()): Effects-of-calling:java.text.DateFormat:setTimeZone
    //#unanalyzed(String save()): Effects-of-calling:org.apache.commons.lang.StringUtils:isEmpty
    //#unanalyzed(String save()): Effects-of-calling:java.text.DateFormat:parse
    //#unanalyzed(String save()): Effects-of-calling:java.util.Calendar:getInstance
    //#unanalyzed(String save()): Effects-of-calling:java.util.Calendar:set
    //#unanalyzed(String save()): Effects-of-calling:java.util.Calendar:getTimeInMillis
    //#unanalyzed(String save()): Effects-of-calling:java.sql.Timestamp
    //#unanalyzed(String save()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:setTitle
    //#unanalyzed(String save()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:setStatus
    //#unanalyzed(String save()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:setLocale
    //#unanalyzed(String save()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:setSummary
    //#unanalyzed(String save()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:setText
    //#unanalyzed(String save()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:setTagsAsString
    //#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:getWeblogManager
    //#unanalyzed(String save()): Effects-of-calling:org.apache.roller.weblogger.business.WeblogManager:getWeblogCategory
    //#unanalyzed(String save()): Effects-of-calling:org.apache.roller.weblogger.WebloggerException
    //#unanalyzed(String save()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:getWebsite
    //#unanalyzed(String save()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogCategory:getWebsite
    //#unanalyzed(String save()): Effects-of-calling:org.apache.roller.weblogger.pojos.Weblog:equals
    //#unanalyzed(String save()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:setCategory
    //#unanalyzed(String save()): Effects-of-calling:org.apache.commons.lang.StringUtils:join
    //#unanalyzed(String save()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:setPlugins
    //#unanalyzed(String save()): Effects-of-calling:java.lang.Boolean:valueOf
    //#unanalyzed(String save()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:setAllowComments
    //#unanalyzed(String save()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:setCommentDays
    //#unanalyzed(String save()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:setRightToLeft
    //#unanalyzed(String save()): Effects-of-calling:java.lang.StringBuffer
    //#unanalyzed(String save()): Effects-of-calling:java.lang.StringBuffer:append
    //#unanalyzed(String save()): Effects-of-calling:java.lang.StringBuffer:toString
    //#unanalyzed(String save()): Effects-of-calling:org.apache.roller.weblogger.business.Weblogger:getIndexManager
    //#unanalyzed(String save()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:isPublished
    //#unanalyzed(String save()): Effects-of-calling:org.apache.roller.weblogger.business.search.IndexManager:addEntryReIndexOperation
    //#unanalyzed(String save()): Effects-of-calling:org.apache.commons.logging.Log:warn
    //#test_vector(String save()): this.entry: Inverse{null}, Addr_Set{null}
    //#test_vector(String save()): org.apache.commons.lang.StringUtils:isEmpty(...)@156: {1}, {0}
    //#test_vector(String save()): org.apache.commons.logging.Log:isDebugEnabled(...)@182: {0}, {1}
    //#test_vector(String save()): org.apache.roller.weblogger.pojos.User:hasRole(...)@152: {0}, {1}
    //#test_vector(String save()): org.apache.roller.weblogger.pojos.Weblog:equals(...)@122: {1}, {0}
    //#test_vector(String save()): org.apache.roller.weblogger.pojos.Weblog:hasUserPermissions(...)@146: {1}, {0}
    //#test_vector(String save()): org.apache.roller.weblogger.pojos.WeblogEntry:getPubTime(...)@140: Inverse{null}, Addr_Set{null}
    //#test_vector(String save()): org.apache.roller.weblogger.pojos.WeblogEntry:isPending(...)@204: {0}, {1}
    //#test_vector(String save()): org.apache.roller.weblogger.pojos.WeblogEntry:isPublished(...)@139: {0}, {1}
    //#test_vector(String save()): org.apache.roller.weblogger.pojos.WeblogEntry:isPublished(...)@200: {0}, {1}
    //#test_vector(String save()): org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:hasActionErrors(...)@126: {1}, {0}
            return ERROR;
        } else if(!getEntry().getWebsite().equals(getActionWeblog())) {
    //#EntryEdit.java:122: Warning: method not available
    //#    -- call on Weblog org.apache.roller.weblogger.pojos.WeblogEntry:getWebsite()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: Weblog org.apache.roller.weblogger.pojos.WeblogEntry:getWebsite()
    //#EntryEdit.java:122: Warning: method not available
    //#    -- call on Weblog org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:getActionWeblog()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: Weblog org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:getActionWeblog()
    //#EntryEdit.java:122: Warning: method not available
    //#    -- call on bool org.apache.roller.weblogger.pojos.Weblog:equals(Object)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: bool org.apache.roller.weblogger.pojos.Weblog:equals(Object)
            return DENIED;
        }
        
        if(!hasActionErrors()) try {
    //#EntryEdit.java:126: Warning: method not available
    //#    -- call on bool org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:hasActionErrors()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: bool org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:hasActionErrors()
            WeblogManager weblogMgr = WebloggerFactory.getWeblogger().getWeblogManager();
    //#EntryEdit.java:127: Warning: method not available
    //#    -- call on Weblogger org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: Weblogger org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger()
    //#EntryEdit.java:127: Warning: method not available
    //#    -- call on WeblogManager org.apache.roller.weblogger.business.Weblogger:getWeblogManager()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: WeblogManager org.apache.roller.weblogger.business.Weblogger:getWeblogManager()
            
            WeblogEntry entry = getEntry();
            
            // set updatetime & pubtime
            entry.setUpdateTime(new Timestamp(new Date().getTime()));
    //#EntryEdit.java:132: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.pojos.WeblogEntry:setUpdateTime(Timestamp)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: void org.apache.roller.weblogger.pojos.WeblogEntry:setUpdateTime(Timestamp)
            entry.setPubTime(getBean().getPubTime(getLocale(), getActionWeblog().getTimeZoneInstance()));
    //#EntryEdit.java:133: Warning: method not available
    //#    -- call on Locale org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:getLocale()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: Locale org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:getLocale()
    //#EntryEdit.java:133: Warning: method not available
    //#    -- call on Weblog org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:getActionWeblog()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: Weblog org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:getActionWeblog()
    //#EntryEdit.java:133: Warning: method not available
    //#    -- call on TimeZone org.apache.roller.weblogger.pojos.Weblog:getTimeZoneInstance()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: TimeZone org.apache.roller.weblogger.pojos.Weblog:getTimeZoneInstance()
    //#EntryEdit.java:133: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.pojos.WeblogEntry:setPubTime(Timestamp)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: void org.apache.roller.weblogger.pojos.WeblogEntry:setPubTime(Timestamp)
            
            // copy data to pojo
            getBean().copyTo(entry);
            
            // handle pubtime auto set
            if(entry.isPublished()) {
    //#EntryEdit.java:139: Warning: method not available
    //#    -- call on bool org.apache.roller.weblogger.pojos.WeblogEntry:isPublished()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: bool org.apache.roller.weblogger.pojos.WeblogEntry:isPublished()
                if(entry.getPubTime() == null) {
    //#EntryEdit.java:140: Warning: method not available
    //#    -- call on Timestamp org.apache.roller.weblogger.pojos.WeblogEntry:getPubTime()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: Timestamp org.apache.roller.weblogger.pojos.WeblogEntry:getPubTime()
                    // no time specified, use current time
                    entry.setPubTime(entry.getUpdateTime());
    //#EntryEdit.java:142: Warning: method not available
    //#    -- call on Timestamp org.apache.roller.weblogger.pojos.WeblogEntry:getUpdateTime()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: Timestamp org.apache.roller.weblogger.pojos.WeblogEntry:getUpdateTime()
    //#EntryEdit.java:142: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.pojos.WeblogEntry:setPubTime(Timestamp)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: void org.apache.roller.weblogger.pojos.WeblogEntry:setPubTime(Timestamp)
                }
                
                // if user does not have author perms then force PENDING status
                if(!getActionWeblog().hasUserPermissions(getAuthenticatedUser(),WeblogPermission.AUTHOR)) {
    //#EntryEdit.java:146: Warning: method not available
    //#    -- call on Weblog org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:getActionWeblog()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: Weblog org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:getActionWeblog()
    //#EntryEdit.java:146: Warning: method not available
    //#    -- call on User org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:getAuthenticatedUser()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: User org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:getAuthenticatedUser()
    //#EntryEdit.java:146: Warning: method not available
    //#    -- call on bool org.apache.roller.weblogger.pojos.Weblog:hasUserPermissions(User, short)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: bool org.apache.roller.weblogger.pojos.Weblog:hasUserPermissions(User, short)
                    entry.setStatus(WeblogEntry.PENDING);
    //#EntryEdit.java:147: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.pojos.WeblogEntry:setStatus(String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: void org.apache.roller.weblogger.pojos.WeblogEntry:setStatus(String)
                }
            }
            
            // if user is an admin then apply pinned to main value as well
            if(getAuthenticatedUser().hasRole("admin")) {
    //#EntryEdit.java:152: Warning: method not available
    //#    -- call on User org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:getAuthenticatedUser()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: User org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:getAuthenticatedUser()
    //#EntryEdit.java:152: Warning: method not available
    //#    -- call on bool org.apache.roller.weblogger.pojos.User:hasRole(String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: bool org.apache.roller.weblogger.pojos.User:hasRole(String)
                entry.setPinnedToMain(getBean().getPinnedToMain());
    //#EntryEdit.java:153: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.pojos.WeblogEntry:setPinnedToMain(Boolean)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: void org.apache.roller.weblogger.pojos.WeblogEntry:setPinnedToMain(Boolean)
            }
            
            if(!StringUtils.isEmpty(getBean().getEnclosureURL())) {
    //#EntryEdit.java:156: Warning: method not available
    //#    -- call on bool org.apache.commons.lang.StringUtils:isEmpty(String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: bool org.apache.commons.lang.StringUtils:isEmpty(String)
                try {
                    // Fetch MediaCast resource
                    log.debug("Checking MediaCast attributes");
    //#EntryEdit.java:159: Warning: method not available
    //#    -- call on void org.apache.commons.logging.Log:debug(Object)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: void org.apache.commons.logging.Log:debug(Object)
                    MediacastResource mediacast = MediacastUtil.lookupResource(getBean().getEnclosureURL());
    //#EntryEdit.java:160: Warning: method not available
    //#    -- call on MediacastResource org.apache.roller.weblogger.util.MediacastUtil:lookupResource(String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: MediacastResource org.apache.roller.weblogger.util.MediacastUtil:lookupResource(String)

                    // set mediacast attributes
                    entry.putEntryAttribute("att_mediacast_url", mediacast.getUrl());
    //#EntryEdit.java:163: Warning: method not available
    //#    -- call on String org.apache.roller.weblogger.util.MediacastResource:getUrl()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: String org.apache.roller.weblogger.util.MediacastResource:getUrl()
    //#EntryEdit.java:163: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.pojos.WeblogEntry:putEntryAttribute(String, String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: void org.apache.roller.weblogger.pojos.WeblogEntry:putEntryAttribute(String, String)
                    entry.putEntryAttribute("att_mediacast_type", mediacast.getContentType());
    //#EntryEdit.java:164: Warning: method not available
    //#    -- call on String org.apache.roller.weblogger.util.MediacastResource:getContentType()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: String org.apache.roller.weblogger.util.MediacastResource:getContentType()
    //#EntryEdit.java:164: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.pojos.WeblogEntry:putEntryAttribute(String, String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: void org.apache.roller.weblogger.pojos.WeblogEntry:putEntryAttribute(String, String)
                    entry.putEntryAttribute("att_mediacast_length", ""+mediacast.getLength());
    //#EntryEdit.java:165: Warning: method not available
    //#    -- call on long org.apache.roller.weblogger.util.MediacastResource:getLength()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: long org.apache.roller.weblogger.util.MediacastResource:getLength()
    //#EntryEdit.java:165: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.pojos.WeblogEntry:putEntryAttribute(String, String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: void org.apache.roller.weblogger.pojos.WeblogEntry:putEntryAttribute(String, String)

                } catch (MediacastException ex) {
                    addMessage(getText(ex.getErrorKey()));
    //#EntryEdit.java:168: Warning: method not available
    //#    -- call on String org.apache.roller.weblogger.util.MediacastException:getErrorKey()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: String org.apache.roller.weblogger.util.MediacastException:getErrorKey()
    //#EntryEdit.java:168: Warning: method not available
    //#    -- call on String org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:getText(String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: String org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:getText(String)
    //#EntryEdit.java:168: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:addMessage(String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:addMessage(String)
                }
            } else {
                try {
                    // if MediaCast string is empty, clean out MediaCast attributes
                    weblogMgr.removeWeblogEntryAttribute("att_mediacast_url", entry);
    //#EntryEdit.java:173: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.business.WeblogManager:removeWeblogEntryAttribute(String, WeblogEntry)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: void org.apache.roller.weblogger.business.WeblogManager:removeWeblogEntryAttribute(String, WeblogEntry)
                    weblogMgr.removeWeblogEntryAttribute("att_mediacast_type", entry);
    //#EntryEdit.java:174: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.business.WeblogManager:removeWeblogEntryAttribute(String, WeblogEntry)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: void org.apache.roller.weblogger.business.WeblogManager:removeWeblogEntryAttribute(String, WeblogEntry)
                    weblogMgr.removeWeblogEntryAttribute("att_mediacast_length", entry);
    //#EntryEdit.java:175: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.business.WeblogManager:removeWeblogEntryAttribute(String, WeblogEntry)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: void org.apache.roller.weblogger.business.WeblogManager:removeWeblogEntryAttribute(String, WeblogEntry)
                    
                } catch (WebloggerException e) {
                    addMessage(getText("weblogEdit.mediaCastErrorRemoving"));
    //#EntryEdit.java:178: Warning: method not available
    //#    -- call on String org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:getText(String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: String org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:getText(String)
    //#EntryEdit.java:178: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:addMessage(String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:addMessage(String)
                }
            }
            
            if(log.isDebugEnabled()) {
    //#EntryEdit.java:182: Warning: method not available
    //#    -- call on bool org.apache.commons.logging.Log:isDebugEnabled()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: bool org.apache.commons.logging.Log:isDebugEnabled()
                log.debug("entry bean is ...\n"+getBean().toString());
    //#EntryEdit.java:183: Warning: method not available
    //#    -- call on void org.apache.commons.logging.Log:debug(Object)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: void org.apache.commons.logging.Log:debug(Object)
                log.debug("final status = "+entry.getStatus());
    //#EntryEdit.java:184: Warning: method not available
    //#    -- call on String org.apache.roller.weblogger.pojos.WeblogEntry:getStatus()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: String org.apache.roller.weblogger.pojos.WeblogEntry:getStatus()
    //#EntryEdit.java:184: Warning: method not available
    //#    -- call on void org.apache.commons.logging.Log:debug(Object)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: void org.apache.commons.logging.Log:debug(Object)
                log.debug("updtime = "+entry.getUpdateTime());
    //#EntryEdit.java:185: Warning: method not available
    //#    -- call on Timestamp org.apache.roller.weblogger.pojos.WeblogEntry:getUpdateTime()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: Timestamp org.apache.roller.weblogger.pojos.WeblogEntry:getUpdateTime()
    //#EntryEdit.java:185: Warning: method not available
    //#    -- call on void org.apache.commons.logging.Log:debug(Object)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: void org.apache.commons.logging.Log:debug(Object)
                log.debug("pubtime = "+entry.getPubTime());
    //#EntryEdit.java:186: Warning: method not available
    //#    -- call on Timestamp org.apache.roller.weblogger.pojos.WeblogEntry:getPubTime()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: Timestamp org.apache.roller.weblogger.pojos.WeblogEntry:getPubTime()
    //#EntryEdit.java:186: Warning: method not available
    //#    -- call on void org.apache.commons.logging.Log:debug(Object)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: void org.apache.commons.logging.Log:debug(Object)
            }
            
            log.debug("Saving entry");
    //#EntryEdit.java:189: Warning: method not available
    //#    -- call on void org.apache.commons.logging.Log:debug(Object)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: void org.apache.commons.logging.Log:debug(Object)
            weblogMgr.saveWeblogEntry(entry);
    //#EntryEdit.java:190: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.business.WeblogManager:saveWeblogEntry(WeblogEntry)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: void org.apache.roller.weblogger.business.WeblogManager:saveWeblogEntry(WeblogEntry)
            WebloggerFactory.getWeblogger().flush();
    //#EntryEdit.java:191: Warning: method not available
    //#    -- call on Weblogger org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: Weblogger org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger()
    //#EntryEdit.java:191: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.business.Weblogger:flush()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: void org.apache.roller.weblogger.business.Weblogger:flush()
            
            // notify search of the new entry
            reindexEntry(entry);
            
            // notify caches
            CacheManager.invalidate(entry);
    //#EntryEdit.java:197: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.util.cache.CacheManager:invalidate(WeblogEntry)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: void org.apache.roller.weblogger.util.cache.CacheManager:invalidate(WeblogEntry)
            
            // Queue applicable pings for this update.
            if(entry.isPublished()) {
    //#EntryEdit.java:200: Warning: method not available
    //#    -- call on bool org.apache.roller.weblogger.pojos.WeblogEntry:isPublished()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: bool org.apache.roller.weblogger.pojos.WeblogEntry:isPublished()
                WebloggerFactory.getWeblogger().getAutopingManager().queueApplicableAutoPings(entry);
    //#EntryEdit.java:201: Warning: method not available
    //#    -- call on Weblogger org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: Weblogger org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger()
    //#EntryEdit.java:201: Warning: method not available
    //#    -- call on AutoPingManager org.apache.roller.weblogger.business.Weblogger:getAutopingManager()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: AutoPingManager org.apache.roller.weblogger.business.Weblogger:getAutopingManager()
    //#EntryEdit.java:201: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.business.pings.AutoPingManager:queueApplicableAutoPings(WeblogEntry)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: void org.apache.roller.weblogger.business.pings.AutoPingManager:queueApplicableAutoPings(WeblogEntry)
            }
            
            if(entry.isPending()) {
    //#EntryEdit.java:204: Warning: method not available
    //#    -- call on bool org.apache.roller.weblogger.pojos.WeblogEntry:isPending()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: bool org.apache.roller.weblogger.pojos.WeblogEntry:isPending()
                // implies that entry just changed to pending
                MailUtil.sendPendingEntryNotice(entry);
    //#EntryEdit.java:206: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.util.MailUtil:sendPendingEntryNotice(WeblogEntry)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: void org.apache.roller.weblogger.util.MailUtil:sendPendingEntryNotice(WeblogEntry)
                addMessage("weblogEdit.submittedForReview");
    //#EntryEdit.java:207: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:addMessage(String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:addMessage(String)
            } else {
                addMessage("weblogEdit.changesSaved");
    //#EntryEdit.java:209: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:addMessage(String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:addMessage(String)
            }
            
            return INPUT;
            
        } catch (Exception e) {
            log.error("Error saving new entry", e);
    //#EntryEdit.java:215: 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.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: void org.apache.commons.logging.Log:error(Object, Throwable)
            // TODO: i18n
            addError("Error saving new entry");
    //#EntryEdit.java:217: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:addError(String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String save()
    //#    unanalyzed callee: void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:addError(String)
        }


        
        return INPUT;
    //#EntryEdit.java:222: end of method: String org.apache.roller.weblogger.ui.struts2.editor.EntryEdit.save()
    }
    
    
    /**
     * Send trackback to a specific url.
     */
    @SkipValidation
    public String trackback() {
        
        // make sure we have an entry to edit and it belongs to the action weblog
        if(getEntry() == null) {
    //#EntryEdit.java:233: method: String org.apache.roller.weblogger.ui.struts2.editor.EntryEdit.trackback()
    //#input(String trackback()): log
    //#input(String trackback()): this
    //#input(String trackback()): this.entry
    //#input(String trackback()): this.trackbackUrl
    //#output(String trackback()): return_value
    //#output(String trackback()): this.trackbackUrl
    //#pre[4] (String trackback()): init'ed(this.entry)
    //#pre[1] (String trackback()): (soft) log != null
    //#pre[2] (String trackback()): (soft) init'ed(this.trackbackUrl)
    //#presumption(String trackback()): java.util.Iterator:next(...)@254 != null
    //#presumption(String trackback()): java.util.Iterator:next(...)@263 != null
    //#presumption(String trackback()): org.apache.roller.weblogger.pojos.WeblogEntry:getWebsite(...)@235 != null
    //#presumption(String trackback()): org.apache.roller.weblogger.util.RollerMessages:getErrors(...)@262 != null
    //#presumption(String trackback()): org.apache.roller.weblogger.util.RollerMessages:getMessages(...)@253 != null
    //#post(String trackback()): return_value in Addr_Set{&"input",&"access-denied",&"error"}
    //#post(String trackback()): this.trackbackUrl == One-of{old this.trackbackUrl, null}
    //#post(String trackback()): (soft) init'ed(this.trackbackUrl)
    //#test_vector(String trackback()): this.entry: Inverse{null}, Addr_Set{null}
    //#test_vector(String trackback()): java.util.Iterator:hasNext(...)@253: {0}, {1}
    //#test_vector(String trackback()): java.util.Iterator:hasNext(...)@262: {0}, {1}
    //#test_vector(String trackback()): org.apache.commons.lang.StringUtils:isEmpty(...)@239: {1}, {0}
    //#test_vector(String trackback()): org.apache.roller.weblogger.pojos.Weblog:equals(...)@235: {1}, {0}
    //#test_vector(String trackback()): org.apache.roller.weblogger.util.RollerMessages_RollerMessage:getArgs(...)@255: Inverse{null}, Addr_Set{null}
    //#test_vector(String trackback()): org.apache.roller.weblogger.util.RollerMessages_RollerMessage:getArgs(...)@264: Inverse{null}, Addr_Set{null}
            return ERROR;
        } else if(!getEntry().getWebsite().equals(getActionWeblog())) {
    //#EntryEdit.java:235: Warning: method not available
    //#    -- call on Weblog org.apache.roller.weblogger.pojos.WeblogEntry:getWebsite()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String trackback()
    //#    unanalyzed callee: Weblog org.apache.roller.weblogger.pojos.WeblogEntry:getWebsite()
    //#EntryEdit.java:235: Warning: method not available
    //#    -- call on Weblog org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:getActionWeblog()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String trackback()
    //#    unanalyzed callee: Weblog org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:getActionWeblog()
    //#EntryEdit.java:235: Warning: method not available
    //#    -- call on bool org.apache.roller.weblogger.pojos.Weblog:equals(Object)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String trackback()
    //#    unanalyzed callee: bool org.apache.roller.weblogger.pojos.Weblog:equals(Object)
            return DENIED;
        }
        
        if(!StringUtils.isEmpty(getTrackbackUrl())) {
    //#EntryEdit.java:239: Warning: method not available
    //#    -- call on bool org.apache.commons.lang.StringUtils:isEmpty(String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String trackback()
    //#    unanalyzed callee: bool org.apache.commons.lang.StringUtils:isEmpty(String)
            RollerMessages results = null;
            try {
                Trackback trackback = new Trackback(getEntry(), getTrackbackUrl());
    //#EntryEdit.java:242: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.util.Trackback(WeblogEntry, String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String trackback()
    //#    unanalyzed callee: void org.apache.roller.weblogger.util.Trackback(WeblogEntry, String)
                results = trackback.send();
    //#EntryEdit.java:243: Warning: method not available
    //#    -- call on RollerMessages org.apache.roller.weblogger.util.Trackback:send()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String trackback()
    //#    unanalyzed callee: RollerMessages org.apache.roller.weblogger.util.Trackback:send()
            } catch(TrackbackNotAllowedException ex) {
                addError("error.trackbackNotAllowed");
    //#EntryEdit.java:245: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:addError(String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String trackback()
    //#    unanalyzed callee: void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:addError(String)
            } catch(Throwable t) {
                log.error("Error sending trackback", t);
    //#EntryEdit.java:247: 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.EntryEdit
    //#    method: String trackback()
    //#    unanalyzed callee: void org.apache.commons.logging.Log:error(Object, Throwable)
                // TODO: error handling
                addError("error.general", t.getMessage());
    //#EntryEdit.java:249: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:addError(String, String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String trackback()
    //#    unanalyzed callee: void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:addError(String, String)
            }
            
            if(results != null) {
                for (Iterator mit = results.getMessages(); mit.hasNext();) {
    //#EntryEdit.java:253: Warning: method not available
    //#    -- call on Iterator org.apache.roller.weblogger.util.RollerMessages:getMessages()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String trackback()
    //#    unanalyzed callee: Iterator org.apache.roller.weblogger.util.RollerMessages:getMessages()
                    RollerMessage msg = (RollerMessage) mit.next();
                    if(msg.getArgs() == null) {
    //#EntryEdit.java:255: Warning: method not available
    //#    -- call on String[] org.apache.roller.weblogger.util.RollerMessages$RollerMessage:getArgs()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String trackback()
    //#    unanalyzed callee: String[] org.apache.roller.weblogger.util.RollerMessages$RollerMessage:getArgs()
                        addMessage(msg.getKey());
    //#EntryEdit.java:256: Warning: method not available
    //#    -- call on String org.apache.roller.weblogger.util.RollerMessages$RollerMessage:getKey()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String trackback()
    //#    unanalyzed callee: String org.apache.roller.weblogger.util.RollerMessages$RollerMessage:getKey()
    //#EntryEdit.java:256: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:addMessage(String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String trackback()
    //#    unanalyzed callee: void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:addMessage(String)
                    } else {
                        addMessage(msg.getKey(), Arrays.asList(msg.getArgs()));
    //#EntryEdit.java:258: Warning: method not available
    //#    -- call on String org.apache.roller.weblogger.util.RollerMessages$RollerMessage:getKey()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String trackback()
    //#    unanalyzed callee: String org.apache.roller.weblogger.util.RollerMessages$RollerMessage:getKey()
    //#EntryEdit.java:258: Warning: method not available
    //#    -- call on String[] org.apache.roller.weblogger.util.RollerMessages$RollerMessage:getArgs()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String trackback()
    //#    unanalyzed callee: String[] org.apache.roller.weblogger.util.RollerMessages$RollerMessage:getArgs()
    //#EntryEdit.java:258: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:addMessage(String, List)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String trackback()
    //#    unanalyzed callee: void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:addMessage(String, List)
                    }
                }
                
                for (Iterator eit = results.getErrors(); eit.hasNext();) {
    //#EntryEdit.java:262: Warning: method not available
    //#    -- call on Iterator org.apache.roller.weblogger.util.RollerMessages:getErrors()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String trackback()
    //#    unanalyzed callee: Iterator org.apache.roller.weblogger.util.RollerMessages:getErrors()
                    RollerMessage err = (RollerMessage) eit.next();
                    if(err.getArgs() == null) {
    //#EntryEdit.java:264: Warning: method not available
    //#    -- call on String[] org.apache.roller.weblogger.util.RollerMessages$RollerMessage:getArgs()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String trackback()
    //#    unanalyzed callee: String[] org.apache.roller.weblogger.util.RollerMessages$RollerMessage:getArgs()
                        addError(err.getKey());
    //#EntryEdit.java:265: Warning: method not available
    //#    -- call on String org.apache.roller.weblogger.util.RollerMessages$RollerMessage:getKey()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String trackback()
    //#    unanalyzed callee: String org.apache.roller.weblogger.util.RollerMessages$RollerMessage:getKey()
    //#EntryEdit.java:265: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:addError(String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String trackback()
    //#    unanalyzed callee: void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:addError(String)
                    } else {
                        addError(err.getKey(), Arrays.asList(err.getArgs()));
    //#EntryEdit.java:267: Warning: method not available
    //#    -- call on String org.apache.roller.weblogger.util.RollerMessages$RollerMessage:getKey()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String trackback()
    //#    unanalyzed callee: String org.apache.roller.weblogger.util.RollerMessages$RollerMessage:getKey()
    //#EntryEdit.java:267: Warning: method not available
    //#    -- call on String[] org.apache.roller.weblogger.util.RollerMessages$RollerMessage:getArgs()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String trackback()
    //#    unanalyzed callee: String[] org.apache.roller.weblogger.util.RollerMessages$RollerMessage:getArgs()
    //#EntryEdit.java:267: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:addError(String, List)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String trackback()
    //#    unanalyzed callee: void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:addError(String, List)
                    }
                }
            }

            // reset trackback url
            setTrackbackUrl(null);
            
        }
        
        return INPUT;
    //#EntryEdit.java:277: end of method: String org.apache.roller.weblogger.ui.struts2.editor.EntryEdit.trackback()
    }
    
    
    /**
     * Get the list of all categories for the action weblog, not including root.
     */
    public List<WeblogCategory> getCategories() {
        try {
            WeblogManager wmgr = WebloggerFactory.getWeblogger().getWeblogManager();
    //#EntryEdit.java:286: method: List org.apache.roller.weblogger.ui.struts2.editor.EntryEdit.getCategories()
    //#EntryEdit.java:286: Warning: method not available
    //#    -- call on Weblogger org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: List getCategories()
    //#    unanalyzed callee: Weblogger org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger()
    //#EntryEdit.java:286: Warning: method not available
    //#    -- call on WeblogManager org.apache.roller.weblogger.business.Weblogger:getWeblogManager()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: List getCategories()
    //#    unanalyzed callee: WeblogManager org.apache.roller.weblogger.business.Weblogger:getWeblogManager()
    //#input(List getCategories()): "Error getting category list for weblog - "._tainted
    //#input(List getCategories()): java.util.Collections.EMPTY_LIST
    //#input(List getCategories()): log
    //#input(List getCategories()): this
    //#output(List getCategories()): return_value
    //#pre[1] (List getCategories()): (soft) log != null
    //#presumption(List getCategories()): init'ed(java.util.Collections.EMPTY_LIST)
    //#presumption(List getCategories()): org.apache.roller.weblogger.business.Weblogger:getWeblogManager(...)@286 != null
    //#presumption(List getCategories()): org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger(...)@286 != null
    //#post(List getCategories()): init'ed(return_value)
            return wmgr.getWeblogCategories(getActionWeblog(), false);
    //#EntryEdit.java:287: Warning: method not available
    //#    -- call on Weblog org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:getActionWeblog()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: List getCategories()
    //#    unanalyzed callee: Weblog org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:getActionWeblog()
    //#EntryEdit.java:287: Warning: method not available
    //#    -- call on List org.apache.roller.weblogger.business.WeblogManager:getWeblogCategories(Weblog, bool)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: List getCategories()
    //#    unanalyzed callee: List org.apache.roller.weblogger.business.WeblogManager:getWeblogCategories(Weblog, bool)
        } catch (WebloggerException ex) {
            log.error("Error getting category list for weblog - "+getWeblog(), ex);
    //#EntryEdit.java:289: Warning: method not available
    //#    -- call on String org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:getWeblog()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: List getCategories()
    //#    unanalyzed callee: String org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:getWeblog()
    //#EntryEdit.java:289: 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.EntryEdit
    //#    method: List getCategories()
    //#    unanalyzed callee: void org.apache.commons.logging.Log:error(Object, Throwable)
            return Collections.EMPTY_LIST;
    //#EntryEdit.java:290: end of method: List org.apache.roller.weblogger.ui.struts2.editor.EntryEdit.getCategories()
        }
    }
    
    public String getPreviewURL() {
        return WebloggerFactory.getWeblogger().getUrlStrategy().getPreviewURLStrategy(null).getWeblogEntryURL(getActionWeblog(), null, getEntry().getAnchor(), true);
    //#EntryEdit.java:295: method: String org.apache.roller.weblogger.ui.struts2.editor.EntryEdit.getPreviewURL()
    //#EntryEdit.java:295: Warning: method not available
    //#    -- call on Weblogger org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String getPreviewURL()
    //#    unanalyzed callee: Weblogger org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger()
    //#EntryEdit.java:295: Warning: method not available
    //#    -- call on URLStrategy org.apache.roller.weblogger.business.Weblogger:getUrlStrategy()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String getPreviewURL()
    //#    unanalyzed callee: URLStrategy org.apache.roller.weblogger.business.Weblogger:getUrlStrategy()
    //#EntryEdit.java:295: Warning: method not available
    //#    -- call on URLStrategy org.apache.roller.weblogger.business.URLStrategy:getPreviewURLStrategy(String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String getPreviewURL()
    //#    unanalyzed callee: URLStrategy org.apache.roller.weblogger.business.URLStrategy:getPreviewURLStrategy(String)
    //#EntryEdit.java:295: Warning: method not available
    //#    -- call on Weblog org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:getActionWeblog()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String getPreviewURL()
    //#    unanalyzed callee: Weblog org.apache.roller.weblogger.ui.struts2.editor.EntryEdit:getActionWeblog()
    //#EntryEdit.java:295: Warning: method not available
    //#    -- call on String org.apache.roller.weblogger.pojos.WeblogEntry:getAnchor()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String getPreviewURL()
    //#    unanalyzed callee: String org.apache.roller.weblogger.pojos.WeblogEntry:getAnchor()
    //#EntryEdit.java:295: Warning: method not available
    //#    -- call on String org.apache.roller.weblogger.business.URLStrategy:getWeblogEntryURL(Weblog, String, String, bool)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
    //#    method: String getPreviewURL()
    //#    unanalyzed callee: String org.apache.roller.weblogger.business.URLStrategy:getWeblogEntryURL(Weblog, String, String, bool)
    //#input(String getPreviewURL()): this
    //#input(String getPreviewURL()): this.entry
    //#output(String getPreviewURL()): return_value
    //#pre[2] (String getPreviewURL()): this.entry != null
    //#presumption(String getPreviewURL()): org.apache.roller.weblogger.business.URLStrategy:getPreviewURLStrategy(...)@295 != null
    //#presumption(String getPreviewURL()): org.apache.roller.weblogger.business.Weblogger:getUrlStrategy(...)@295 != null
    //#presumption(String getPreviewURL()): org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger(...)@295 != null
    //#post(String getPreviewURL()): init'ed(return_value)
    //#EntryEdit.java:295: end of method: String org.apache.roller.weblogger.ui.struts2.editor.EntryEdit.getPreviewURL()
    }
    
    
    public EntryBean getBean() {
        return bean;
    //#EntryEdit.java:300: method: EntryBean org.apache.roller.weblogger.ui.struts2.editor.EntryEdit.getBean()
    //#input(EntryBean getBean()): this
    //#input(EntryBean getBean()): this.bean
    //#output(EntryBean getBean()): return_value
    //#pre[2] (EntryBean getBean()): init'ed(this.bean)
    //#post(EntryBean getBean()): return_value == this.bean
    //#post(EntryBean getBean()): init'ed(return_value)
    //#EntryEdit.java:300: end of method: EntryBean org.apache.roller.weblogger.ui.struts2.editor.EntryEdit.getBean()
    }

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

    public WeblogEntry getEntry() {
        return entry;
    //#EntryEdit.java:308: method: WeblogEntry org.apache.roller.weblogger.ui.struts2.editor.EntryEdit.getEntry()
    //#input(WeblogEntry getEntry()): this
    //#input(WeblogEntry getEntry()): this.entry
    //#output(WeblogEntry getEntry()): return_value
    //#pre[2] (WeblogEntry getEntry()): init'ed(this.entry)
    //#post(WeblogEntry getEntry()): return_value == this.entry
    //#post(WeblogEntry getEntry()): init'ed(return_value)
    //#EntryEdit.java:308: end of method: WeblogEntry org.apache.roller.weblogger.ui.struts2.editor.EntryEdit.getEntry()
    }

    public void setEntry(WeblogEntry entry) {
        this.entry = entry;
    //#EntryEdit.java:312: method: void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit.setEntry(WeblogEntry)
    //#input(void setEntry(WeblogEntry)): entry
    //#input(void setEntry(WeblogEntry)): this
    //#output(void setEntry(WeblogEntry)): this.entry
    //#post(void setEntry(WeblogEntry)): this.entry == entry
    //#post(void setEntry(WeblogEntry)): init'ed(this.entry)
    }
    //#EntryEdit.java:313: end of method: void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit.setEntry(WeblogEntry)

    public String getTrackbackUrl() {
        return trackbackUrl;
    //#EntryEdit.java:316: method: String org.apache.roller.weblogger.ui.struts2.editor.EntryEdit.getTrackbackUrl()
    //#input(String getTrackbackUrl()): this
    //#input(String getTrackbackUrl()): this.trackbackUrl
    //#output(String getTrackbackUrl()): return_value
    //#pre[2] (String getTrackbackUrl()): init'ed(this.trackbackUrl)
    //#post(String getTrackbackUrl()): return_value == this.trackbackUrl
    //#post(String getTrackbackUrl()): init'ed(return_value)
    //#EntryEdit.java:316: end of method: String org.apache.roller.weblogger.ui.struts2.editor.EntryEdit.getTrackbackUrl()
    }

    public void setTrackbackUrl(String trackbackUrl) {
        this.trackbackUrl = trackbackUrl;
    //#EntryEdit.java:320: method: void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit.setTrackbackUrl(String)
    //#input(void setTrackbackUrl(String)): this
    //#input(void setTrackbackUrl(String)): trackbackUrl
    //#output(void setTrackbackUrl(String)): this.trackbackUrl
    //#post(void setTrackbackUrl(String)): this.trackbackUrl == trackbackUrl
    //#post(void setTrackbackUrl(String)): init'ed(this.trackbackUrl)
    }
    //#EntryEdit.java:321: end of method: void org.apache.roller.weblogger.ui.struts2.editor.EntryEdit.setTrackbackUrl(String)
    
}
    //#EntryEdit.java:: end of class: org.apache.roller.weblogger.ui.struts2.editor.EntryEdit
