//# 0 errors, 517 messages
//#
/*
    //#Pings.java:1:1: class: org.apache.roller.weblogger.ui.struts2.editor.Pings
 * 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 org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.roller.weblogger.WebloggerException;
import org.apache.roller.weblogger.config.PingConfig;
import org.apache.roller.weblogger.business.pings.AutoPingManager;
import org.apache.roller.weblogger.business.pings.PingTargetManager;
import org.apache.roller.weblogger.business.WebloggerFactory;
import org.apache.roller.weblogger.pojos.AutoPing;
import org.apache.roller.weblogger.pojos.PingTarget;
import org.apache.roller.weblogger.business.pings.WeblogUpdatePinger;
import org.apache.xmlrpc.XmlRpcException;
import java.io.IOException;
import java.net.SocketException;
import java.net.UnknownHostException;
import java.util.Collections;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import org.apache.roller.weblogger.pojos.WeblogPermission;
import org.apache.roller.weblogger.ui.struts2.util.UIAction;


/**
 * Actions for setting up automatic ping configuration for a weblog.
 */
public class Pings extends UIAction {
    
    private static Log log = LogFactory.getLog(Pings.class);
    //#Pings.java:49: method: org.apache.roller.weblogger.ui.struts2.editor.Pings.org.apache.roller.weblogger.ui.struts2.editor.Pings__static_init
    //#Pings.java:49: Warning: method not available
    //#    -- call on Log org.apache.commons.logging.LogFactory:getLog(Class)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: org.apache.roller.weblogger.ui.struts2.editor.Pings__static_init
    //#    unanalyzed callee: Log org.apache.commons.logging.LogFactory:getLog(Class)
    //#output(org.apache.roller.weblogger.ui.struts2.editor.Pings__static_init): __Descendant_Table[org/apache/roller/weblogger/ui/struts2/editor/Pings]
    //#output(org.apache.roller.weblogger.ui.struts2.editor.Pings__static_init): __Dispatch_Table.addSpecificMessages(Ljava/lang/Exception;)V
    //#output(org.apache.roller.weblogger.ui.struts2.editor.Pings__static_init): __Dispatch_Table.buildIsEnabledMap()V
    //#output(org.apache.roller.weblogger.ui.struts2.editor.Pings__static_init): __Dispatch_Table.disable()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.Pings__static_init): __Dispatch_Table.enable()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.Pings__static_init): __Dispatch_Table.execute()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.Pings__static_init): __Dispatch_Table.getCommonPingTargets()Ljava/util/List;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.Pings__static_init): __Dispatch_Table.getCustomPingTargets()Ljava/util/List;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.Pings__static_init): __Dispatch_Table.getPingStatus()Ljava/util/Map;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.Pings__static_init): __Dispatch_Table.getPingTarget()Lorg/apache/roller/weblogger/pojos/PingTarget;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.Pings__static_init): __Dispatch_Table.getPingTargetId()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.Pings__static_init): __Dispatch_Table.myPrepare()V
    //#output(org.apache.roller.weblogger.ui.struts2.editor.Pings__static_init): __Dispatch_Table.pingNow()Ljava/lang/String;
    //#output(org.apache.roller.weblogger.ui.struts2.editor.Pings__static_init): __Dispatch_Table.requireWeblogPermissions()S
    //#output(org.apache.roller.weblogger.ui.struts2.editor.Pings__static_init): __Dispatch_Table.setCommonPingTargets(Ljava/util/List;)V
    //#output(org.apache.roller.weblogger.ui.struts2.editor.Pings__static_init): __Dispatch_Table.setCustomPingTargets(Ljava/util/List;)V
    //#output(org.apache.roller.weblogger.ui.struts2.editor.Pings__static_init): __Dispatch_Table.setPingStatus(Ljava/util/Map;)V
    //#output(org.apache.roller.weblogger.ui.struts2.editor.Pings__static_init): __Dispatch_Table.setPingTarget(Lorg/apache/roller/weblogger/pojos/PingTarget;)V
    //#output(org.apache.roller.weblogger.ui.struts2.editor.Pings__static_init): __Dispatch_Table.setPingTargetId(Ljava/lang/String;)V
    //#output(org.apache.roller.weblogger.ui.struts2.editor.Pings__static_init): log
    //#post(org.apache.roller.weblogger.ui.struts2.editor.Pings__static_init): __Descendant_Table[org/apache/roller/weblogger/ui/struts2/editor/Pings] == &__Dispatch_Table
    //#post(org.apache.roller.weblogger.ui.struts2.editor.Pings__static_init): __Dispatch_Table.addSpecificMessages(Ljava/lang/Exception;)V == &addSpecificMessages
    //#post(org.apache.roller.weblogger.ui.struts2.editor.Pings__static_init): __Dispatch_Table.buildIsEnabledMap()V == &buildIsEnabledMap
    //#post(org.apache.roller.weblogger.ui.struts2.editor.Pings__static_init): __Dispatch_Table.disable()Ljava/lang/String; == &disable
    //#post(org.apache.roller.weblogger.ui.struts2.editor.Pings__static_init): __Dispatch_Table.enable()Ljava/lang/String; == &enable
    //#post(org.apache.roller.weblogger.ui.struts2.editor.Pings__static_init): __Dispatch_Table.execute()Ljava/lang/String; == &execute
    //#post(org.apache.roller.weblogger.ui.struts2.editor.Pings__static_init): __Dispatch_Table.getCommonPingTargets()Ljava/util/List; == &getCommonPingTargets
    //#post(org.apache.roller.weblogger.ui.struts2.editor.Pings__static_init): __Dispatch_Table.getCustomPingTargets()Ljava/util/List; == &getCustomPingTargets
    //#post(org.apache.roller.weblogger.ui.struts2.editor.Pings__static_init): __Dispatch_Table.getPingStatus()Ljava/util/Map; == &getPingStatus
    //#post(org.apache.roller.weblogger.ui.struts2.editor.Pings__static_init): __Dispatch_Table.getPingTarget()Lorg/apache/roller/weblogger/pojos/PingTarget; == &getPingTarget
    //#post(org.apache.roller.weblogger.ui.struts2.editor.Pings__static_init): __Dispatch_Table.getPingTargetId()Ljava/lang/String; == &getPingTargetId
    //#post(org.apache.roller.weblogger.ui.struts2.editor.Pings__static_init): __Dispatch_Table.myPrepare()V == &myPrepare
    //#post(org.apache.roller.weblogger.ui.struts2.editor.Pings__static_init): __Dispatch_Table.pingNow()Ljava/lang/String; == &pingNow
    //#post(org.apache.roller.weblogger.ui.struts2.editor.Pings__static_init): __Dispatch_Table.requireWeblogPermissions()S == &requireWeblogPermissions
    //#post(org.apache.roller.weblogger.ui.struts2.editor.Pings__static_init): __Dispatch_Table.setCommonPingTargets(Ljava/util/List;)V == &setCommonPingTargets
    //#post(org.apache.roller.weblogger.ui.struts2.editor.Pings__static_init): __Dispatch_Table.setCustomPingTargets(Ljava/util/List;)V == &setCustomPingTargets
    //#post(org.apache.roller.weblogger.ui.struts2.editor.Pings__static_init): __Dispatch_Table.setPingStatus(Ljava/util/Map;)V == &setPingStatus
    //#post(org.apache.roller.weblogger.ui.struts2.editor.Pings__static_init): __Dispatch_Table.setPingTarget(Lorg/apache/roller/weblogger/pojos/PingTarget;)V == &setPingTarget
    //#post(org.apache.roller.weblogger.ui.struts2.editor.Pings__static_init): __Dispatch_Table.setPingTargetId(Ljava/lang/String;)V == &setPingTargetId
    //#post(org.apache.roller.weblogger.ui.struts2.editor.Pings__static_init): init'ed(log)
    //#Pings.java:49: end of method: org.apache.roller.weblogger.ui.struts2.editor.Pings.org.apache.roller.weblogger.ui.struts2.editor.Pings__static_init
    
    // ping target id to work on
    private String pingTargetId = null;
    
    // ping target object we are working on, if available
    private PingTarget pingTarget = null;
    
    // commong ping targets list
    private List commonPingTargets = Collections.EMPTY_LIST;
    
    // custom ping targets list for weblog
    private List customPingTargets = Collections.EMPTY_LIST;
    
    // track the enabled/disabled status for pings
    private Map pingStatus = Collections.EMPTY_MAP;
    
    
    public Pings() {
    //#Pings.java:67: method: void org.apache.roller.weblogger.ui.struts2.editor.Pings.org.apache.roller.weblogger.ui.struts2.editor.Pings()
    //#Pings.java:67: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.ui.struts2.util.UIAction()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: void org.apache.roller.weblogger.ui.struts2.editor.Pings()
    //#    unanalyzed callee: void org.apache.roller.weblogger.ui.struts2.util.UIAction()
    //#input(void org.apache.roller.weblogger.ui.struts2.editor.Pings()): java.util.Collections.EMPTY_LIST
    //#input(void org.apache.roller.weblogger.ui.struts2.editor.Pings()): java.util.Collections.EMPTY_MAP
    //#input(void org.apache.roller.weblogger.ui.struts2.editor.Pings()): this
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.Pings()): this.actionName
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.Pings()): this.commonPingTargets
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.Pings()): this.customPingTargets
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.Pings()): this.desiredMenu
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.Pings()): this.pageTitle
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.Pings()): this.pingStatus
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.Pings()): this.pingTarget
    //#output(void org.apache.roller.weblogger.ui.struts2.editor.Pings()): this.pingTargetId
    //#presumption(void org.apache.roller.weblogger.ui.struts2.editor.Pings()): init'ed(java.util.Collections.EMPTY_LIST)
    //#presumption(void org.apache.roller.weblogger.ui.struts2.editor.Pings()): init'ed(java.util.Collections.EMPTY_MAP)
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.Pings()): this.actionName == &"pings"
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.Pings()): this.commonPingTargets == java.util.Collections.EMPTY_LIST
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.Pings()): (soft) init'ed(this.commonPingTargets)
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.Pings()): this.customPingTargets == this.commonPingTargets
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.Pings()): this.desiredMenu == &"editor"
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.Pings()): this.pageTitle == &"pings.title"
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.Pings()): this.pingStatus == java.util.Collections.EMPTY_MAP
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.Pings()): (soft) init'ed(this.pingStatus)
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.Pings()): this.pingTarget == null
    //#post(void org.apache.roller.weblogger.ui.struts2.editor.Pings()): this.pingTargetId == null
        this.actionName = "pings";
        this.desiredMenu = "editor";
        this.pageTitle = "pings.title";
    }
    //#Pings.java:71: end of method: void org.apache.roller.weblogger.ui.struts2.editor.Pings.org.apache.roller.weblogger.ui.struts2.editor.Pings()
    
    
    // admin perms required
    public short requireWeblogPermissions() {
        return WeblogPermission.ADMIN;
    //#Pings.java:76: method: short org.apache.roller.weblogger.ui.struts2.editor.Pings.requireWeblogPermissions()
    //#input(short requireWeblogPermissions()): org.apache.roller.weblogger.pojos.WeblogPermission.ADMIN
    //#output(short requireWeblogPermissions()): return_value
    //#presumption(short requireWeblogPermissions()): init'ed(org.apache.roller.weblogger.pojos.WeblogPermission.ADMIN)
    //#post(short requireWeblogPermissions()): return_value == org.apache.roller.weblogger.pojos.WeblogPermission.ADMIN
    //#post(short requireWeblogPermissions()): (soft) init'ed(return_value)
    //#Pings.java:76: end of method: short org.apache.roller.weblogger.ui.struts2.editor.Pings.requireWeblogPermissions()
    }
    
    
    public void myPrepare() {
        
        PingTargetManager pingTargetMgr = WebloggerFactory.getWeblogger().getPingTargetManager();
    //#Pings.java:82: method: void org.apache.roller.weblogger.ui.struts2.editor.Pings.myPrepare()
    //#Pings.java:82: Warning: method not available
    //#    -- call on Weblogger org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: void myPrepare()
    //#    unanalyzed callee: Weblogger org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger()
    //#Pings.java:82: Warning: method not available
    //#    -- call on PingTargetManager org.apache.roller.weblogger.business.Weblogger:getPingTargetManager()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: void myPrepare()
    //#    unanalyzed callee: PingTargetManager org.apache.roller.weblogger.business.Weblogger:getPingTargetManager()
    //#input(void myPrepare()): "Error loading ping target lists for weblog - "._tainted
    //#input(void myPrepare()): "Error looking up ping target - "._tainted
    //#input(void myPrepare()): __Descendant_Table[org/apache/roller/weblogger/ui/struts2/editor/Pings]
    //#input(void myPrepare()): __Descendant_Table[others]
    //#input(void myPrepare()): __Dispatch_Table.getPingTargetId()Ljava/lang/String;
    //#input(void myPrepare()): __Dispatch_Table.setCommonPingTargets(Ljava/util/List;)V
    //#input(void myPrepare()): __Dispatch_Table.setCustomPingTargets(Ljava/util/List;)V
    //#input(void myPrepare()): __Dispatch_Table.setPingTarget(Lorg/apache/roller/weblogger/pojos/PingTarget;)V
    //#input(void myPrepare()): log
    //#input(void myPrepare()): this
    //#input(void myPrepare()): this.__Tag
    //#input(void myPrepare()): this.pingTargetId
    //#input(void myPrepare()): this.pingTargetId._tainted
    //#output(void myPrepare()): this.commonPingTargets
    //#output(void myPrepare()): this.customPingTargets
    //#output(void myPrepare()): this.pingTarget
    //#pre[6] (void myPrepare()): this.__Tag == org/apache/roller/weblogger/ui/struts2/editor/Pings
    //#pre[7] (void myPrepare()): init'ed(this.pingTargetId)
    //#pre[1] (void myPrepare()): (soft) log != null
    //#presumption(void myPrepare()): org.apache.roller.weblogger.business.Weblogger:getPingTargetManager(...)@82 != null
    //#presumption(void myPrepare()): org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger(...)@82 != null
    //#presumption(void myPrepare()): org.apache.roller.weblogger.ui.struts2.editor.Pings:getActionWeblog(...)@101 != null
    //#post(void myPrepare()): possibly_updated(this.commonPingTargets)
    //#post(void myPrepare()): possibly_updated(this.customPingTargets)
    //#post(void myPrepare()): possibly_updated(this.pingTarget)
    //#test_vector(void myPrepare()): this.pingTargetId: Addr_Set{null}, Inverse{null}
    //#test_vector(void myPrepare()): org.apache.roller.weblogger.config.PingConfig:getDisallowCustomTargets(...)@96: {1}, {0}
        
        // load selected ping target, if possible
        if(getPingTargetId() != null) try {
            setPingTarget(pingTargetMgr.getPingTarget(getPingTargetId()));
    //#Pings.java:86: Warning: method not available
    //#    -- call on PingTarget org.apache.roller.weblogger.business.pings.PingTargetManager:getPingTarget(String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: void myPrepare()
    //#    unanalyzed callee: PingTarget org.apache.roller.weblogger.business.pings.PingTargetManager:getPingTarget(String)
        } catch (WebloggerException ex) {
            log.error("Error looking up ping target - "+getPingTargetId(), ex);
    //#Pings.java:88: 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.Pings
    //#    method: void myPrepare()
    //#    unanalyzed callee: void org.apache.commons.logging.Log:error(Object, Throwable)
        }
        
        try {
            // load common ping targets list
            setCommonPingTargets(pingTargetMgr.getCommonPingTargets());
    //#Pings.java:93: Warning: method not available
    //#    -- call on List org.apache.roller.weblogger.business.pings.PingTargetManager:getCommonPingTargets()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: void myPrepare()
    //#    unanalyzed callee: List org.apache.roller.weblogger.business.pings.PingTargetManager:getCommonPingTargets()
            
            // load custom ping targets list for weblog, if applicable
            if(!PingConfig.getDisallowCustomTargets()) {
    //#Pings.java:96: Warning: method not available
    //#    -- call on bool org.apache.roller.weblogger.config.PingConfig:getDisallowCustomTargets()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: void myPrepare()
    //#    unanalyzed callee: bool org.apache.roller.weblogger.config.PingConfig:getDisallowCustomTargets()
                setCustomPingTargets(pingTargetMgr.getCustomPingTargets(getActionWeblog()));
    //#Pings.java:97: Warning: method not available
    //#    -- call on Weblog org.apache.roller.weblogger.ui.struts2.editor.Pings:getActionWeblog()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: void myPrepare()
    //#    unanalyzed callee: Weblog org.apache.roller.weblogger.ui.struts2.editor.Pings:getActionWeblog()
    //#Pings.java:97: Warning: method not available
    //#    -- call on List org.apache.roller.weblogger.business.pings.PingTargetManager:getCustomPingTargets(Weblog)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: void myPrepare()
    //#    unanalyzed callee: List org.apache.roller.weblogger.business.pings.PingTargetManager:getCustomPingTargets(Weblog)
            }
            
        } catch (WebloggerException ex) {
            log.error("Error loading ping target lists for weblog - "+getActionWeblog().getHandle(), ex);
    //#Pings.java:101: Warning: method not available
    //#    -- call on Weblog org.apache.roller.weblogger.ui.struts2.editor.Pings:getActionWeblog()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: void myPrepare()
    //#    unanalyzed callee: Weblog org.apache.roller.weblogger.ui.struts2.editor.Pings:getActionWeblog()
    //#Pings.java:101: Warning: method not available
    //#    -- call on String org.apache.roller.weblogger.pojos.Weblog:getHandle()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: void myPrepare()
    //#    unanalyzed callee: String org.apache.roller.weblogger.pojos.Weblog:getHandle()
    //#Pings.java:101: 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.Pings
    //#    method: void myPrepare()
    //#    unanalyzed callee: void org.apache.commons.logging.Log:error(Object, Throwable)
            // TODO: i18n
            addError("Error loading ping targets");
    //#Pings.java:103: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.ui.struts2.editor.Pings:addError(String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: void myPrepare()
    //#    unanalyzed callee: void org.apache.roller.weblogger.ui.struts2.editor.Pings:addError(String)
        }
    }
    //#Pings.java:105: end of method: void org.apache.roller.weblogger.ui.struts2.editor.Pings.myPrepare()
    
    
    /*
     * Display the common ping targets with page
     */
    public String execute() {
        
        // load map of enabled auto pings
        buildIsEnabledMap();
    //#Pings.java:114: method: String org.apache.roller.weblogger.ui.struts2.editor.Pings.execute()
    //#input(String execute()): "Error looking up auto pings for weblog - "._tainted
    //#input(String execute()): __Descendant_Table[org/apache/roller/weblogger/ui/struts2/editor/Pings]
    //#input(String execute()): __Descendant_Table[others]
    //#input(String execute()): __Dispatch_Table.getCommonPingTargets()Ljava/util/List;
    //#input(String execute()): __Dispatch_Table.getCustomPingTargets()Ljava/util/List;
    //#input(String execute()): __Dispatch_Table.setPingStatus(Ljava/util/Map;)V
    //#input(String execute()): java.lang.Boolean.FALSE
    //#input(String execute()): java.lang.Boolean.TRUE
    //#input(String execute()): java.util.Collections.EMPTY_LIST
    //#input(String execute()): log
    //#input(String execute()): this
    //#input(String execute()): this.__Tag
    //#input(String execute()): this.commonPingTargets
    //#input(String execute()): this.customPingTargets
    //#output(String execute()): new HashMap(buildIsEnabledMap#1) num objects
    //#output(String execute()): return_value
    //#output(String execute()): this.pingStatus
    //#new obj(String execute()): new HashMap(buildIsEnabledMap#1)
    //#pre[4] (String execute()): this.__Tag == org/apache/roller/weblogger/ui/struts2/editor/Pings
    //#pre[5] (String execute()): this.commonPingTargets != null
    //#pre[6] (String execute()): this.customPingTargets != null
    //#pre[1] (String execute()): (soft) log != null
    //#post(String execute()): return_value == &"list"
    //#post(String execute()): this.pingStatus == One-of{old this.pingStatus, &new HashMap(buildIsEnabledMap#1)}
    //#post(String execute()): new HashMap(buildIsEnabledMap#1) num objects == 1
    //#unanalyzed(String execute()): Effects-of-calling:org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger
    //#unanalyzed(String execute()): Effects-of-calling:org.apache.roller.weblogger.business.Weblogger:getAutopingManager
    //#unanalyzed(String execute()): Effects-of-calling:org.apache.roller.weblogger.ui.struts2.editor.Pings:getActionWeblog
    //#unanalyzed(String execute()): Effects-of-calling:java.lang.Throwable:__curr_excep_obj
    //#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:error
    //#unanalyzed(String execute()): Effects-of-calling:java.util.HashMap
    //#unanalyzed(String execute()): Effects-of-calling:org.apache.roller.weblogger.business.pings.AutoPingManager:getAutoPingsByWebsite
    //#unanalyzed(String execute()): Effects-of-calling:org.apache.roller.weblogger.pojos.Weblog:getHandle
    //#unanalyzed(String execute()): Effects-of-calling:java.util.List: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.AutoPing:getPingTarget
    //#unanalyzed(String execute()): Effects-of-calling:org.apache.roller.weblogger.pojos.PingTarget:getId
    //#unanalyzed(String execute()): Effects-of-calling:java.util.Map:put
    //#unanalyzed(String execute()): Effects-of-calling:java.util.Map:get
    //#unanalyzed(String execute()): Effects-of-calling:java.util.Map:size
        
        return LIST;
    //#Pings.java:116: end of method: String org.apache.roller.weblogger.ui.struts2.editor.Pings.execute()
    }
    
    
    /**
     * Enable a ping target.
     */
    public String enable() {
        
        if(getPingTarget() != null) try {
    //#Pings.java:125: method: String org.apache.roller.weblogger.ui.struts2.editor.Pings.enable()
    //#input(String enable()): "Error looking up auto pings for weblog - "._tainted
    //#input(String enable()): "Error saving auto ping for target - "._tainted
    //#input(String enable()): __Descendant_Table[org/apache/roller/weblogger/ui/struts2/editor/Pings]
    //#input(String enable()): __Descendant_Table[others]
    //#input(String enable()): __Dispatch_Table.execute()Ljava/lang/String;
    //#input(String enable()): __Dispatch_Table.getCommonPingTargets()Ljava/util/List;
    //#input(String enable()): __Dispatch_Table.getCustomPingTargets()Ljava/util/List;
    //#input(String enable()): __Dispatch_Table.getPingTarget()Lorg/apache/roller/weblogger/pojos/PingTarget;
    //#input(String enable()): __Dispatch_Table.getPingTargetId()Ljava/lang/String;
    //#input(String enable()): __Dispatch_Table.setPingStatus(Ljava/util/Map;)V
    //#input(String enable()): java.lang.Boolean.FALSE
    //#input(String enable()): java.lang.Boolean.TRUE
    //#input(String enable()): java.util.Collections.EMPTY_LIST
    //#input(String enable()): log
    //#input(String enable()): this
    //#input(String enable()): this.__Tag
    //#input(String enable()): this.commonPingTargets
    //#input(String enable()): this.customPingTargets
    //#input(String enable()): this.pingTarget
    //#input(String enable()): this.pingTargetId
    //#input(String enable()): this.pingTargetId._tainted
    //#output(String enable()): new HashMap(buildIsEnabledMap#1) num objects
    //#output(String enable()): return_value
    //#output(String enable()): this.pingStatus
    //#new obj(String enable()): new HashMap(buildIsEnabledMap#1)
    //#pre[4] (String enable()): this.__Tag == org/apache/roller/weblogger/ui/struts2/editor/Pings
    //#pre[5] (String enable()): this.commonPingTargets != null
    //#pre[6] (String enable()): this.customPingTargets != null
    //#pre[7] (String enable()): init'ed(this.pingTarget)
    //#pre[1] (String enable()): (soft) log != null
    //#pre[8] (String enable()): (soft) init'ed(this.pingTargetId)
    //#presumption(String enable()): org.apache.roller.weblogger.business.Weblogger:getAutopingManager(...)@126 != null
    //#presumption(String enable()): org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger(...)@126 != null
    //#presumption(String enable()): org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger(...)@129 != null
    //#post(String enable()): return_value == &"list"
    //#post(String enable()): this.pingStatus == One-of{old this.pingStatus, &new HashMap(buildIsEnabledMap#1)}
    //#post(String enable()): new HashMap(buildIsEnabledMap#1) num objects == 1
    //#unanalyzed(String enable()): Effects-of-calling:buildIsEnabledMap
    //#unanalyzed(String enable()): Effects-of-calling:org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger
    //#unanalyzed(String enable()): Effects-of-calling:org.apache.roller.weblogger.business.Weblogger:getAutopingManager
    //#unanalyzed(String enable()): Effects-of-calling:org.apache.roller.weblogger.ui.struts2.editor.Pings:getActionWeblog
    //#unanalyzed(String enable()): Effects-of-calling:java.lang.Throwable:__curr_excep_obj
    //#unanalyzed(String enable()): Effects-of-calling:java.lang.StringBuilder
    //#unanalyzed(String enable()): Effects-of-calling:java.lang.StringBuilder:append
    //#unanalyzed(String enable()): Effects-of-calling:java.lang.StringBuilder:toString
    //#unanalyzed(String enable()): Effects-of-calling:org.apache.commons.logging.Log:error
    //#unanalyzed(String enable()): Effects-of-calling:java.util.HashMap
    //#unanalyzed(String enable()): Effects-of-calling:org.apache.roller.weblogger.business.pings.AutoPingManager:getAutoPingsByWebsite
    //#unanalyzed(String enable()): Effects-of-calling:org.apache.roller.weblogger.pojos.Weblog:getHandle
    //#unanalyzed(String enable()): Effects-of-calling:java.util.List:iterator
    //#unanalyzed(String enable()): Effects-of-calling:java.util.Iterator:hasNext
    //#unanalyzed(String enable()): Effects-of-calling:java.util.Iterator:next
    //#unanalyzed(String enable()): Effects-of-calling:org.apache.roller.weblogger.pojos.AutoPing:getPingTarget
    //#unanalyzed(String enable()): Effects-of-calling:org.apache.roller.weblogger.pojos.PingTarget:getId
    //#unanalyzed(String enable()): Effects-of-calling:java.util.Map:put
    //#unanalyzed(String enable()): Effects-of-calling:java.util.Map:get
    //#unanalyzed(String enable()): Effects-of-calling:java.util.Map:size
    //#test_vector(String enable()): this.pingTarget: Addr_Set{null}, Inverse{null}
            AutoPingManager autoPingMgr = WebloggerFactory.getWeblogger().getAutopingManager();
    //#Pings.java:126: Warning: method not available
    //#    -- call on Weblogger org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: String enable()
    //#    unanalyzed callee: Weblogger org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger()
    //#Pings.java:126: Warning: method not available
    //#    -- call on AutoPingManager org.apache.roller.weblogger.business.Weblogger:getAutopingManager()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: String enable()
    //#    unanalyzed callee: AutoPingManager org.apache.roller.weblogger.business.Weblogger:getAutopingManager()
            AutoPing autoPing = new AutoPing(null, getPingTarget(), getActionWeblog());
    //#Pings.java:127: Warning: method not available
    //#    -- call on Weblog org.apache.roller.weblogger.ui.struts2.editor.Pings:getActionWeblog()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: String enable()
    //#    unanalyzed callee: Weblog org.apache.roller.weblogger.ui.struts2.editor.Pings:getActionWeblog()
    //#Pings.java:127: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.pojos.AutoPing(String, PingTarget, Weblog)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: String enable()
    //#    unanalyzed callee: void org.apache.roller.weblogger.pojos.AutoPing(String, PingTarget, Weblog)
            autoPingMgr.saveAutoPing(autoPing);
    //#Pings.java:128: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.business.pings.AutoPingManager:saveAutoPing(AutoPing)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: String enable()
    //#    unanalyzed callee: void org.apache.roller.weblogger.business.pings.AutoPingManager:saveAutoPing(AutoPing)
            WebloggerFactory.getWeblogger().flush();
    //#Pings.java:129: Warning: method not available
    //#    -- call on Weblogger org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: String enable()
    //#    unanalyzed callee: Weblogger org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger()
    //#Pings.java:129: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.business.Weblogger:flush()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: String enable()
    //#    unanalyzed callee: void org.apache.roller.weblogger.business.Weblogger:flush()
        } catch(Exception ex) {
            log.error("Error saving auto ping for target - "+getPingTargetId(), ex);
    //#Pings.java:131: 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.Pings
    //#    method: String enable()
    //#    unanalyzed callee: void org.apache.commons.logging.Log:error(Object, Throwable)
            // TODO: i18n
            addError("Error enabling auto ping");
    //#Pings.java:133: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.ui.struts2.editor.Pings:addError(String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: String enable()
    //#    unanalyzed callee: void org.apache.roller.weblogger.ui.struts2.editor.Pings:addError(String)
        }
        
        return execute();
    //#Pings.java:136: end of method: String org.apache.roller.weblogger.ui.struts2.editor.Pings.enable()
    }
    
    
    /**
     * Disable a ping target.
     */
    public String disable() {
        
        if(getPingTarget() != null) try {
    //#Pings.java:145: method: String org.apache.roller.weblogger.ui.struts2.editor.Pings.disable()
    //#input(String disable()): "Error looking up auto pings for weblog - "._tainted
    //#input(String disable()): "Error removing auto ping for target - "._tainted
    //#input(String disable()): __Descendant_Table[org/apache/roller/weblogger/ui/struts2/editor/Pings]
    //#input(String disable()): __Descendant_Table[others]
    //#input(String disable()): __Dispatch_Table.execute()Ljava/lang/String;
    //#input(String disable()): __Dispatch_Table.getCommonPingTargets()Ljava/util/List;
    //#input(String disable()): __Dispatch_Table.getCustomPingTargets()Ljava/util/List;
    //#input(String disable()): __Dispatch_Table.getPingTarget()Lorg/apache/roller/weblogger/pojos/PingTarget;
    //#input(String disable()): __Dispatch_Table.getPingTargetId()Ljava/lang/String;
    //#input(String disable()): __Dispatch_Table.setPingStatus(Ljava/util/Map;)V
    //#input(String disable()): java.lang.Boolean.FALSE
    //#input(String disable()): java.lang.Boolean.TRUE
    //#input(String disable()): java.util.Collections.EMPTY_LIST
    //#input(String disable()): log
    //#input(String disable()): this
    //#input(String disable()): this.__Tag
    //#input(String disable()): this.commonPingTargets
    //#input(String disable()): this.customPingTargets
    //#input(String disable()): this.pingTarget
    //#input(String disable()): this.pingTargetId
    //#input(String disable()): this.pingTargetId._tainted
    //#output(String disable()): new HashMap(buildIsEnabledMap#1) num objects
    //#output(String disable()): return_value
    //#output(String disable()): this.pingStatus
    //#new obj(String disable()): new HashMap(buildIsEnabledMap#1)
    //#pre[4] (String disable()): this.__Tag == org/apache/roller/weblogger/ui/struts2/editor/Pings
    //#pre[5] (String disable()): this.commonPingTargets != null
    //#pre[6] (String disable()): this.customPingTargets != null
    //#pre[7] (String disable()): init'ed(this.pingTarget)
    //#pre[1] (String disable()): (soft) log != null
    //#pre[8] (String disable()): (soft) init'ed(this.pingTargetId)
    //#presumption(String disable()): org.apache.roller.weblogger.business.Weblogger:getAutopingManager(...)@146 != null
    //#presumption(String disable()): org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger(...)@146 != null
    //#presumption(String disable()): org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger(...)@148 != null
    //#post(String disable()): return_value == &"list"
    //#post(String disable()): this.pingStatus == One-of{old this.pingStatus, &new HashMap(buildIsEnabledMap#1)}
    //#post(String disable()): new HashMap(buildIsEnabledMap#1) num objects == 1
    //#unanalyzed(String disable()): Effects-of-calling:buildIsEnabledMap
    //#unanalyzed(String disable()): Effects-of-calling:org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger
    //#unanalyzed(String disable()): Effects-of-calling:org.apache.roller.weblogger.business.Weblogger:getAutopingManager
    //#unanalyzed(String disable()): Effects-of-calling:org.apache.roller.weblogger.ui.struts2.editor.Pings:getActionWeblog
    //#unanalyzed(String disable()): Effects-of-calling:java.lang.Throwable:__curr_excep_obj
    //#unanalyzed(String disable()): Effects-of-calling:java.lang.StringBuilder
    //#unanalyzed(String disable()): Effects-of-calling:java.lang.StringBuilder:append
    //#unanalyzed(String disable()): Effects-of-calling:java.lang.StringBuilder:toString
    //#unanalyzed(String disable()): Effects-of-calling:org.apache.commons.logging.Log:error
    //#unanalyzed(String disable()): Effects-of-calling:java.util.HashMap
    //#unanalyzed(String disable()): Effects-of-calling:org.apache.roller.weblogger.business.pings.AutoPingManager:getAutoPingsByWebsite
    //#unanalyzed(String disable()): Effects-of-calling:org.apache.roller.weblogger.pojos.Weblog:getHandle
    //#unanalyzed(String disable()): Effects-of-calling:java.util.List:iterator
    //#unanalyzed(String disable()): Effects-of-calling:java.util.Iterator:hasNext
    //#unanalyzed(String disable()): Effects-of-calling:java.util.Iterator:next
    //#unanalyzed(String disable()): Effects-of-calling:org.apache.roller.weblogger.pojos.AutoPing:getPingTarget
    //#unanalyzed(String disable()): Effects-of-calling:org.apache.roller.weblogger.pojos.PingTarget:getId
    //#unanalyzed(String disable()): Effects-of-calling:java.util.Map:put
    //#unanalyzed(String disable()): Effects-of-calling:java.util.Map:get
    //#unanalyzed(String disable()): Effects-of-calling:java.util.Map:size
    //#test_vector(String disable()): this.pingTarget: Addr_Set{null}, Inverse{null}
            AutoPingManager autoPingMgr = WebloggerFactory.getWeblogger().getAutopingManager();
    //#Pings.java:146: Warning: method not available
    //#    -- call on Weblogger org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: String disable()
    //#    unanalyzed callee: Weblogger org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger()
    //#Pings.java:146: Warning: method not available
    //#    -- call on AutoPingManager org.apache.roller.weblogger.business.Weblogger:getAutopingManager()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: String disable()
    //#    unanalyzed callee: AutoPingManager org.apache.roller.weblogger.business.Weblogger:getAutopingManager()
            autoPingMgr.removeAutoPing(getPingTarget(), getActionWeblog());
    //#Pings.java:147: Warning: method not available
    //#    -- call on Weblog org.apache.roller.weblogger.ui.struts2.editor.Pings:getActionWeblog()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: String disable()
    //#    unanalyzed callee: Weblog org.apache.roller.weblogger.ui.struts2.editor.Pings:getActionWeblog()
    //#Pings.java:147: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.business.pings.AutoPingManager:removeAutoPing(PingTarget, Weblog)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: String disable()
    //#    unanalyzed callee: void org.apache.roller.weblogger.business.pings.AutoPingManager:removeAutoPing(PingTarget, Weblog)
            WebloggerFactory.getWeblogger().flush();
    //#Pings.java:148: Warning: method not available
    //#    -- call on Weblogger org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: String disable()
    //#    unanalyzed callee: Weblogger org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger()
    //#Pings.java:148: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.business.Weblogger:flush()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: String disable()
    //#    unanalyzed callee: void org.apache.roller.weblogger.business.Weblogger:flush()
        } catch (Exception ex) {
            log.error("Error removing auto ping for target - "+getPingTargetId(), ex);
    //#Pings.java:150: 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.Pings
    //#    method: String disable()
    //#    unanalyzed callee: void org.apache.commons.logging.Log:error(Object, Throwable)
            // TODO: i18n
            addError("Error disabling auto ping");
    //#Pings.java:152: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.ui.struts2.editor.Pings:addError(String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: String disable()
    //#    unanalyzed callee: void org.apache.roller.weblogger.ui.struts2.editor.Pings:addError(String)
        }
        
        return execute();
    //#Pings.java:155: end of method: String org.apache.roller.weblogger.ui.struts2.editor.Pings.disable()
    }
    
    
    /**
     * Ping the selected target now.
     */
    public String pingNow() {
        
        if(getPingTarget() != null) try {
    //#Pings.java:164: method: String org.apache.roller.weblogger.ui.struts2.editor.Pings.pingNow()
    //#input(String pingNow()): "Error looking up auto pings for weblog - "._tainted
    //#input(String pingNow()): "Ping Result: "._tainted
    //#input(String pingNow()): __Descendant_Table[org/apache/roller/weblogger/ui/struts2/editor/Pings]
    //#input(String pingNow()): __Descendant_Table[others]
    //#input(String pingNow()): __Dispatch_Table.execute()Ljava/lang/String;
    //#input(String pingNow()): __Dispatch_Table.getCommonPingTargets()Ljava/util/List;
    //#input(String pingNow()): __Dispatch_Table.getCustomPingTargets()Ljava/util/List;
    //#input(String pingNow()): __Dispatch_Table.getPingTarget()Lorg/apache/roller/weblogger/pojos/PingTarget;
    //#input(String pingNow()): __Dispatch_Table.setPingStatus(Ljava/util/Map;)V
    //#input(String pingNow()): java.lang.Boolean.FALSE
    //#input(String pingNow()): java.lang.Boolean.TRUE
    //#input(String pingNow()): java.util.Collections.EMPTY_LIST
    //#input(String pingNow()): log
    //#input(String pingNow()): this
    //#input(String pingNow()): this.__Tag
    //#input(String pingNow()): this.commonPingTargets
    //#input(String pingNow()): this.customPingTargets
    //#input(String pingNow()): this.pingTarget
    //#output(String pingNow()): new HashMap(buildIsEnabledMap#1) num objects
    //#output(String pingNow()): return_value
    //#output(String pingNow()): this.pingStatus
    //#new obj(String pingNow()): new HashMap(buildIsEnabledMap#1)
    //#pre[4] (String pingNow()): this.__Tag == org/apache/roller/weblogger/ui/struts2/editor/Pings
    //#pre[5] (String pingNow()): this.commonPingTargets != null
    //#pre[6] (String pingNow()): this.customPingTargets != null
    //#pre[7] (String pingNow()): init'ed(this.pingTarget)
    //#pre[1] (String pingNow()): (soft) log != null
    //#presumption(String pingNow()): org.apache.roller.weblogger.business.pings.WeblogUpdatePinger:sendPing(...)@169 != null
    //#presumption(String pingNow()): org.apache.roller.weblogger.business.pings.WeblogUpdatePinger_PingResult:getMessage(...)@172 != null
    //#post(String pingNow()): return_value == &"list"
    //#post(String pingNow()): this.pingStatus == One-of{old this.pingStatus, &new HashMap(buildIsEnabledMap#1)}
    //#post(String pingNow()): new HashMap(buildIsEnabledMap#1) num objects == 1
    //#unanalyzed(String pingNow()): Effects-of-calling:java.net.UnknownHostException:instanceof
    //#unanalyzed(String pingNow()): Effects-of-calling:org.apache.roller.weblogger.ui.struts2.editor.Pings:addError
    //#unanalyzed(String pingNow()): Effects-of-calling:java.net.SocketException:instanceof
    //#unanalyzed(String pingNow()): Effects-of-calling:buildIsEnabledMap
    //#unanalyzed(String pingNow()): Effects-of-calling:org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger
    //#unanalyzed(String pingNow()): Effects-of-calling:org.apache.roller.weblogger.business.Weblogger:getAutopingManager
    //#unanalyzed(String pingNow()): Effects-of-calling:org.apache.roller.weblogger.ui.struts2.editor.Pings:getActionWeblog
    //#unanalyzed(String pingNow()): Effects-of-calling:java.lang.Throwable:__curr_excep_obj
    //#unanalyzed(String pingNow()): Effects-of-calling:java.lang.StringBuilder
    //#unanalyzed(String pingNow()): Effects-of-calling:java.lang.StringBuilder:append
    //#unanalyzed(String pingNow()): Effects-of-calling:java.lang.StringBuilder:toString
    //#unanalyzed(String pingNow()): Effects-of-calling:org.apache.commons.logging.Log:error
    //#unanalyzed(String pingNow()): Effects-of-calling:java.util.HashMap
    //#unanalyzed(String pingNow()): Effects-of-calling:org.apache.roller.weblogger.business.pings.AutoPingManager:getAutoPingsByWebsite
    //#unanalyzed(String pingNow()): Effects-of-calling:org.apache.roller.weblogger.pojos.Weblog:getHandle
    //#unanalyzed(String pingNow()): Effects-of-calling:java.util.List:iterator
    //#unanalyzed(String pingNow()): Effects-of-calling:java.util.Iterator:hasNext
    //#unanalyzed(String pingNow()): Effects-of-calling:java.util.Iterator:next
    //#unanalyzed(String pingNow()): Effects-of-calling:org.apache.roller.weblogger.pojos.AutoPing:getPingTarget
    //#unanalyzed(String pingNow()): Effects-of-calling:org.apache.roller.weblogger.pojos.PingTarget:getId
    //#unanalyzed(String pingNow()): Effects-of-calling:java.util.Map:put
    //#unanalyzed(String pingNow()): Effects-of-calling:java.util.Map:get
    //#unanalyzed(String pingNow()): Effects-of-calling:java.util.Map:size
    //#test_vector(String pingNow()): this.pingTarget: Addr_Set{null}, Inverse{null}
    //#test_vector(String pingNow()): java.lang.String:length(...)@172: {0}, {1..4_294_967_295}
    //#test_vector(String pingNow()): org.apache.roller.weblogger.business.pings.WeblogUpdatePinger_PingResult:getMessage(...)@172: Addr_Set{null}, Inverse{null}
    //#test_vector(String pingNow()): org.apache.roller.weblogger.business.pings.WeblogUpdatePinger_PingResult:isError(...)@170: {0}, {1}
    //#test_vector(String pingNow()): org.apache.roller.weblogger.config.PingConfig:getSuspendPingProcessing(...)@165: {0}, {1}
            if (PingConfig.getSuspendPingProcessing()) {
    //#Pings.java:165: Warning: method not available
    //#    -- call on bool org.apache.roller.weblogger.config.PingConfig:getSuspendPingProcessing()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: String pingNow()
    //#    unanalyzed callee: bool org.apache.roller.weblogger.config.PingConfig:getSuspendPingProcessing()
                log.debug("Ping processing is disabled.");
    //#Pings.java:166: Warning: method not available
    //#    -- call on void org.apache.commons.logging.Log:debug(Object)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: String pingNow()
    //#    unanalyzed callee: void org.apache.commons.logging.Log:debug(Object)
                addError("ping.pingProcessingIsSuspended");
    //#Pings.java:167: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.ui.struts2.editor.Pings:addError(String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: String pingNow()
    //#    unanalyzed callee: void org.apache.roller.weblogger.ui.struts2.editor.Pings:addError(String)
            } else {
                WeblogUpdatePinger.PingResult pingResult = WeblogUpdatePinger.sendPing(getPingTarget(), getActionWeblog());
    //#Pings.java:169: Warning: method not available
    //#    -- call on Weblog org.apache.roller.weblogger.ui.struts2.editor.Pings:getActionWeblog()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: String pingNow()
    //#    unanalyzed callee: Weblog org.apache.roller.weblogger.ui.struts2.editor.Pings:getActionWeblog()
    //#Pings.java:169: Warning: method not available
    //#    -- call on WeblogUpdatePinger$PingResult org.apache.roller.weblogger.business.pings.WeblogUpdatePinger:sendPing(PingTarget, Weblog)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: String pingNow()
    //#    unanalyzed callee: WeblogUpdatePinger$PingResult org.apache.roller.weblogger.business.pings.WeblogUpdatePinger:sendPing(PingTarget, Weblog)
                if (pingResult.isError()) {
    //#Pings.java:170: Warning: method not available
    //#    -- call on bool org.apache.roller.weblogger.business.pings.WeblogUpdatePinger$PingResult:isError()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: String pingNow()
    //#    unanalyzed callee: bool org.apache.roller.weblogger.business.pings.WeblogUpdatePinger$PingResult:isError()
                    log.debug("Ping Result: " + pingResult);
    //#Pings.java:171: Warning: method not available
    //#    -- call on void org.apache.commons.logging.Log:debug(Object)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: String pingNow()
    //#    unanalyzed callee: void org.apache.commons.logging.Log:debug(Object)
                    if (pingResult.getMessage() != null && pingResult.getMessage().trim().length() > 0) {
    //#Pings.java:172: Warning: method not available
    //#    -- call on String org.apache.roller.weblogger.business.pings.WeblogUpdatePinger$PingResult:getMessage()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: String pingNow()
    //#    unanalyzed callee: String org.apache.roller.weblogger.business.pings.WeblogUpdatePinger$PingResult:getMessage()
                        addError("ping.transmittedButError");
    //#Pings.java:173: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.ui.struts2.editor.Pings:addError(String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: String pingNow()
    //#    unanalyzed callee: void org.apache.roller.weblogger.ui.struts2.editor.Pings:addError(String)
                        addError(pingResult.getMessage());
    //#Pings.java:174: Warning: method not available
    //#    -- call on String org.apache.roller.weblogger.business.pings.WeblogUpdatePinger$PingResult:getMessage()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: String pingNow()
    //#    unanalyzed callee: String org.apache.roller.weblogger.business.pings.WeblogUpdatePinger$PingResult:getMessage()
    //#Pings.java:174: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.ui.struts2.editor.Pings:addError(String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: String pingNow()
    //#    unanalyzed callee: void org.apache.roller.weblogger.ui.struts2.editor.Pings:addError(String)
                    } else {
                        addError("ping.transmissionFailed");
    //#Pings.java:176: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.ui.struts2.editor.Pings:addError(String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: String pingNow()
    //#    unanalyzed callee: void org.apache.roller.weblogger.ui.struts2.editor.Pings:addError(String)
                    }
                } else {
                    addMessage("ping.successful");
    //#Pings.java:179: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.ui.struts2.editor.Pings:addMessage(String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: String pingNow()
    //#    unanalyzed callee: void org.apache.roller.weblogger.ui.struts2.editor.Pings:addMessage(String)
                }
            }
        } catch (IOException ex) {
            log.debug(ex);
    //#Pings.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.Pings
    //#    method: String pingNow()
    //#    unanalyzed callee: void org.apache.commons.logging.Log:debug(Object)
            addError("ping.transmissionFailed");
    //#Pings.java:184: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.ui.struts2.editor.Pings:addError(String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: String pingNow()
    //#    unanalyzed callee: void org.apache.roller.weblogger.ui.struts2.editor.Pings:addError(String)
            addSpecificMessages(ex);
        } catch (XmlRpcException ex) {
            log.debug(ex);
    //#Pings.java:187: Warning: method not available
    //#    -- call on void org.apache.commons.logging.Log:debug(Object)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: String pingNow()
    //#    unanalyzed callee: void org.apache.commons.logging.Log:debug(Object)
            addError("ping.transmissionFailed");
    //#Pings.java:188: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.ui.struts2.editor.Pings:addError(String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: String pingNow()
    //#    unanalyzed callee: void org.apache.roller.weblogger.ui.struts2.editor.Pings:addError(String)
            addSpecificMessages(ex);
        }
        
        return execute();
    //#Pings.java:192: end of method: String org.apache.roller.weblogger.ui.struts2.editor.Pings.pingNow()
    }
    
    
    // some extra error messaging
    private void addSpecificMessages(Exception ex) {
        if (ex instanceof UnknownHostException) {
    //#Pings.java:198: method: void org.apache.roller.weblogger.ui.struts2.editor.Pings.addSpecificMessages(Exception)
    //#input(void addSpecificMessages(Exception)): ex
    //#input(void addSpecificMessages(Exception)): this
            addError("ping.unknownHost");
    //#Pings.java:199: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.ui.struts2.editor.Pings:addError(String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: void addSpecificMessages(Exception)
    //#    unanalyzed callee: void org.apache.roller.weblogger.ui.struts2.editor.Pings:addError(String)
        } else if (ex instanceof SocketException) {
            addError("ping.networkConnectionFailed");
    //#Pings.java:201: Warning: method not available
    //#    -- call on void org.apache.roller.weblogger.ui.struts2.editor.Pings:addError(String)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: void addSpecificMessages(Exception)
    //#    unanalyzed callee: void org.apache.roller.weblogger.ui.struts2.editor.Pings:addError(String)
        }
    }
    //#Pings.java:203: end of method: void org.apache.roller.weblogger.ui.struts2.editor.Pings.addSpecificMessages(Exception)

    
    /**
     * Private helper to build a map indexed by ping target id with values Boolean.TRUE and Boolean.FALSE
     * based on whether the ping target is enabled (has a corresponding auto ping configuration).
     */
    private void buildIsEnabledMap() {
        
        AutoPingManager autoPingMgr = WebloggerFactory.getWeblogger().getAutopingManager();
    //#Pings.java:212: method: void org.apache.roller.weblogger.ui.struts2.editor.Pings.buildIsEnabledMap()
    //#Pings.java:212: Warning: method not available
    //#    -- call on Weblogger org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: void buildIsEnabledMap()
    //#    unanalyzed callee: Weblogger org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger()
    //#Pings.java:212: Warning: method not available
    //#    -- call on AutoPingManager org.apache.roller.weblogger.business.Weblogger:getAutopingManager()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: void buildIsEnabledMap()
    //#    unanalyzed callee: AutoPingManager org.apache.roller.weblogger.business.Weblogger:getAutopingManager()
    //#input(void buildIsEnabledMap()): "Error looking up auto pings for weblog - "._tainted
    //#input(void buildIsEnabledMap()): __Descendant_Table[org/apache/roller/weblogger/ui/struts2/editor/Pings]
    //#input(void buildIsEnabledMap()): __Descendant_Table[others]
    //#input(void buildIsEnabledMap()): __Dispatch_Table.getCommonPingTargets()Ljava/util/List;
    //#input(void buildIsEnabledMap()): __Dispatch_Table.getCustomPingTargets()Ljava/util/List;
    //#input(void buildIsEnabledMap()): __Dispatch_Table.setPingStatus(Ljava/util/Map;)V
    //#input(void buildIsEnabledMap()): java.lang.Boolean.FALSE
    //#input(void buildIsEnabledMap()): java.lang.Boolean.TRUE
    //#input(void buildIsEnabledMap()): java.util.Collections.EMPTY_LIST
    //#input(void buildIsEnabledMap()): log
    //#input(void buildIsEnabledMap()): this
    //#input(void buildIsEnabledMap()): this.__Tag
    //#input(void buildIsEnabledMap()): this.commonPingTargets
    //#input(void buildIsEnabledMap()): this.customPingTargets
    //#output(void buildIsEnabledMap()): new HashMap(buildIsEnabledMap#1) num objects
    //#output(void buildIsEnabledMap()): this.pingStatus
    //#new obj(void buildIsEnabledMap()): new HashMap(buildIsEnabledMap#1)
    //#pre[4] (void buildIsEnabledMap()): this.__Tag == org/apache/roller/weblogger/ui/struts2/editor/Pings
    //#pre[5] (void buildIsEnabledMap()): this.commonPingTargets != null
    //#pre[6] (void buildIsEnabledMap()): this.customPingTargets != null
    //#pre[1] (void buildIsEnabledMap()): (soft) log != null
    //#presumption(void buildIsEnabledMap()): init'ed(java.lang.Boolean.FALSE)
    //#presumption(void buildIsEnabledMap()): init'ed(java.lang.Boolean.TRUE)
    //#presumption(void buildIsEnabledMap()): java.util.Collections.EMPTY_LIST != null
    //#presumption(void buildIsEnabledMap()): java.util.Iterator:next(...)@226 != null
    //#presumption(void buildIsEnabledMap()): java.util.Iterator:next(...)@233 != null
    //#presumption(void buildIsEnabledMap()): java.util.Iterator:next(...)@241 != null
    //#presumption(void buildIsEnabledMap()): org.apache.roller.weblogger.business.Weblogger:getAutopingManager(...)@212 != null
    //#presumption(void buildIsEnabledMap()): org.apache.roller.weblogger.business.WebloggerFactory:getWeblogger(...)@212 != null
    //#presumption(void buildIsEnabledMap()): org.apache.roller.weblogger.business.pings.AutoPingManager:getAutoPingsByWebsite(...)@219 != null
    //#presumption(void buildIsEnabledMap()): org.apache.roller.weblogger.pojos.AutoPing:getPingTarget(...)@227 != null
    //#presumption(void buildIsEnabledMap()): org.apache.roller.weblogger.ui.struts2.editor.Pings:getActionWeblog(...)@221 != null
    //#post(void buildIsEnabledMap()): this.pingStatus == One-of{old this.pingStatus, &new HashMap(buildIsEnabledMap#1)}
    //#post(void buildIsEnabledMap()): new HashMap(buildIsEnabledMap#1) num objects == 1
    //#test_vector(void buildIsEnabledMap()): java.util.Iterator:hasNext(...)@225: {0}, {1}
    //#test_vector(void buildIsEnabledMap()): java.util.Iterator:hasNext(...)@232: {0}, {1}
    //#test_vector(void buildIsEnabledMap()): java.util.Iterator:hasNext(...)@240: {0}, {1}
    //#test_vector(void buildIsEnabledMap()): java.util.Map:get(...)@234: Inverse{null}, Addr_Set{null}
    //#test_vector(void buildIsEnabledMap()): java.util.Map:get(...)@242: Inverse{null}, Addr_Set{null}
    //#test_vector(void buildIsEnabledMap()): java.util.Map:size(...)@247: {-2_147_483_648..0}, {1..4_294_967_295}
        
        // Build isEnabled map (keyed by ping target id and values Boolean.TRUE/Boolean.FALSE)
        Map isEnabled = new HashMap();
        
        List autopings = Collections.EMPTY_LIST;
        try {
            autopings = autoPingMgr.getAutoPingsByWebsite(getActionWeblog());
    //#Pings.java:219: Warning: method not available
    //#    -- call on Weblog org.apache.roller.weblogger.ui.struts2.editor.Pings:getActionWeblog()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: void buildIsEnabledMap()
    //#    unanalyzed callee: Weblog org.apache.roller.weblogger.ui.struts2.editor.Pings:getActionWeblog()
    //#Pings.java:219: Warning: method not available
    //#    -- call on List org.apache.roller.weblogger.business.pings.AutoPingManager:getAutoPingsByWebsite(Weblog)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: void buildIsEnabledMap()
    //#    unanalyzed callee: List org.apache.roller.weblogger.business.pings.AutoPingManager:getAutoPingsByWebsite(Weblog)
        } catch (WebloggerException ex) {
            log.error("Error looking up auto pings for weblog - "+getActionWeblog().getHandle(), ex);
    //#Pings.java:221: Warning: method not available
    //#    -- call on Weblog org.apache.roller.weblogger.ui.struts2.editor.Pings:getActionWeblog()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: void buildIsEnabledMap()
    //#    unanalyzed callee: Weblog org.apache.roller.weblogger.ui.struts2.editor.Pings:getActionWeblog()
    //#Pings.java:221: Warning: method not available
    //#    -- call on String org.apache.roller.weblogger.pojos.Weblog:getHandle()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: void buildIsEnabledMap()
    //#    unanalyzed callee: String org.apache.roller.weblogger.pojos.Weblog:getHandle()
    //#Pings.java:221: 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.Pings
    //#    method: void buildIsEnabledMap()
    //#    unanalyzed callee: void org.apache.commons.logging.Log:error(Object, Throwable)
        }
        
        // Add the enabled auto ping configs with TRUE
        for (Iterator i = autopings.iterator(); i.hasNext();) {
            AutoPing autoPing = (AutoPing) i.next();
            isEnabled.put(autoPing.getPingTarget().getId(), Boolean.TRUE);
    //#Pings.java:227: Warning: method not available
    //#    -- call on PingTarget org.apache.roller.weblogger.pojos.AutoPing:getPingTarget()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: void buildIsEnabledMap()
    //#    unanalyzed callee: PingTarget org.apache.roller.weblogger.pojos.AutoPing:getPingTarget()
    //#Pings.java:227: Warning: method not available
    //#    -- call on String org.apache.roller.weblogger.pojos.PingTarget:getId()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: void buildIsEnabledMap()
    //#    unanalyzed callee: String org.apache.roller.weblogger.pojos.PingTarget:getId()
        }
        
        // Somewhat awkward, but the two loops save building a separate combined list.
        // Add disabled common ones with FALSE
        for (Iterator i = getCommonPingTargets().iterator(); i.hasNext();) {
            PingTarget pingTarget = (PingTarget) i.next();
            if (isEnabled.get(pingTarget.getId()) == null) {
    //#Pings.java:234: Warning: method not available
    //#    -- call on String org.apache.roller.weblogger.pojos.PingTarget:getId()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: void buildIsEnabledMap()
    //#    unanalyzed callee: String org.apache.roller.weblogger.pojos.PingTarget:getId()
                isEnabled.put(pingTarget.getId(), Boolean.FALSE);
    //#Pings.java:235: Warning: method not available
    //#    -- call on String org.apache.roller.weblogger.pojos.PingTarget:getId()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: void buildIsEnabledMap()
    //#    unanalyzed callee: String org.apache.roller.weblogger.pojos.PingTarget:getId()
            }
        }
        
        // Add disabled custom ones with FALSE
        for (Iterator i = getCustomPingTargets().iterator(); i.hasNext();) {
            PingTarget pingTarget = (PingTarget) i.next();
            if (isEnabled.get(pingTarget.getId()) == null) {
    //#Pings.java:242: Warning: method not available
    //#    -- call on String org.apache.roller.weblogger.pojos.PingTarget:getId()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: void buildIsEnabledMap()
    //#    unanalyzed callee: String org.apache.roller.weblogger.pojos.PingTarget:getId()
                isEnabled.put(pingTarget.getId(), Boolean.FALSE);
    //#Pings.java:243: Warning: method not available
    //#    -- call on String org.apache.roller.weblogger.pojos.PingTarget:getId()
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.ui.struts2.editor.Pings
    //#    method: void buildIsEnabledMap()
    //#    unanalyzed callee: String org.apache.roller.weblogger.pojos.PingTarget:getId()
            }
        }
        
        if(isEnabled.size() > 0) {
            setPingStatus(isEnabled);
        }
    }
    //#Pings.java:250: end of method: void org.apache.roller.weblogger.ui.struts2.editor.Pings.buildIsEnabledMap()
    
    
    public String getPingTargetId() {
        return pingTargetId;
    //#Pings.java:254: method: String org.apache.roller.weblogger.ui.struts2.editor.Pings.getPingTargetId()
    //#input(String getPingTargetId()): this
    //#input(String getPingTargetId()): this.pingTargetId
    //#output(String getPingTargetId()): return_value
    //#pre[2] (String getPingTargetId()): init'ed(this.pingTargetId)
    //#post(String getPingTargetId()): return_value == this.pingTargetId
    //#post(String getPingTargetId()): init'ed(return_value)
    //#Pings.java:254: end of method: String org.apache.roller.weblogger.ui.struts2.editor.Pings.getPingTargetId()
    }

    public void setPingTargetId(String pingTargetId) {
        this.pingTargetId = pingTargetId;
    //#Pings.java:258: method: void org.apache.roller.weblogger.ui.struts2.editor.Pings.setPingTargetId(String)
    //#input(void setPingTargetId(String)): pingTargetId
    //#input(void setPingTargetId(String)): this
    //#output(void setPingTargetId(String)): this.pingTargetId
    //#post(void setPingTargetId(String)): this.pingTargetId == pingTargetId
    //#post(void setPingTargetId(String)): init'ed(this.pingTargetId)
    }
    //#Pings.java:259: end of method: void org.apache.roller.weblogger.ui.struts2.editor.Pings.setPingTargetId(String)

    public PingTarget getPingTarget() {
        return pingTarget;
    //#Pings.java:262: method: PingTarget org.apache.roller.weblogger.ui.struts2.editor.Pings.getPingTarget()
    //#input(PingTarget getPingTarget()): this
    //#input(PingTarget getPingTarget()): this.pingTarget
    //#output(PingTarget getPingTarget()): return_value
    //#pre[2] (PingTarget getPingTarget()): init'ed(this.pingTarget)
    //#post(PingTarget getPingTarget()): return_value == this.pingTarget
    //#post(PingTarget getPingTarget()): init'ed(return_value)
    //#Pings.java:262: end of method: PingTarget org.apache.roller.weblogger.ui.struts2.editor.Pings.getPingTarget()
    }

    public void setPingTarget(PingTarget pingTarget) {
        this.pingTarget = pingTarget;
    //#Pings.java:266: method: void org.apache.roller.weblogger.ui.struts2.editor.Pings.setPingTarget(PingTarget)
    //#input(void setPingTarget(PingTarget)): pingTarget
    //#input(void setPingTarget(PingTarget)): this
    //#output(void setPingTarget(PingTarget)): this.pingTarget
    //#post(void setPingTarget(PingTarget)): this.pingTarget == pingTarget
    //#post(void setPingTarget(PingTarget)): init'ed(this.pingTarget)
    }
    //#Pings.java:267: end of method: void org.apache.roller.weblogger.ui.struts2.editor.Pings.setPingTarget(PingTarget)

    public List getCommonPingTargets() {
        return commonPingTargets;
    //#Pings.java:270: method: List org.apache.roller.weblogger.ui.struts2.editor.Pings.getCommonPingTargets()
    //#input(List getCommonPingTargets()): this
    //#input(List getCommonPingTargets()): this.commonPingTargets
    //#output(List getCommonPingTargets()): return_value
    //#pre[2] (List getCommonPingTargets()): init'ed(this.commonPingTargets)
    //#post(List getCommonPingTargets()): return_value == this.commonPingTargets
    //#post(List getCommonPingTargets()): init'ed(return_value)
    //#Pings.java:270: end of method: List org.apache.roller.weblogger.ui.struts2.editor.Pings.getCommonPingTargets()
    }

    public void setCommonPingTargets(List commonPingTargets) {
        this.commonPingTargets = commonPingTargets;
    //#Pings.java:274: method: void org.apache.roller.weblogger.ui.struts2.editor.Pings.setCommonPingTargets(List)
    //#input(void setCommonPingTargets(List)): commonPingTargets
    //#input(void setCommonPingTargets(List)): this
    //#output(void setCommonPingTargets(List)): this.commonPingTargets
    //#post(void setCommonPingTargets(List)): this.commonPingTargets == commonPingTargets
    //#post(void setCommonPingTargets(List)): init'ed(this.commonPingTargets)
    }
    //#Pings.java:275: end of method: void org.apache.roller.weblogger.ui.struts2.editor.Pings.setCommonPingTargets(List)

    public List getCustomPingTargets() {
        return customPingTargets;
    //#Pings.java:278: method: List org.apache.roller.weblogger.ui.struts2.editor.Pings.getCustomPingTargets()
    //#input(List getCustomPingTargets()): this
    //#input(List getCustomPingTargets()): this.customPingTargets
    //#output(List getCustomPingTargets()): return_value
    //#pre[2] (List getCustomPingTargets()): init'ed(this.customPingTargets)
    //#post(List getCustomPingTargets()): return_value == this.customPingTargets
    //#post(List getCustomPingTargets()): init'ed(return_value)
    //#Pings.java:278: end of method: List org.apache.roller.weblogger.ui.struts2.editor.Pings.getCustomPingTargets()
    }

    public void setCustomPingTargets(List customPingTargets) {
        this.customPingTargets = customPingTargets;
    //#Pings.java:282: method: void org.apache.roller.weblogger.ui.struts2.editor.Pings.setCustomPingTargets(List)
    //#input(void setCustomPingTargets(List)): customPingTargets
    //#input(void setCustomPingTargets(List)): this
    //#output(void setCustomPingTargets(List)): this.customPingTargets
    //#post(void setCustomPingTargets(List)): this.customPingTargets == customPingTargets
    //#post(void setCustomPingTargets(List)): init'ed(this.customPingTargets)
    }
    //#Pings.java:283: end of method: void org.apache.roller.weblogger.ui.struts2.editor.Pings.setCustomPingTargets(List)

    public Map getPingStatus() {
        return pingStatus;
    //#Pings.java:286: method: Map org.apache.roller.weblogger.ui.struts2.editor.Pings.getPingStatus()
    //#input(Map getPingStatus()): this
    //#input(Map getPingStatus()): this.pingStatus
    //#output(Map getPingStatus()): return_value
    //#pre[2] (Map getPingStatus()): init'ed(this.pingStatus)
    //#post(Map getPingStatus()): return_value == this.pingStatus
    //#post(Map getPingStatus()): init'ed(return_value)
    //#Pings.java:286: end of method: Map org.apache.roller.weblogger.ui.struts2.editor.Pings.getPingStatus()
    }

    public void setPingStatus(Map pingStatus) {
        this.pingStatus = pingStatus;
    //#Pings.java:290: method: void org.apache.roller.weblogger.ui.struts2.editor.Pings.setPingStatus(Map)
    //#input(void setPingStatus(Map)): pingStatus
    //#input(void setPingStatus(Map)): this
    //#output(void setPingStatus(Map)): this.pingStatus
    //#post(void setPingStatus(Map)): this.pingStatus == pingStatus
    //#post(void setPingStatus(Map)): init'ed(this.pingStatus)
    }
    //#Pings.java:291: end of method: void org.apache.roller.weblogger.ui.struts2.editor.Pings.setPingStatus(Map)
}
    //#Pings.java:: end of class: org.apache.roller.weblogger.ui.struts2.editor.Pings
