package com.kadawoo.jspwiki.plugin; import org.apache.log4j.Logger; import com.ecyrd.jspwiki.*; import java.util.*; import com.ecyrd.jspwiki.plugin.*; public class ReferringUndefinedPagesPlugin extends AbstractReferralPlugin { private static Logger log = Logger.getLogger( UndefinedPagesPlugin.class ); public String execute( WikiContext context, Map params ) throws PluginException { ReferenceManager refmgr = context.getEngine().getReferenceManager(); Collection links = refmgr.findUncreated(); super.initialize( context, params ); Collection result = null; if (links != null) { TreeMap sortedMap = new TreeMap(); for (Iterator i = links.iterator(); i.hasNext();) { String uncreatedPageName = (String) i.next(); Collection referrers = refmgr.findReferrers(uncreatedPageName); if (referrers != null) { for (Iterator ii = referrers.iterator(); ii.hasNext();) { sortedMap.put(ii.next(), ""); } } } result = sortedMap.keySet(); } String wikitext = wikitizeCollection(result, m_separator, ALL_ITEMS ); return makeHTML( context, wikitext ); } }