OverridingJSpiderConfiguration.java
上传用户:qing5858
上传日期:2015-10-27
资源大小:6056k
文件大小:3k
源码类别:

搜索引擎

开发平台:

Java

  1. package net.javacoding.jspider.mockobjects;
  2. import net.javacoding.jspider.api.model.Site;
  3. import net.javacoding.jspider.core.util.config.JSpiderConfiguration;
  4. import net.javacoding.jspider.core.util.config.PropertySet;
  5. import java.io.File;
  6. import java.util.HashMap;
  7. import java.util.Map;
  8. /**
  9.  * $Id: OverridingJSpiderConfiguration.java,v 1.6 2003/04/10 16:19:24 vanrogu Exp $
  10.  */
  11. public class OverridingJSpiderConfiguration implements JSpiderConfiguration {
  12.     protected JSpiderConfiguration config;
  13.     protected PropertySet jspiderConfiguration;
  14.     protected PropertySet pluginsConfiguration;
  15.     protected PropertySet defaultSiteConfiguration;
  16.     protected PropertySet baseSiteConfiguration;
  17.     protected Map pluginConfiguration;
  18.     protected Map siteConfiguration;
  19.     protected File defaultOutputFolder;
  20.     public OverridingJSpiderConfiguration ( JSpiderConfiguration config ) {
  21.         this.config = config;
  22.         jspiderConfiguration = new OverridingPropertySet(config.getJSpiderConfiguration());
  23.         pluginsConfiguration = new OverridingPropertySet(config.getPluginsConfiguration());
  24.         defaultSiteConfiguration = new OverridingPropertySet(config.getDefaultSiteConfiguration());
  25.         baseSiteConfiguration = new OverridingPropertySet(config.getBaseSiteConfiguration());
  26.         pluginConfiguration = new HashMap ( );
  27.         siteConfiguration = new HashMap ( );
  28.         defaultOutputFolder = new File ( System.getProperty("jspider.home") + File.separator + "output" );
  29.     }
  30.     public File getDefaultOutputFolder() {
  31.         return defaultOutputFolder;
  32.     }
  33.     public PropertySet getJSpiderConfiguration() {
  34.         return jspiderConfiguration;
  35.     }
  36.     public PropertySet getPluginsConfiguration() {
  37.         return pluginsConfiguration;
  38.     }
  39.     public PropertySet getPluginConfiguration(String pluginName) {
  40.         PropertySet retVal = (PropertySet)pluginConfiguration.get(pluginName);
  41.         if ( retVal == null ) {
  42.             retVal = new OverridingPropertySet(config.getPluginConfiguration(pluginName) );
  43.             pluginConfiguration.put(pluginName, retVal);
  44.         }
  45.         return retVal;
  46.     }
  47.     public PropertySet getSiteConfiguration(Site site) {
  48.         return getSiteConfiguration(site.getHost(), site.getPort());
  49.     }
  50.     public PropertySet getSiteConfiguration(String host, int port) {
  51.         return baseSiteConfiguration;
  52.         /*
  53.         PropertySet retVal = (PropertySet)siteConfiguration.get("" + host + ":" +  port );
  54.         if ( retVal == null ) {
  55.             retVal = config.getSiteConfiguration(host, port);
  56.             retVal = new OverridingPropertySet(retVal);
  57.             siteConfiguration.put("" + host + ":" +  port, retVal);
  58.         }
  59.         return retVal;*/
  60.     }
  61.     public PropertySet getDefaultSiteConfiguration() {
  62.         return defaultSiteConfiguration;
  63.     }
  64.     public PropertySet getBaseSiteConfiguration() {
  65.         return baseSiteConfiguration;
  66.     }
  67.     public File getPluginConfigurationFolder(String pluginName) {
  68.         return config.getPluginConfigurationFolder(pluginName);
  69.     }
  70. }