//# 0 errors, 316 messages
//#
/*
    //#ReferrerProcessingJob.java:1:1: class: org.apache.roller.weblogger.business.referrers.ReferrerProcessingJob
* 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.
*/
/*
 * ReferrerProcessingJob.java
 *
 * Created on December 16, 2005, 6:26 PM
 */

package org.apache.roller.weblogger.business.referrers;

import java.util.HashMap;
import java.util.Map;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.roller.weblogger.WebloggerException;
import org.apache.roller.weblogger.business.runnable.Job;
import org.apache.roller.weblogger.business.referrers.RefererManager;
import org.apache.roller.weblogger.business.WebloggerFactory;


/**
 * A simple Job which processes an IncomingReferrer.
 *
 * @author Allen Gilliland
 */
public class ReferrerProcessingJob implements Job {
    
    private static Log mLogger = LogFactory.getLog(ReferrerProcessingJob.class);
    //#ReferrerProcessingJob.java:43: method: org.apache.roller.weblogger.business.referrers.ReferrerProcessingJob.org.apache.roller.weblogger.business.referrers.ReferrerProcessingJob__static_init
    //#ReferrerProcessingJob.java:43: Warning: method not available
    //#    -- call on Log org.apache.commons.logging.LogFactory:getLog(Class)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.business.referrers.ReferrerProcessingJob
    //#    method: org.apache.roller.weblogger.business.referrers.ReferrerProcessingJob__static_init
    //#    unanalyzed callee: Log org.apache.commons.logging.LogFactory:getLog(Class)
    //#output(org.apache.roller.weblogger.business.referrers.ReferrerProcessingJob__static_init): __Descendant_Table[org/apache/roller/weblogger/business/referrers/ReferrerProcessingJob]
    //#output(org.apache.roller.weblogger.business.referrers.ReferrerProcessingJob__static_init): __Dispatch_Table.execute()V
    //#output(org.apache.roller.weblogger.business.referrers.ReferrerProcessingJob__static_init): __Dispatch_Table.input(Ljava/util/Map;)V
    //#output(org.apache.roller.weblogger.business.referrers.ReferrerProcessingJob__static_init): __Dispatch_Table.output()Ljava/util/Map;
    //#output(org.apache.roller.weblogger.business.referrers.ReferrerProcessingJob__static_init): mLogger
    //#output(org.apache.roller.weblogger.business.referrers.ReferrerProcessingJob__static_init): org/apache/roller/weblogger/business/runnable/Job.__Descendant_Table[org/apache/roller/weblogger/business/referrers/ReferrerProcessingJob]
    //#post(org.apache.roller.weblogger.business.referrers.ReferrerProcessingJob__static_init): __Descendant_Table[org/apache/roller/weblogger/business/referrers/ReferrerProcessingJob] == &__Dispatch_Table
    //#post(org.apache.roller.weblogger.business.referrers.ReferrerProcessingJob__static_init): org/apache/roller/weblogger/business/runnable/Job.__Descendant_Table[org/apache/roller/weblogger/business/referrers/ReferrerProcessingJob] == &__Dispatch_Table
    //#post(org.apache.roller.weblogger.business.referrers.ReferrerProcessingJob__static_init): __Dispatch_Table.execute()V == &execute
    //#post(org.apache.roller.weblogger.business.referrers.ReferrerProcessingJob__static_init): __Dispatch_Table.input(Ljava/util/Map;)V == &input
    //#post(org.apache.roller.weblogger.business.referrers.ReferrerProcessingJob__static_init): __Dispatch_Table.output()Ljava/util/Map; == &output
    //#post(org.apache.roller.weblogger.business.referrers.ReferrerProcessingJob__static_init): init'ed(mLogger)
    //#ReferrerProcessingJob.java:43: end of method: org.apache.roller.weblogger.business.referrers.ReferrerProcessingJob.org.apache.roller.weblogger.business.referrers.ReferrerProcessingJob__static_init
    
    Map inputs = null;
    IncomingReferrer referrer = null;
    
    public ReferrerProcessingJob() {}
    //#ReferrerProcessingJob.java:48: method: void org.apache.roller.weblogger.business.referrers.ReferrerProcessingJob.org.apache.roller.weblogger.business.referrers.ReferrerProcessingJob()
    //#input(void org.apache.roller.weblogger.business.referrers.ReferrerProcessingJob()): this
    //#output(void org.apache.roller.weblogger.business.referrers.ReferrerProcessingJob()): this.inputs
    //#output(void org.apache.roller.weblogger.business.referrers.ReferrerProcessingJob()): this.referrer
    //#post(void org.apache.roller.weblogger.business.referrers.ReferrerProcessingJob()): this.inputs == null
    //#post(void org.apache.roller.weblogger.business.referrers.ReferrerProcessingJob()): this.referrer == null
    //#ReferrerProcessingJob.java:48: end of method: void org.apache.roller.weblogger.business.referrers.ReferrerProcessingJob.org.apache.roller.weblogger.business.referrers.ReferrerProcessingJob()
    
    
    /**
     * Execute job.
     *
     * We simply pass the referrer into the RefererManager to handle the details.
     */
    public void execute() {
        
        if(this.referrer == null)
    //#ReferrerProcessingJob.java:58: method: void org.apache.roller.weblogger.business.referrers.ReferrerProcessingJob.execute()
    //#ReferrerProcessingJob.java:58: Warning: suspicious precondition
    //#    the precondition for org/apache/roller/weblogger/business/WebloggerFactory.webloggerProvider.__Tag is not a contiguous range of values
    //#    severity: SUPPRESSED
    //#    class: org.apache.roller.weblogger.business.referrers.ReferrerProcessingJob
    //#    method: void execute()
    //#    suspicious precondition index: [3]
    //#    Attribs:  Soft
    //#input(void execute()): "."._tainted
    //#input(void execute()): ":"._tainted
    //#input(void execute()): "="._tainted
    //#input(void execute()): "Incrementing hit count on existing referer: "._tainted
    //#input(void execute()): "PROCESSING: "._tainted
    //#input(void execute()): "Trouble accessing property: "._tainted
    //#input(void execute()): "] accessing ["._tainted
    //#input(void execute()): "]"._tainted
    //#input(void execute()): "direct"._tainted
    //#input(void execute()): "entryAnchorToIdMap CACHE HIT - "._tainted
    //#input(void execute()): "entryAnchorToIdMap CACHE MISS - "._tainted
    //#input(void execute()): "fetched property ["._tainted
    //#input(void execute()): "http:.."._tainted
    //#input(void execute()): "http:..www"._tainted
    //#input(void execute()): "newReferer="._tainted
    //#input(void execute()): "processing referrer ["._tainted
    //#input(void execute()): "site.linkbacks.enabled"._tainted
    //#input(void execute()): "weblogHandleToId CACHE HIT - "._tainted
    //#input(void execute()): "weblogHandleToId CACHE MISS - "._tainted
    //#input(void execute()): mLogger
    //#input(void execute()): org/apache/roller/weblogger/business/GuiceWebloggerProvider.__Dispatch_Table.getWeblogger()Lorg/apache/roller/weblogger/business/Weblogger;
    //#input(void execute()): org/apache/roller/weblogger/business/PropertiesManager.__Descendant_Table[org/apache/roller/weblogger/business/PropertiesManager]
    //#input(void execute()): org/apache/roller/weblogger/business/PropertiesManager.__Descendant_Table[org/apache/roller/weblogger/business/jpa/JPAPropertiesManagerImpl]
    //#input(void execute()): org/apache/roller/weblogger/business/PropertiesManager.__Descendant_Table[others]
    //#input(void execute()): org/apache/roller/weblogger/business/PropertiesManager.__Dispatch_Table.getProperty(Ljava/lang/String;)Lorg/apache/roller/weblogger/pojos/RuntimeConfigProperty;
    //#input(void execute()): org/apache/roller/weblogger/business/UserManager.__Descendant_Table[org/apache/roller/weblogger/business/UserManager]
    //#input(void execute()): org/apache/roller/weblogger/business/UserManager.__Descendant_Table[org/apache/roller/weblogger/business/jpa/JPAUserManagerImpl]
    //#input(void execute()): org/apache/roller/weblogger/business/UserManager.__Descendant_Table[others]
    //#input(void execute()): org/apache/roller/weblogger/business/UserManager.__Dispatch_Table.getWebsiteByHandle(Ljava/lang/String;)Lorg/apache/roller/weblogger/pojos/Weblog;
    //#input(void execute()): org/apache/roller/weblogger/business/WeblogManager.__Descendant_Table[org/apache/roller/weblogger/business/WeblogManager]
    //#input(void execute()): org/apache/roller/weblogger/business/WeblogManager.__Descendant_Table[org/apache/roller/weblogger/business/jpa/JPAWeblogManagerImpl]
    //#input(void execute()): org/apache/roller/weblogger/business/WeblogManager.__Descendant_Table[others]
    //#input(void execute()): org/apache/roller/weblogger/business/WeblogManager.__Dispatch_Table.getWeblogEntryByAnchor(Lorg/apache/roller/weblogger/pojos/Weblog;Ljava/lang/String;)Lorg/apache/roller/weblogger/pojos/WeblogEntry;
    //#input(void execute()): org/apache/roller/weblogger/business/Weblogger.__Descendant_Table[org/apache/roller/weblogger/business/WebloggerImpl]
    //#input(void execute()): org/apache/roller/weblogger/business/Weblogger.__Descendant_Table[org/apache/roller/weblogger/business/Weblogger]
    //#input(void execute()): org/apache/roller/weblogger/business/Weblogger.__Descendant_Table[org/apache/roller/weblogger/business/jpa/JPAWebloggerImpl]
    //#input(void execute()): org/apache/roller/weblogger/business/Weblogger.__Descendant_Table[others]
    //#input(void execute()): org/apache/roller/weblogger/business/Weblogger.__Dispatch_Table.flush()V
    //#input(void execute()): org/apache/roller/weblogger/business/Weblogger.__Dispatch_Table.getPropertiesManager()Lorg/apache/roller/weblogger/business/PropertiesManager;
    //#input(void execute()): org/apache/roller/weblogger/business/Weblogger.__Dispatch_Table.getRefererManager()Lorg/apache/roller/weblogger/business/referrers/RefererManager;
    //#input(void execute()): org/apache/roller/weblogger/business/Weblogger.__Dispatch_Table.getThreadManager()Lorg/apache/roller/weblogger/business/runnable/ThreadManager;
    //#input(void execute()): org/apache/roller/weblogger/business/Weblogger.__Dispatch_Table.getUserManager()Lorg/apache/roller/weblogger/business/UserManager;
    //#input(void execute()): org/apache/roller/weblogger/business/Weblogger.__Dispatch_Table.getWeblogManager()Lorg/apache/roller/weblogger/business/WeblogManager;
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerFactory.webloggerProvider
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerFactory.webloggerProvider.__Tag
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerFactory.webloggerProvider.webloggerInstance
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerFactory.webloggerProvider.webloggerInstance...__Tag
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerFactory.webloggerProvider.webloggerInstance...threadManager
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerFactory.webloggerProvider.webloggerInstance...threadManager.__Tag
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerFactory.webloggerProvider.webloggerInstance...threadManager.serviceScheduler
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerFactory.webloggerProvider.webloggerInstance...userManager
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerFactory.webloggerProvider.webloggerInstance...userManager.__Tag
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerFactory.webloggerProvider.webloggerInstance...userManager.strategy
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerFactory.webloggerProvider.webloggerInstance...userManager.strategy.__Tag
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerFactory.webloggerProvider.webloggerInstance...userManager.strategy.emf
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerFactory.webloggerProvider.webloggerInstance...userManager.strategy.threadLocalEntityManager
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerFactory.webloggerProvider.webloggerInstance...userManager.weblogHandleToIdMap
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerFactory.webloggerProvider.webloggerInstance...weblogManager
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerFactory.webloggerProvider.webloggerInstance...weblogManager.__Tag
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerFactory.webloggerProvider.webloggerInstance...weblogManager.entryAnchorToIdMap
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerFactory.webloggerProvider.webloggerInstance...weblogManager.strategy
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerFactory.webloggerProvider.webloggerInstance...weblogManager.strategy.__Tag
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerFactory.webloggerProvider.webloggerInstance...weblogManager.strategy.emf
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerFactory.webloggerProvider.webloggerInstance...weblogManager.strategy.threadLocalEntityManager
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerFactory.webloggerProvider.webloggerInstance.__Tag
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerFactory.webloggerProvider.webloggerInstance.propertiesManager
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerFactory.webloggerProvider.webloggerInstance.propertiesManager.__Tag
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerFactory.webloggerProvider.webloggerInstance.propertiesManager.strategy
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerFactory.webloggerProvider.webloggerInstance.propertiesManager.strategy.__Tag
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerFactory.webloggerProvider.webloggerInstance.propertiesManager.strategy.threadLocalEntityManager
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerFactory.webloggerProvider.webloggerInstance.refererManager
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerFactory.webloggerProvider.webloggerInstance.refererManager.__Tag
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerFactory.webloggerProvider.webloggerInstance.refererManager.roller
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerFactory.webloggerProvider.webloggerInstance.refererManager.strategy
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerFactory.webloggerProvider.webloggerInstance.refererManager.strategy.__Tag
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerFactory.webloggerProvider.webloggerInstance.refererManager.strategy.emf
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerFactory.webloggerProvider.webloggerInstance.refererManager.strategy.threadLocalEntityManager
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerFactory.webloggerProvider.webloggerInstance.strategy
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerFactory.webloggerProvider.webloggerInstance.strategy.__Tag
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerFactory.webloggerProvider.webloggerInstance.strategy.emf
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerFactory.webloggerProvider.webloggerInstance.strategy.threadLocalEntityManager
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerImpl.__Dispatch_Table.flush()V
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerImpl.__Dispatch_Table.getPropertiesManager()Lorg/apache/roller/weblogger/business/PropertiesManager;
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerImpl.__Dispatch_Table.getRefererManager()Lorg/apache/roller/weblogger/business/referrers/RefererManager;
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerImpl.__Dispatch_Table.getThreadManager()Lorg/apache/roller/weblogger/business/runnable/ThreadManager;
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerImpl.__Dispatch_Table.getUserManager()Lorg/apache/roller/weblogger/business/UserManager;
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerImpl.__Dispatch_Table.getWeblogManager()Lorg/apache/roller/weblogger/business/WeblogManager;
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerProvider.__Descendant_Table[org/apache/roller/weblogger/business/GuiceWebloggerProvider]
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerProvider.__Descendant_Table[org/apache/roller/weblogger/business/WebloggerProvider]
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerProvider.__Descendant_Table[others]
    //#input(void execute()): org/apache/roller/weblogger/business/WebloggerProvider.__Dispatch_Table.getWeblogger()Lorg/apache/roller/weblogger/business/Weblogger;
    //#input(void execute()): org/apache/roller/weblogger/business/jpa/JPAPersistenceStrategy.__Descendant_Table[org/apache/roller/weblogger/business/jpa/JPAPersistenceStrategy]
    //#input(void execute()): org/apache/roller/weblogger/business/jpa/JPAPersistenceStrategy.__Descendant_Table[others]
    //#input(void execute()): org/apache/roller/weblogger/business/jpa/JPAPersistenceStrategy.__Dispatch_Table.flush()V
    //#input(void execute()): org/apache/roller/weblogger/business/jpa/JPAPersistenceStrategy.__Dispatch_Table.getNamedQuery(Ljava/lang/String;)Ljavax/persistence/Query;
    //#input(void execute()): org/apache/roller/weblogger/business/jpa/JPAPersistenceStrategy.__Dispatch_Table.load(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Object;
    //#input(void execute()): org/apache/roller/weblogger/business/jpa/JPAPersistenceStrategy.__Dispatch_Table.store(Ljava/lang/Object;)Ljava/lang/Object;
    //#input(void execute()): org/apache/roller/weblogger/business/jpa/JPAPersistenceStrategy.javax.persistence.FlushModeType.COMMIT
    //#input(void execute()): org/apache/roller/weblogger/business/jpa/JPAPropertiesManagerImpl.__Dispatch_Table.getProperty(Ljava/lang/String;)Lorg/apache/roller/weblogger/pojos/RuntimeConfigProperty;
    //#input(void execute()): org/apache/roller/weblogger/business/jpa/JPARefererManagerImpl.__Descendant_Table[org/apache/roller/weblogger/business/jpa/JPARefererManagerImpl]
    //#input(void execute()): org/apache/roller/weblogger/business/jpa/JPARefererManagerImpl.__Descendant_Table[others]
    //#input(void execute()): org/apache/roller/weblogger/business/jpa/JPARefererManagerImpl.__Dispatch_Table.getMatchingReferers(Lorg/apache/roller/weblogger/pojos/Weblog;Ljava/lang/String;Ljava/lang/String;)Ljava/util/List;
    //#input(void execute()): org/apache/roller/weblogger/business/jpa/JPARefererManagerImpl.__Dispatch_Table.getReferersToWebsite(Lorg/apache/roller/weblogger/pojos/Weblog;Ljava/lang/String;)Ljava/util/List;
    //#input(void execute()): org/apache/roller/weblogger/business/jpa/JPARefererManagerImpl.__Dispatch_Table.processReferrer(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
    //#input(void execute()): org/apache/roller/weblogger/business/jpa/JPARefererManagerImpl.__Dispatch_Table.saveReferer(Lorg/apache/roller/weblogger/pojos/WeblogReferrer;)V
    //#input(void execute()): org/apache/roller/weblogger/business/jpa/JPARefererManagerImpl.java.lang.Boolean.FALSE
    //#input(void execute()): org/apache/roller/weblogger/business/jpa/JPARefererManagerImpl.log
    //#input(void execute()): org/apache/roller/weblogger/business/jpa/JPAThreadManagerImpl.__Dispatch_Table.executeInBackground(Ljava/lang/Runnable;)V
    //#input(void execute()): org/apache/roller/weblogger/business/jpa/JPAUserManagerImpl.__Descendant_Table[org/apache/roller/weblogger/business/jpa/JPAUserManagerImpl]
    //#input(void execute()): org/apache/roller/weblogger/business/jpa/JPAUserManagerImpl.__Descendant_Table[others]
    //#input(void execute()): org/apache/roller/weblogger/business/jpa/JPAUserManagerImpl.__Dispatch_Table.getWebsite(Ljava/lang/String;)Lorg/apache/roller/weblogger/pojos/Weblog;
    //#input(void execute()): org/apache/roller/weblogger/business/jpa/JPAUserManagerImpl.__Dispatch_Table.getWebsiteByHandle(Ljava/lang/String;)Lorg/apache/roller/weblogger/pojos/Weblog;
    //#input(void execute()): org/apache/roller/weblogger/business/jpa/JPAUserManagerImpl.__Dispatch_Table.getWebsiteByHandle(Ljava/lang/String;Ljava/lang/Boolean;)Lorg/apache/roller/weblogger/pojos/Weblog;
    //#input(void execute()): org/apache/roller/weblogger/business/jpa/JPAUserManagerImpl.java.lang.Boolean.TRUE
    //#input(void execute()): org/apache/roller/weblogger/business/jpa/JPAUserManagerImpl.log
    //#input(void execute()): org/apache/roller/weblogger/business/jpa/JPAWeblogManagerImpl.__Descendant_Table[org/apache/roller/weblogger/business/jpa/JPAWeblogManagerImpl]
    //#input(void execute()): org/apache/roller/weblogger/business/jpa/JPAWeblogManagerImpl.__Descendant_Table[others]
    //#input(void execute()): org/apache/roller/weblogger/business/jpa/JPAWeblogManagerImpl.__Dispatch_Table.getWeblogEntry(Ljava/lang/String;)Lorg/apache/roller/weblogger/pojos/WeblogEntry;
    //#input(void execute()): org/apache/roller/weblogger/business/jpa/JPAWeblogManagerImpl.__Dispatch_Table.getWeblogEntryByAnchor(Lorg/apache/roller/weblogger/pojos/Weblog;Ljava/lang/String;)Lorg/apache/roller/weblogger/pojos/WeblogEntry;
    //#input(void execute()): org/apache/roller/weblogger/business/jpa/JPAWeblogManagerImpl.log
    //#input(void execute()): org/apache/roller/weblogger/business/jpa/JPAWebloggerImpl.__Dispatch_Table.flush()V
    //#input(void execute()): org/apache/roller/weblogger/business/jpa/JPAWebloggerImpl.__Dispatch_Table.getPropertiesManager()Lorg/apache/roller/weblogger/business/PropertiesManager;
    //#input(void execute()): org/apache/roller/weblogger/business/jpa/JPAWebloggerImpl.__Dispatch_Table.getRefererManager()Lorg/apache/roller/weblogger/business/referrers/RefererManager;
    //#input(void execute()): org/apache/roller/weblogger/business/jpa/JPAWebloggerImpl.__Dispatch_Table.getThreadManager()Lorg/apache/roller/weblogger/business/runnable/ThreadManager;
    //#input(void execute()): org/apache/roller/weblogger/business/jpa/JPAWebloggerImpl.__Dispatch_Table.getUserManager()Lorg/apache/roller/weblogger/business/UserManager;
    //#input(void execute()): org/apache/roller/weblogger/business/jpa/JPAWebloggerImpl.__Dispatch_Table.getWeblogManager()Lorg/apache/roller/weblogger/business/WeblogManager;
    //#input(void execute()): org/apache/roller/weblogger/business/referrers/IncomingReferrer.__Descendant_Table[org/apache/roller/weblogger/business/referrers/IncomingReferrer]
    //#input(void execute()): org/apache/roller/weblogger/business/referrers/IncomingReferrer.__Descendant_Table[others]
    //#input(void execute()): org/apache/roller/weblogger/business/referrers/IncomingReferrer.__Dispatch_Table.getReferrerUrl()Ljava/lang/String;
    //#input(void execute()): org/apache/roller/weblogger/business/referrers/IncomingReferrer.__Dispatch_Table.getRequestUrl()Ljava/lang/String;
    //#input(void execute()): org/apache/roller/weblogger/business/referrers/IncomingReferrer.__Dispatch_Table.getWeblogAnchor()Ljava/lang/String;
    //#input(void execute()): org/apache/roller/weblogger/business/referrers/IncomingReferrer.__Dispatch_Table.getWeblogDateString()Ljava/lang/String;
    //#input(void execute()): org/apache/roller/weblogger/business/referrers/IncomingReferrer.__Dispatch_Table.getWeblogHandle()Ljava/lang/String;
    //#input(void execute()): org/apache/roller/weblogger/business/referrers/RefererManager.__Descendant_Table[org/apache/roller/weblogger/business/jpa/JPARefererManagerImpl]
    //#input(void execute()): org/apache/roller/weblogger/business/referrers/RefererManager.__Descendant_Table[org/apache/roller/weblogger/business/referrers/RefererManager]
    //#input(void execute()): org/apache/roller/weblogger/business/referrers/RefererManager.__Descendant_Table[others]
    //#input(void execute()): org/apache/roller/weblogger/business/referrers/RefererManager.__Dispatch_Table.processReferrer(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
    //#input(void execute()): org/apache/roller/weblogger/business/runnable/ThreadManager.__Descendant_Table[org/apache/roller/weblogger/business/jpa/JPAThreadManagerImpl]
    //#input(void execute()): org/apache/roller/weblogger/business/runnable/ThreadManager.__Descendant_Table[org/apache/roller/weblogger/business/runnable/ThreadManagerImpl]
    //#input(void execute()): org/apache/roller/weblogger/business/runnable/ThreadManager.__Descendant_Table[org/apache/roller/weblogger/business/runnable/ThreadManager]
    //#input(void execute()): org/apache/roller/weblogger/business/runnable/ThreadManager.__Descendant_Table[others]
    //#input(void execute()): org/apache/roller/weblogger/business/runnable/ThreadManager.__Dispatch_Table.executeInBackground(Ljava/lang/Runnable;)V
    //#input(void execute()): org/apache/roller/weblogger/business/runnable/ThreadManagerImpl.__Dispatch_Table.executeInBackground(Ljava/lang/Runnable;)V
    //#input(void execute()): org/apache/roller/weblogger/config/WebloggerRuntimeConfig.log
    //#input(void execute()): this
    //#input(void execute()): this.referrer
    //#input(void execute()): this.referrer.__Tag
    //#input(void execute()): this.referrer.referrerUrl
    //#input(void execute()): this.referrer.referrerUrl._tainted
    //#input(void execute()): this.referrer.requestUrl
    //#input(void execute()): this.referrer.requestUrl._tainted
    //#input(void execute()): this.referrer.weblogAnchor
    //#input(void execute()): this.referrer.weblogAnchor._tainted
    //#input(void execute()): this.referrer.weblogDateString
    //#input(void execute()): this.referrer.weblogHandle
    //#input(void execute()): this.referrer.weblogHandle._tainted
    //#pre[17] (void execute()): init'ed(this.referrer)
    //#pre[1] (void execute()): (soft) mLogger != null
    //#pre[2] (void execute()): (soft) org/apache/roller/weblogger/business/WebloggerFactory.webloggerProvider != null
    //#pre[3] (void execute()): (soft) org/apache/roller/weblogger/business/WebloggerFactory.webloggerProvider.__Tag in {org/apache/roller/weblogger/business/GuiceWebloggerProvider, org/apache/roller/weblogger/business/WebloggerProvider}
    //#pre[4] (void execute()): (soft) org/apache/roller/weblogger/business/WebloggerFactory.webloggerProvider.webloggerInstance != null
    //#pre[12] (void execute()): (soft) org/apache/roller/weblogger/business/jpa/JPARefererManagerImpl.log != null
    //#pre[13] (void execute()): (soft) org/apache/roller/weblogger/business/jpa/JPAUserManagerImpl.log != null
    //#pre[14] (void execute()): (soft) org/apache/roller/weblogger/business/jpa/JPAWeblogManagerImpl.log != null
    //#pre[15] (void execute()): (soft) org/apache/roller/weblogger/config/WebloggerRuntimeConfig.log != null
    //#pre[18] (void execute()): (soft) this.referrer.__Tag == org/apache/roller/weblogger/business/referrers/IncomingReferrer
    //#pre[19] (void execute()): (soft) init'ed(this.referrer.referrerUrl)
    //#pre[21] (void execute()): (soft) init'ed(this.referrer.requestUrl)
    //#pre[23] (void execute()): (soft) init'ed(this.referrer.weblogAnchor)
    //#pre[25] (void execute()): (soft) init'ed(this.referrer.weblogDateString)
    //#pre[26] (void execute()): (soft) init'ed(this.referrer.weblogHandle)
    //#presumption(void execute()): getWeblogger(...).__Tag in {org/apache/roller/weblogger/business/Weblogger, org/apache/roller/weblogger/business/WebloggerImpl, org/apache/roller/weblogger/business/jpa/JPAWebloggerImpl}
    //#presumption(void execute()): getWeblogger(...).__Tag in {org/apache/roller/weblogger/business/Weblogger, org/apache/roller/weblogger/business/WebloggerImpl, org/apache/roller/weblogger/business/jpa/JPAWebloggerImpl}
    //#presumption(void execute()): getWeblogger(...).refererManager != null
    //#presumption(void execute()): getWeblogger(...).strategy != null
    //#presumption(void execute()): getWeblogger(...).strategy.__Tag == org/apache/roller/weblogger/business/jpa/JPAPersistenceStrategy
    //#presumption(void execute()): getWeblogger(...).strategy.emf != null
    //#presumption(void execute()): getWeblogger(...).strategy.threadLocalEntityManager != null
    //#presumption(void execute()): refMgr.__Tag == org/apache/roller/weblogger/business/jpa/JPARefererManagerImpl
    //#presumption(void execute()): refMgr.roller != null
    //#presumption(void execute()): refMgr.roller.__Tag in {org/apache/roller/weblogger/business/Weblogger, org/apache/roller/weblogger/business/WebloggerImpl, org/apache/roller/weblogger/business/jpa/JPAWebloggerImpl}
    //#presumption(void execute()): refMgr.roller.threadManager != null
    //#presumption(void execute()): refMgr.roller.threadManager.__Tag in {org/apache/roller/weblogger/business/jpa/JPAThreadManagerImpl, org/apache/roller/weblogger/business/runnable/ThreadManager, org/apache/roller/weblogger/business/runnable/ThreadManagerImpl}
    //#presumption(void execute()): refMgr.roller.threadManager.serviceScheduler != null
    //#presumption(void execute()): refMgr.roller.userManager != null
    //#presumption(void execute()): refMgr.roller.userManager.__Tag == org/apache/roller/weblogger/business/jpa/JPAUserManagerImpl
    //#presumption(void execute()): refMgr.roller.userManager.strategy != null
    //#presumption(void execute()): refMgr.roller.userManager.strategy.__Tag == org/apache/roller/weblogger/business/jpa/JPAPersistenceStrategy
    //#presumption(void execute()): refMgr.roller.userManager.strategy.emf != null
    //#presumption(void execute()): refMgr.roller.userManager.strategy.threadLocalEntityManager != null
    //#presumption(void execute()): refMgr.roller.userManager.weblogHandleToIdMap != null
    //#presumption(void execute()): refMgr.roller.weblogManager != null
    //#presumption(void execute()): refMgr.roller.weblogManager.__Tag == org/apache/roller/weblogger/business/jpa/JPAWeblogManagerImpl
    //#presumption(void execute()): refMgr.roller.weblogManager.entryAnchorToIdMap != null
    //#presumption(void execute()): refMgr.roller.weblogManager.strategy != null
    //#presumption(void execute()): refMgr.roller.weblogManager.strategy.__Tag == org/apache/roller/weblogger/business/jpa/JPAPersistenceStrategy
    //#presumption(void execute()): refMgr.roller.weblogManager.strategy.threadLocalEntityManager != null
    //#presumption(void execute()): refMgr.strategy != null
    //#presumption(void execute()): refMgr.strategy.__Tag == org/apache/roller/weblogger/business/jpa/JPAPersistenceStrategy
    //#presumption(void execute()): refMgr.strategy.emf != null
    //#presumption(void execute()): refMgr.strategy.threadLocalEntityManager != null
    //#unanalyzed(void execute()): Effects-of-calling:getWeblogger
    //#unanalyzed(void execute()): Effects-of-calling:org.apache.commons.logging.Log:debug
    //#unanalyzed(void execute()): Effects-of-calling:java.lang.String:trim
    //#unanalyzed(void execute()): Effects-of-calling:java.lang.String:length
    //#unanalyzed(void execute()): Effects-of-calling:java.lang.ThreadLocal:get
    //#unanalyzed(void execute()): Effects-of-calling:javax.persistence.EntityManagerFactory:createEntityManager
    //#unanalyzed(void execute()): Effects-of-calling:java.lang.ThreadLocal:set
    //#unanalyzed(void execute()): Effects-of-calling:javax.persistence.EntityManager:getTransaction
    //#unanalyzed(void execute()): Effects-of-calling:javax.persistence.EntityTransaction:isActive
    //#unanalyzed(void execute()): Effects-of-calling:javax.persistence.EntityTransaction:begin
    //#unanalyzed(void execute()): Effects-of-calling:javax.persistence.EntityManager:createNamedQuery
    //#unanalyzed(void execute()): Effects-of-calling:javax.persistence.Query:setFlushMode
    //#unanalyzed(void execute()): Effects-of-calling:javax.persistence.Query:setParameter
    //#unanalyzed(void execute()): Effects-of-calling:javax.persistence.Query:getResultList
    //#unanalyzed(void execute()): Effects-of-calling:java.lang.StringBuilder
    //#unanalyzed(void execute()): Effects-of-calling:java.lang.StringBuilder:append
    //#unanalyzed(void execute()): Effects-of-calling:java.lang.StringBuilder:toString
    //#unanalyzed(void execute()): Effects-of-calling:getUserManager
    //#unanalyzed(void execute()): Effects-of-calling:getWebsiteByHandle
    //#unanalyzed(void execute()): Effects-of-calling:getWeblogManager
    //#unanalyzed(void execute()): Effects-of-calling:getWeblogEntryByAnchor
    //#unanalyzed(void execute()): Effects-of-calling:getReferersToWebsite
    //#unanalyzed(void execute()): Effects-of-calling:org.apache.roller.weblogger.util.Utilities:stripJsessionId
    //#unanalyzed(void execute()): Effects-of-calling:java.util.List:size
    //#unanalyzed(void execute()): Effects-of-calling:java.lang.String:startsWith
    //#unanalyzed(void execute()): Effects-of-calling:java.lang.String:substring
    //#unanalyzed(void execute()): Effects-of-calling:java.util.List:get
    //#unanalyzed(void execute()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogReferrer:getDayHits
    //#unanalyzed(void execute()): Effects-of-calling:java.lang.Integer:intValue
    //#unanalyzed(void execute()): Effects-of-calling:java.lang.Integer
    //#unanalyzed(void execute()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogReferrer:setDayHits
    //#unanalyzed(void execute()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogReferrer:getTotalHits
    //#unanalyzed(void execute()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogReferrer:setTotalHits
    //#unanalyzed(void execute()): Effects-of-calling:saveReferer
    //#unanalyzed(void execute()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogReferrer
    //#unanalyzed(void execute()): Effects-of-calling:org.apache.commons.logging.Log:isDebugEnabled
    //#unanalyzed(void execute()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogReferrer:getRefererUrl
    //#unanalyzed(void execute()): Effects-of-calling:getBooleanProperty
    //#unanalyzed(void execute()): Effects-of-calling:java.lang.String:equals
    //#unanalyzed(void execute()): Effects-of-calling:getThreadManager
    //#unanalyzed(void execute()): Effects-of-calling:executeInBackground
    //#unanalyzed(void execute()): Effects-of-calling:java.lang.Throwable:__curr_excep_obj
    //#unanalyzed(void execute()): Effects-of-calling:org.apache.commons.logging.Log:warn
    //#unanalyzed(void execute()): Effects-of-calling:org.apache.commons.logging.Log:error
    //#unanalyzed(void execute()): Effects-of-calling:javax.persistence.EntityManager:contains
    //#unanalyzed(void execute()): Effects-of-calling:javax.persistence.EntityManager:persist
    //#unanalyzed(void execute()): Effects-of-calling:javax.persistence.EntityTransaction:commit
    //#unanalyzed(void execute()): Effects-of-calling:org.apache.roller.RollerException
    //#unanalyzed(void execute()): Effects-of-calling:javax.persistence.EntityManager:find
    //#unanalyzed(void execute()): Effects-of-calling:getPropertiesManager
    //#unanalyzed(void execute()): Effects-of-calling:getProperty
    //#unanalyzed(void execute()): Effects-of-calling:org.apache.roller.weblogger.pojos.RuntimeConfigProperty:getValue
    //#unanalyzed(void execute()): Effects-of-calling:javax.persistence.Query:getSingleResult
    //#unanalyzed(void execute()): Effects-of-calling:org.apache.roller.weblogger.pojos.Weblog:getHandle
    //#unanalyzed(void execute()): Effects-of-calling:java.util.Map:remove
    //#unanalyzed(void execute()): Effects-of-calling:java.util.Map:put
    //#unanalyzed(void execute()): Effects-of-calling:java.util.Map:containsKey
    //#unanalyzed(void execute()): Effects-of-calling:java.util.Map:get
    //#unanalyzed(void execute()): Effects-of-calling:java.lang.Boolean:equals
    //#unanalyzed(void execute()): Effects-of-calling:org.apache.roller.weblogger.pojos.Weblog:getEnabled
    //#unanalyzed(void execute()): Effects-of-calling:org.apache.roller.weblogger.pojos.Weblog:getId
    //#unanalyzed(void execute()): Effects-of-calling:java.util.Hashtable:remove
    //#unanalyzed(void execute()): Effects-of-calling:java.util.Hashtable:containsKey
    //#unanalyzed(void execute()): Effects-of-calling:java.util.Hashtable:get
    //#unanalyzed(void execute()): Effects-of-calling:org.apache.roller.weblogger.pojos.WeblogEntry:getId
    //#unanalyzed(void execute()): Effects-of-calling:java.util.Hashtable:put
    //#unanalyzed(void execute()): Effects-of-calling:java.lang.Boolean
    //#unanalyzed(void execute()): Effects-of-calling:java.lang.Boolean:booleanValue
    //#unanalyzed(void execute()): Effects-of-calling:java.util.concurrent.ExecutorService:submit
    //#test_vector(void execute()): this.referrer: Inverse{null}, Addr_Set{null}
            return;
        
        mLogger.debug("PROCESSING: "+referrer.getRequestUrl());
    //#ReferrerProcessingJob.java:61: Warning: method not available
    //#    -- call on void org.apache.commons.logging.Log:debug(Object)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.business.referrers.ReferrerProcessingJob
    //#    method: void execute()
    //#    unanalyzed callee: void org.apache.commons.logging.Log:debug(Object)
        
        // process a referrer
        try {
            RefererManager refMgr = WebloggerFactory.getWeblogger().getRefererManager();
            refMgr.processReferrer(referrer.getRequestUrl(),
                                   referrer.getReferrerUrl(),
                                   referrer.getWeblogHandle(),
                                   referrer.getWeblogAnchor(),
                                   referrer.getWeblogDateString());
            
            WebloggerFactory.getWeblogger().flush();
        } catch(WebloggerException re) {
            // trouble
            mLogger.warn("Trouble processing referrer", re);
    //#ReferrerProcessingJob.java:75: Warning: method not available
    //#    -- call on void org.apache.commons.logging.Log:warn(Object, Throwable)
    //#    severity: INFORMATIONAL
    //#    class: org.apache.roller.weblogger.business.referrers.ReferrerProcessingJob
    //#    method: void execute()
    //#    unanalyzed callee: void org.apache.commons.logging.Log:warn(Object, Throwable)
        }
    }
    //#ReferrerProcessingJob.java:77: end of method: void org.apache.roller.weblogger.business.referrers.ReferrerProcessingJob.execute()
    
    
    /**
     * Set input.
     */
    public void input(Map input) {
        this.inputs = input;
    //#ReferrerProcessingJob.java:84: method: void org.apache.roller.weblogger.business.referrers.ReferrerProcessingJob.input(Map)
    //#input(void input(Map)): input
    //#input(void input(Map)): org/apache/roller/weblogger/business/referrers/IncomingReferrer.__Descendant_Table[org/apache/roller/weblogger/business/referrers/IncomingReferrer]
    //#input(void input(Map)): org/apache/roller/weblogger/business/referrers/IncomingReferrer.__Descendant_Table[others]
    //#input(void input(Map)): this
    //#output(void input(Map)): this.inputs
    //#output(void input(Map)): this.referrer
    //#pre[1] (void input(Map)): input != null
    //#post(void input(Map)): this.inputs == input
    //#post(void input(Map)): this.inputs != null
    //#post(void input(Map)): possibly_updated(this.referrer)
        
        // we are looking for the "referrer" key
        Object ref = input.get("referrer");
        
        if(ref instanceof IncomingReferrer) {
            this.referrer = (IncomingReferrer) ref;
        }
    }
    //#ReferrerProcessingJob.java:92: end of method: void org.apache.roller.weblogger.business.referrers.ReferrerProcessingJob.input(Map)
    
    
    /**
     * Get output.
     */
    public Map output() {
        
        return null;
    //#ReferrerProcessingJob.java:100: method: Map org.apache.roller.weblogger.business.referrers.ReferrerProcessingJob.output()
    //#output(Map output()): return_value
    //#post(Map output()): return_value == null
    //#ReferrerProcessingJob.java:100: end of method: Map org.apache.roller.weblogger.business.referrers.ReferrerProcessingJob.output()
    }
    
}
    //#ReferrerProcessingJob.java:: end of class: org.apache.roller.weblogger.business.referrers.ReferrerProcessingJob
