當前位置: 首頁>>代碼示例>>Java>>正文


Java Directory.fileLength方法代碼示例

本文整理匯總了Java中org.apache.lucene.store.Directory.fileLength方法的典型用法代碼示例。如果您正苦於以下問題:Java Directory.fileLength方法的具體用法?Java Directory.fileLength怎麽用?Java Directory.fileLength使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在org.apache.lucene.store.Directory的用法示例。


在下文中一共展示了Directory.fileLength方法的5個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: fitsIntoMem

import org.apache.lucene.store.Directory; //導入方法依賴的package包/類
private static boolean fitsIntoMem(@NonNull final Directory dir) {
    try {
        long size = 0;
        for (String path : dir.listAll()) {
            size+=dir.fileLength(path);
        }
        return IndexCacheFactory.getDefault().getRAMController().shouldLoad(size);
    } catch (IOException ioe) {
        return false;
    }
}
 
開發者ID:apache,項目名稱:incubator-netbeans,代碼行數:12,代碼來源:LuceneIndex.java

示例2: addRecoveredFileDetails

import org.apache.lucene.store.Directory; //導入方法依賴的package包/類
private void addRecoveredFileDetails(SegmentInfos si, Store store, RecoveryState.Index index) throws IOException {
    final Directory directory = store.directory();
    for (String name : Lucene.files(si)) {
        long length = directory.fileLength(name);
        index.addFileDetail(name, length, true);
    }
}
 
開發者ID:justor,項目名稱:elasticsearch_my,代碼行數:8,代碼來源:StoreRecovery.java

示例3: estimateSize

import org.apache.lucene.store.Directory; //導入方法依賴的package包/類
private static long estimateSize(Directory directory) throws IOException {
    long estimatedSize = 0;
    String[] files = directory.listAll();
    for (String file : files) {
        try {
            estimatedSize += directory.fileLength(file);
        } catch (NoSuchFileException | FileNotFoundException | AccessDeniedException e) {
            // ignore, the file is not there no more; on Windows, if one thread concurrently deletes a file while
            // calling Files.size, you can also sometimes hit AccessDeniedException
        }
    }
    return estimatedSize;
}
 
開發者ID:justor,項目名稱:elasticsearch_my,代碼行數:14,代碼來源:Store.java

示例4: main

import org.apache.lucene.store.Directory; //導入方法依賴的package包/類
public static void main(String[] args) throws Exception{
    File samplesFilesDir = new File("build/classes/ensemble/");
    File indexDir = new File("build/classes/ensemble/search/index");
    File docDir = new File("../../../artifacts/sdk/docs/api");
    File samplesDir = new File("src/ensemble/samples");
    // create index
    ///System.out.println("Indexing to directory '" + indexDir + "'...");
    long start = System.currentTimeMillis();
    Directory dir = FSDirectory.open(indexDir);
    Analyzer analyzer = new StandardAnalyzer(Version.LUCENE_31);
    IndexWriterConfig iwc = new IndexWriterConfig(Version.LUCENE_31, analyzer);
    iwc.setOpenMode(OpenMode.CREATE);
    // generate and write index of all java doc and samples
    IndexWriter writer = new IndexWriter(dir, iwc);

    List<String> samplesFileList = new ArrayList<String>();

    indexSamples(writer, samplesDir, samplesFileList);
    try {
        indexJavaDocAllClasses(writer, docDir);
    } catch (Exception e) {
        System.out.println("\nWarning: We were not able to locate the JavaFX API documentation for your build environment.\n"
                + "Ensemble search will not include the API documentation.\n"); 
    }
    writer.close();
    // create a listAll.txt file that is used
    FileWriter listAllOut = new FileWriter(new File(indexDir,"listAll.txt"));
    for (String fileName: dir.listAll()) {
        if (!"listAll.txt".equals(fileName)) { // don't include the "listAll.txt" file
            Long length = dir.fileLength(fileName);
            listAllOut.write(fileName);
            listAllOut.write(':');
            listAllOut.write(length.toString());
            listAllOut.write('\n');
        }
    }
    listAllOut.flush();
    listAllOut.close();

    FileWriter sampleFilesCache = new FileWriter(new File(samplesFilesDir,"samplesAll.txt"));
    for (String oneSample: samplesFileList) {
            sampleFilesCache.write(oneSample);
            sampleFilesCache.write('\n');
    }
    sampleFilesCache.flush();
    sampleFilesCache.close();

    // print time taken
    ///System.out.println(System.currentTimeMillis() - start + " total milliseconds");
}
 
開發者ID:jalian-systems,項目名稱:marathonv5,代碼行數:51,代碼來源:BuildEnsembleSearchIndex.java

示例5: TermInfosReader

import org.apache.lucene.store.Directory; //導入方法依賴的package包/類
TermInfosReader(Directory dir, String seg, FieldInfos fis, IOContext context, int indexDivisor)
     throws CorruptIndexException, IOException {
  boolean success = false;

  if (indexDivisor < 1 && indexDivisor != -1) {
    throw new IllegalArgumentException("indexDivisor must be -1 (don't load terms index) or greater than 0: got " + indexDivisor);
  }

  try {
    directory = dir;
    segment = seg;
    fieldInfos = fis;

    origEnum = newSegmentTermEnum(directory.openInput(IndexFileNames.segmentFileName(segment, "", Lucene3xPostingsFormat.TERMS_EXTENSION),
                                                       context), fieldInfos, false);
    size = origEnum.size;


    if (indexDivisor != -1) {
      // Load terms index
      totalIndexInterval = origEnum.indexInterval * indexDivisor;

      final String indexFileName = IndexFileNames.segmentFileName(segment, "", Lucene3xPostingsFormat.TERMS_INDEX_EXTENSION);
      final SegmentTermEnum indexEnum = newSegmentTermEnum(directory.openInput(indexFileName,
                                                                                 context), fieldInfos, true);

      try {
        index = new TermInfosReaderIndex(indexEnum, indexDivisor, dir.fileLength(indexFileName), totalIndexInterval);
        indexLength = index.length();
      } finally {
        indexEnum.close();
      }
    } else {
      // Do not load terms index:
      totalIndexInterval = -1;
      index = null;
      indexLength = -1;
    }
    success = true;
  } finally {
    // With lock-less commits, it's entirely possible (and
    // fine) to hit a FileNotFound exception above. In
    // this case, we want to explicitly close any subset
    // of things that were opened so that we don't have to
    // wait for a GC to do so.
    if (!success) {
      close();
    }
  }
}
 
開發者ID:lamsfoundation,項目名稱:lams,代碼行數:51,代碼來源:TermInfosReader.java


注:本文中的org.apache.lucene.store.Directory.fileLength方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。