当前位置: 首页>>代码示例>>Java>>正文


Java SolrCore.getDataDir方法代码示例

本文整理汇总了Java中org.apache.solr.core.SolrCore.getDataDir方法的典型用法代码示例。如果您正苦于以下问题:Java SolrCore.getDataDir方法的具体用法?Java SolrCore.getDataDir怎么用?Java SolrCore.getDataDir使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.apache.solr.core.SolrCore的用法示例。


在下文中一共展示了SolrCore.getDataDir方法的12个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: SnapShooter

import org.apache.solr.core.SolrCore; //导入方法依赖的package包/类
public SnapShooter(SolrCore core, String location, String snapshotName) {
  solrCore = core;
  if (location == null) snapDir = core.getDataDir();
  else  {
    File base = new File(core.getCoreDescriptor().getRawInstanceDir());
    snapDir = org.apache.solr.util.FileUtils.resolvePath(base, location).getAbsolutePath();
    File dir = new File(snapDir);
    if (!dir.exists())  dir.mkdirs();
  }
  lockFactory = new SimpleFSLockFactory(snapDir);
  this.snapshotName = snapshotName;

  if(snapshotName != null) {
    directoryName = "snapshot." + snapshotName;
  } else {
    SimpleDateFormat fmt = new SimpleDateFormat(DATE_FMT, Locale.ROOT);
    directoryName = "snapshot." + fmt.format(new Date());
  }
}
 
开发者ID:europeana,项目名称:search,代码行数:20,代码来源:SnapShooter.java

示例2: inform

import org.apache.solr.core.SolrCore; //导入方法依赖的package包/类
@Override
public void inform( SolrCore core ) {
  if (null != healthFileName) {
    healthcheck = new File(healthFileName);
    if ( ! healthcheck.isAbsolute()) {
      healthcheck = new File(core.getDataDir(), healthFileName);
      healthcheck = healthcheck.getAbsoluteFile();
    }

    if ( ! healthcheck.getParentFile().canWrite()) {
      // this is not fatal, users may not care about enable/disable via 
      // solr request, file might be touched/deleted by an external system
      log.warn("Directory for configured healthcheck file is not writable by solr, PingRequestHandler will not be able to control enable/disable: {}",
               healthcheck.getParentFile().getAbsolutePath());
    }

  }
  
}
 
开发者ID:europeana,项目名称:search,代码行数:20,代码来源:PingRequestHandler.java

示例3: checkForSingleIndex

import org.apache.solr.core.SolrCore; //导入方法依赖的package包/类
private void checkForSingleIndex(JettySolrRunner jetty) {
  CoreContainer cores = ((SolrDispatchFilter) jetty.getDispatchFilter().getFilter()).getCores();
  Collection<SolrCore> theCores = cores.getCores();
  for (SolrCore core : theCores) {
    String ddir = core.getDataDir();
    CachingDirectoryFactory dirFactory = (CachingDirectoryFactory) core.getDirectoryFactory();
    synchronized (dirFactory) {
      Set<String> livePaths = dirFactory.getLivePaths();
      // one for data, one for hte index under data
      assertEquals(livePaths.toString(), 2, livePaths.size());
      // :TODO: assert that one of the paths is a subpath of hte other
    }
    if (dirFactory instanceof StandardDirectoryFactory) {
      System.out.println(Arrays.asList(new File(ddir).list()));
      assertEquals(Arrays.asList(new File(ddir).list()).toString(), 1, indexDirCount(ddir));
    }
  }
}
 
开发者ID:europeana,项目名称:search,代码行数:19,代码来源:TestReplicationHandler.java

示例4: getTlogDir

import org.apache.solr.core.SolrCore; //导入方法依赖的package包/类
protected String getTlogDir(SolrCore core, PluginInfo info) {
  String dataDir = (String) info.initArgs.get("dir");
  
  String ulogDir = core.getCoreDescriptor().getUlogDir();
  if (ulogDir != null) {
    dataDir = ulogDir;
  }
  
  if (dataDir == null || dataDir.length() == 0) {
    dataDir = core.getDataDir();
  }

  return dataDir + "/" + TLOG_NAME;
}
 
开发者ID:europeana,项目名称:search,代码行数:15,代码来源:UpdateLog.java

示例5: createTempindexDir

import org.apache.solr.core.SolrCore; //导入方法依赖的package包/类
/**
 * All the files are copied to a temp dir first
 */
private String createTempindexDir(SolrCore core, String tmpIdxDirName) {
  // TODO: there should probably be a DirectoryFactory#concatPath(parent, name)
  // or something
  String tmpIdxDir = core.getDataDir() + tmpIdxDirName;
  return tmpIdxDir;
}
 
开发者ID:europeana,项目名称:search,代码行数:10,代码来源:SnapPuller.java

示例6: testRelativeIndexDirLocation

import org.apache.solr.core.SolrCore; //导入方法依赖的package包/类
@SuppressWarnings("unchecked")
@Test
public void testRelativeIndexDirLocation() throws Exception {
  SolrCore core = h.getCore();
  File indexDir = new File(core.getDataDir() + File.separator + "spellchecker1");
  assertTrue(indexDir.exists());
  
  indexDir = new File(core.getDataDir() + File.separator + "spellchecker2");
  assertTrue(indexDir.exists());
  
  indexDir = new File(core.getDataDir() + File.separator + "spellchecker3");
  assertTrue(indexDir.exists());
}
 
开发者ID:europeana,项目名称:search,代码行数:14,代码来源:SpellCheckComponentTest.java

示例7: UpdateHandler

import org.apache.solr.core.SolrCore; //导入方法依赖的package包/类
public UpdateHandler(SolrCore core, UpdateLog updateLog)  {
  this.core=core;
  idField = core.getLatestSchema().getUniqueKeyField();
  idFieldType = idField!=null ? idField.getType() : null;
  parseEventListeners();
  PluginInfo ulogPluginInfo = core.getSolrConfig().getPluginInfo(UpdateLog.class.getName());
  

  if (updateLog == null && ulogPluginInfo != null && ulogPluginInfo.isEnabled()) {
    String dataDir = (String)ulogPluginInfo.initArgs.get("dir");
    
    String ulogDir = core.getCoreDescriptor().getUlogDir();
    if (ulogDir != null) {
      dataDir = ulogDir;
    }
    if (dataDir == null || dataDir.length()==0) {
      dataDir = core.getDataDir();
    }
         
    if (dataDir != null && dataDir.startsWith("hdfs:/")) {
      DirectoryFactory dirFactory = core.getDirectoryFactory();
      if (dirFactory instanceof HdfsDirectoryFactory) {
        ulog = new HdfsUpdateLog(((HdfsDirectoryFactory)dirFactory).getConfDir());
      } else {
        ulog = new HdfsUpdateLog();
      }
      
    } else {
      ulog = new UpdateLog();
    }
    
    if (!core.isReloaded() && !core.getDirectoryFactory().isPersistent()) {
      ulog.clearLog(core, ulogPluginInfo);
    }
    
    ulog.init(ulogPluginInfo);

    ulog.init(this, core);
  } else {
    ulog = updateLog;
  }
  // ulog.init() when reusing an existing log is deferred (currently at the end of the DUH2 constructor

}
 
开发者ID:europeana,项目名称:search,代码行数:45,代码来源:UpdateHandler.java

示例8: create

import org.apache.solr.core.SolrCore; //导入方法依赖的package包/类
@Override
public Lookup create(NamedList params, SolrCore core) {
  // mandatory parameter
  Object fieldTypeName = params.get(QUERY_ANALYZER);
  if (fieldTypeName == null) {
    throw new IllegalArgumentException("Error in configuration: " + QUERY_ANALYZER + " parameter is mandatory");
  }
  FieldType ft = core.getLatestSchema().getFieldTypeByName(fieldTypeName.toString());
  if (ft == null) {
    throw new IllegalArgumentException("Error in configuration: " + fieldTypeName.toString() + " is not defined in the schema");
  }
  Analyzer indexAnalyzer = ft.getIndexAnalyzer();
  Analyzer queryAnalyzer = ft.getQueryAnalyzer();
  
  // optional parameters
  
  String indexPath = params.get(INDEX_PATH) != null
  ? params.get(INDEX_PATH).toString()
  : DEFAULT_INDEX_PATH;
  if (new File(indexPath).isAbsolute() == false) {
    indexPath = core.getDataDir() + File.separator + indexPath;
  }
  
  int minPrefixChars = params.get(MIN_PREFIX_CHARS) != null
  ? Integer.parseInt(params.get(MIN_PREFIX_CHARS).toString())
  : AnalyzingInfixSuggester.DEFAULT_MIN_PREFIX_CHARS;

  BlenderType blenderType = getBlenderType(params.get(BLENDER_TYPE));
  
  int numFactor = params.get(NUM_FACTOR) != null
  ? Integer.parseInt(params.get(NUM_FACTOR).toString())
  : BlendedInfixSuggester.DEFAULT_NUM_FACTOR;
  
  try {
    return new BlendedInfixSuggester(core.getSolrConfig().luceneMatchVersion, 
                                     FSDirectory.open(new File(indexPath)),
                                     indexAnalyzer, queryAnalyzer, minPrefixChars,
                                     blenderType, numFactor) {
      @Override
      public List<LookupResult> lookup(CharSequence key, Set<BytesRef> contexts, int num, boolean allTermsRequired, boolean doHighlight) throws IOException {
        List<LookupResult> res = super.lookup(key, contexts, num, allTermsRequired, doHighlight);
        if (doHighlight) {
          List<LookupResult> res2 = new ArrayList<>();
          for(LookupResult hit : res) {
            res2.add(new LookupResult(hit.highlightKey.toString(),
                                      hit.highlightKey,
                                      hit.value,
                                      hit.payload,
                                      hit.contexts));
          }
          res = res2;
        }

        return res;
      }
    };
  } catch (IOException e) {
    throw new RuntimeException();
  }
}
 
开发者ID:europeana,项目名称:search,代码行数:61,代码来源:BlendedInfixLookupFactory.java

示例9: create

import org.apache.solr.core.SolrCore; //导入方法依赖的package包/类
@Override
public Lookup create(NamedList params, SolrCore core) {
  // mandatory parameter
  Object fieldTypeName = params.get(QUERY_ANALYZER);
  if (fieldTypeName == null) {
    throw new IllegalArgumentException("Error in configuration: " + QUERY_ANALYZER + " parameter is mandatory");
  }
  FieldType ft = core.getLatestSchema().getFieldTypeByName(fieldTypeName.toString());
  if (ft == null) {
    throw new IllegalArgumentException("Error in configuration: " + fieldTypeName.toString() + " is not defined in the schema");
  }
  Analyzer indexAnalyzer = ft.getIndexAnalyzer();
  Analyzer queryAnalyzer = ft.getQueryAnalyzer();
  
  // optional parameters
  
  String indexPath = params.get(INDEX_PATH) != null
  ? params.get(INDEX_PATH).toString()
  : DEFAULT_INDEX_PATH;
  if (new File(indexPath).isAbsolute() == false) {
    indexPath = core.getDataDir() + File.separator + indexPath;
  }
  
  int minPrefixChars = params.get(MIN_PREFIX_CHARS) != null
  ? Integer.parseInt(params.get(MIN_PREFIX_CHARS).toString())
  : AnalyzingInfixSuggester.DEFAULT_MIN_PREFIX_CHARS;

  try {
    return new AnalyzingInfixSuggester(core.getSolrConfig().luceneMatchVersion, 
                                       FSDirectory.open(new File(indexPath)), indexAnalyzer,
                                       queryAnalyzer, minPrefixChars) {
      @Override
      public List<LookupResult> lookup(CharSequence key, Set<BytesRef> contexts, int num, boolean allTermsRequired, boolean doHighlight) throws IOException {
        List<LookupResult> res = super.lookup(key, contexts, num, allTermsRequired, doHighlight);
        if (doHighlight) {
          List<LookupResult> res2 = new ArrayList<>();
          for(LookupResult hit : res) {
            res2.add(new LookupResult(hit.highlightKey.toString(),
                                      hit.highlightKey,
                                      hit.value,
                                      hit.payload,
                                      hit.contexts));
          }
          res = res2;
        }

        return res;
      }
    };
  } catch (IOException e) {
    throw new RuntimeException();
  }
}
 
开发者ID:europeana,项目名称:search,代码行数:54,代码来源:AnalyzingInfixLookupFactory.java

示例10: ExternalFileFieldReloader

import org.apache.solr.core.SolrCore; //导入方法依赖的package包/类
public ExternalFileFieldReloader(SolrCore core) {
  super(core);
  datadir = core.getDataDir();
}
 
开发者ID:europeana,项目名称:search,代码行数:5,代码来源:ExternalFileFieldReloader.java

示例11: init

import org.apache.solr.core.SolrCore; //导入方法依赖的package包/类
@Override
public String init(NamedList config, SolrCore core) {
    LOG.info("init: " + config);
    String name = super.init(config, core);
    threshold = config.get(THRESHOLD_TOKEN_FREQUENCY) == null ? 0.0f
            : (Float)config.get(THRESHOLD_TOKEN_FREQUENCY);
    sourceLocation = (String) config.get(LOCATION);
    lookupImpl = (String)config.get(LOOKUP_IMPL);

    IndexSchema schema = core.getLatestSchema();
    suggestionAnalyzerFieldTypeName = (String)config.get(SUGGESTION_ANALYZER_FIELDTYPE);
    if (schema.getFieldTypes().containsKey(suggestionAnalyzerFieldTypeName))  {
        FieldType fieldType = schema.getFieldTypes().get(suggestionAnalyzerFieldTypeName);
        suggestionAnalyzer = fieldType.getQueryAnalyzer();
    }

    // support the old classnames without -Factory for config file backwards compatibility.
    if (lookupImpl == null || "org.apache.solr.spelling.suggest.jaspell.JaspellLookup".equals(lookupImpl)) {
        lookupImpl = JaspellLookupFactory.class.getName();
    } else if ("org.apache.solr.spelling.suggest.tst.TSTLookup".equals(lookupImpl)) {
        lookupImpl = TSTLookupFactory.class.getName();
    } else if ("org.apache.solr.spelling.suggest.fst.FSTLookup".equals(lookupImpl)) {
        lookupImpl = FSTLookupFactory.class.getName();
    }

    factory = core.getResourceLoader().newInstance(lookupImpl, LookupFactory.class);

    lookup = factory.create(config, core);
    String store = (String)config.get(STORE_DIR);
    if (store != null) {
        storeDir = new File(store);
        if (!storeDir.isAbsolute()) {
            storeDir = new File(core.getDataDir() + File.separator + storeDir);
        }
        if (!storeDir.exists()) {
            storeDir.mkdirs();
        } else {
            // attempt reload of the stored lookup
            try {
                lookup.load(new FileInputStream(new File(storeDir, factory.storeFileName())));
            } catch (IOException e) {
                LOG.warn("Loading stored lookup data failed", e);
            }
        }
    }
    return name;
}
 
开发者ID:DiceTechJobs,项目名称:SolrPlugins,代码行数:48,代码来源:DiceSuggester.java

示例12: init

import org.apache.solr.core.SolrCore; //导入方法依赖的package包/类
@Override
public String init(NamedList config, SolrCore core) {
    LOG.info("init: " + config);
    String name = super.init(config, core);
    threshold = config.get(THRESHOLD_TOKEN_FREQUENCY) == null ? 0.0f
            : (Float)config.get(THRESHOLD_TOKEN_FREQUENCY);
    sourceLocation = (String) config.get(LOCATION);
    lookupImpl = (String)config.get(LOOKUP_IMPL);

    // support the old classnames without -Factory for config file backwards compatibility.
    if (lookupImpl == null || "org.apache.solr.spelling.suggest.jaspell.JaspellLookup".equals(lookupImpl)) {
        lookupImpl = JaspellLookupFactory.class.getName();
    } else if ("org.apache.solr.spelling.suggest.tst.TSTLookup".equals(lookupImpl)) {
        lookupImpl = TSTLookupFactory.class.getName();
    } else if ("org.apache.solr.spelling.suggest.fst.FSTLookup".equals(lookupImpl)) {
        lookupImpl = FSTLookupFactory.class.getName();
    }

    factory = core.getResourceLoader().newInstance(lookupImpl, LookupFactory.class);

    lookup = factory.create(config, core);
    String store = (String)config.get(STORE_DIR);
    if (store != null) {
        storeDir = new File(store);
        if (!storeDir.isAbsolute()) {
            storeDir = new File(core.getDataDir() + File.separator + storeDir);
        }
        if (!storeDir.exists()) {
            storeDir.mkdirs();
        } else {
            // attempt reload of the stored lookup
            try {
                lookup.load(new FileInputStream(new File(storeDir, factory.storeFileName())));
            } catch (IOException e) {
                LOG.warn("Loading stored lookup data failed", e);
            }
        }
    }

    Integer maxLen = (Integer)config.get(MAX_CASE_SUGGESTION_LEN);
    if(null != maxLen){
        this.maxCaseSuggestionLength = maxLen;
    }
    return name;
}
 
开发者ID:DiceTechJobs,项目名称:SolrPlugins,代码行数:46,代码来源:DiceMultipleCaseSuggester.java


注:本文中的org.apache.solr.core.SolrCore.getDataDir方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。