亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? segmentreader.java

?? lucene完整源碼
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
package org.apache.lucene.index;/** * Copyright 2004 The Apache Software Foundation * * Licensed 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. */import java.io.IOException;import java.util.*;import org.apache.lucene.document.Document;import org.apache.lucene.document.Field;import org.apache.lucene.store.IndexInput;import org.apache.lucene.store.IndexOutput;import org.apache.lucene.store.Directory;import org.apache.lucene.util.BitVector;import org.apache.lucene.search.DefaultSimilarity;/** * @version $Id: SegmentReader.java 405870 2006-05-12 21:04:00Z dnaber $ */class SegmentReader extends IndexReader {  private String segment;  FieldInfos fieldInfos;  private FieldsReader fieldsReader;  TermInfosReader tis;  TermVectorsReader termVectorsReaderOrig = null;  ThreadLocal termVectorsLocal = new ThreadLocal();  BitVector deletedDocs = null;  private boolean deletedDocsDirty = false;  private boolean normsDirty = false;  private boolean undeleteAll = false;  IndexInput freqStream;  IndexInput proxStream;  // Compound File Reader when based on a compound file segment  CompoundFileReader cfsReader = null;  private class Norm {    public Norm(IndexInput in, int number)    {      this.in = in;      this.number = number;    }    private IndexInput in;    private byte[] bytes;    private boolean dirty;    private int number;    private void reWrite() throws IOException {      // NOTE: norms are re-written in regular directory, not cfs      IndexOutput out = directory().createOutput(segment + ".tmp");      try {        out.writeBytes(bytes, maxDoc());      } finally {        out.close();      }      String fileName;      if(cfsReader == null)          fileName = segment + ".f" + number;      else{          // use a different file name if we have compound format          fileName = segment + ".s" + number;      }      directory().renameFile(segment + ".tmp", fileName);      this.dirty = false;    }  }  private Hashtable norms = new Hashtable();  /** The class which implements SegmentReader. */  private static Class IMPL;  static {    try {      String name =        System.getProperty("org.apache.lucene.SegmentReader.class",                           SegmentReader.class.getName());      IMPL = Class.forName(name);    } catch (ClassNotFoundException e) {      throw new RuntimeException("cannot load SegmentReader class: " + e, e);    } catch (SecurityException se) {      try {        IMPL = Class.forName(SegmentReader.class.getName());      } catch (ClassNotFoundException e) {        throw new RuntimeException("cannot load default SegmentReader class: " + e, e);      }    }  }  protected SegmentReader() { super(null); }  public static SegmentReader get(SegmentInfo si) throws IOException {    return get(si.dir, si, null, false, false);  }  public static SegmentReader get(SegmentInfos sis, SegmentInfo si,                                  boolean closeDir) throws IOException {    return get(si.dir, si, sis, closeDir, true);  }  public static SegmentReader get(Directory dir, SegmentInfo si,                                  SegmentInfos sis,                                  boolean closeDir, boolean ownDir)    throws IOException {    SegmentReader instance;    try {      instance = (SegmentReader)IMPL.newInstance();    } catch (Exception e) {      throw new RuntimeException("cannot load SegmentReader class: " + e, e);    }    instance.init(dir, sis, closeDir, ownDir);    instance.initialize(si);    return instance;  }   private void initialize(SegmentInfo si) throws IOException {    segment = si.name;    // Use compound file directory for some files, if it exists    Directory cfsDir = directory();    if (directory().fileExists(segment + ".cfs")) {      cfsReader = new CompoundFileReader(directory(), segment + ".cfs");      cfsDir = cfsReader;    }    // No compound file exists - use the multi-file format    fieldInfos = new FieldInfos(cfsDir, segment + ".fnm");    fieldsReader = new FieldsReader(cfsDir, segment, fieldInfos);    tis = new TermInfosReader(cfsDir, segment, fieldInfos);    // NOTE: the bitvector is stored using the regular directory, not cfs    if (hasDeletions(si))      deletedDocs = new BitVector(directory(), segment + ".del");    // make sure that all index files have been read or are kept open    // so that if an index update removes them we'll still have them    freqStream = cfsDir.openInput(segment + ".frq");    proxStream = cfsDir.openInput(segment + ".prx");    openNorms(cfsDir);    if (fieldInfos.hasVectors()) { // open term vector files only as needed      termVectorsReaderOrig = new TermVectorsReader(cfsDir, segment, fieldInfos);    }  }   protected void finalize() {     // patch for pre-1.4.2 JVMs, whose ThreadLocals leak     termVectorsLocal.set(null);     super.finalize();   }  protected void doCommit() throws IOException {    if (deletedDocsDirty) {               // re-write deleted      deletedDocs.write(directory(), segment + ".tmp");      directory().renameFile(segment + ".tmp", segment + ".del");    }    if(undeleteAll && directory().fileExists(segment + ".del")){      directory().deleteFile(segment + ".del");    }    if (normsDirty) {               // re-write norms      Enumeration values = norms.elements();      while (values.hasMoreElements()) {        Norm norm = (Norm) values.nextElement();        if (norm.dirty) {          norm.reWrite();        }      }    }    deletedDocsDirty = false;    normsDirty = false;    undeleteAll = false;  }  protected void doClose() throws IOException {    fieldsReader.close();    tis.close();    if (freqStream != null)      freqStream.close();    if (proxStream != null)      proxStream.close();    closeNorms();    if (termVectorsReaderOrig != null)      termVectorsReaderOrig.close();    if (cfsReader != null)      cfsReader.close();  }  static boolean hasDeletions(SegmentInfo si) throws IOException {    return si.dir.fileExists(si.name + ".del");  }  public boolean hasDeletions() {    return deletedDocs != null;  }  static boolean usesCompoundFile(SegmentInfo si) throws IOException {    return si.dir.fileExists(si.name + ".cfs");  }  static boolean hasSeparateNorms(SegmentInfo si) throws IOException {    String[] result = si.dir.list();    String pattern = si.name + ".s";    int patternLength = pattern.length();    for(int i = 0; i < result.length; i++){      if(result[i].startsWith(pattern) && Character.isDigit(result[i].charAt(patternLength)))        return true;    }    return false;  }  protected void doDelete(int docNum) {    if (deletedDocs == null)      deletedDocs = new BitVector(maxDoc());    deletedDocsDirty = true;    undeleteAll = false;    deletedDocs.set(docNum);  }  protected void doUndeleteAll() {      deletedDocs = null;      deletedDocsDirty = false;      undeleteAll = true;  }  Vector files() throws IOException {    Vector files = new Vector(16);    for (int i = 0; i < IndexFileNames.INDEX_EXTENSIONS.length; i++) {      String name = segment + "." + IndexFileNames.INDEX_EXTENSIONS[i];      if (directory().fileExists(name))        files.addElement(name);    }

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日本va欧美va精品发布| 91精品国产一区二区三区蜜臀| 日韩免费电影网站| 国产电影一区二区三区| 99久久99久久精品国产片果冻| 日韩一级片网站| 美女任你摸久久| 精品一区二区免费| 欧美精品电影在线播放| 三级精品在线观看| 欧美一区二区国产| 精品一区二区国语对白| 国产亚洲欧美色| 成人午夜大片免费观看| 亚洲精品国产精品乱码不99| 99久久精品免费| 日本欧美一区二区三区| 精品黑人一区二区三区久久| 在线播放亚洲一区| 成人avav影音| 天堂av在线一区| 国产精品久久久一本精品| 欧美精选一区二区| 成人激情午夜影院| 狠狠色丁香久久婷婷综合_中| 日本韩国一区二区| 欧美成人一区二区三区在线观看| 中文字幕制服丝袜一区二区三区 | 日韩欧美你懂的| 91国偷自产一区二区三区观看| 天天爽夜夜爽夜夜爽精品视频| 4438x成人网最大色成网站| 国模少妇一区二区三区| 亚洲天堂a在线| 欧美大尺度电影在线| 成人高清视频在线| 日韩中文字幕亚洲一区二区va在线| 精品国免费一区二区三区| 一道本成人在线| 国产剧情一区二区| 免费人成在线不卡| 国产精品色在线| 欧美成人免费网站| 日本高清免费不卡视频| 极品少妇一区二区三区精品视频 | 亚洲午夜影视影院在线观看| 精品国产网站在线观看| 国产亚洲欧美一级| 欧美大胆一级视频| 精品国产乱码久久久久久图片| 在线不卡免费av| 精品久久久久久久人人人人传媒 | 国产精品全国免费观看高清| 国产亚洲一区字幕| 国产精品女上位| 综合精品久久久| 亚洲激情图片一区| 午夜视频一区二区| 国产美女一区二区三区| 国产激情精品久久久第一区二区 | 日韩精品一区二区三区三区免费| 精品国产伦一区二区三区观看方式 | 麻豆91在线播放| 国产精品18久久久| 在线视频国产一区| 56国语精品自产拍在线观看| 亚洲精品在线一区二区| 亚洲免费成人av| 日韩激情中文字幕| 成人av资源在线观看| 欧美一二三在线| 日韩精品一区二区三区中文不卡| 国产精品18久久久久久久久 | 欧美综合一区二区| 亚洲激情av在线| 91一区在线观看| 五月婷婷另类国产| 欧美日韩久久不卡| 国产精品视频一二三区| 韩日av一区二区| 日韩精品中午字幕| 亚洲www啪成人一区二区麻豆| 懂色av一区二区三区蜜臀 | 中文一区二区完整视频在线观看| 日本强好片久久久久久aaa| 色哦色哦哦色天天综合| 国产精品久久久久影院色老大| 日韩福利视频导航| 欧美人与禽zozo性伦| 视频一区视频二区中文| 色嗨嗨av一区二区三区| 最新日韩av在线| 色94色欧美sute亚洲线路二| 中文字幕亚洲不卡| 91视频免费播放| 亚洲免费观看高清完整版在线观看| 国产精品自产自拍| 国产日产欧美一区二区三区| 国产成人亚洲综合色影视| 久久久.com| 99久久er热在这里只有精品66| 国产精品久久久久影院| 欧美三级电影网| 国产在线一区观看| 亚洲精品一线二线三线| 国产精品中文字幕日韩精品| 中文乱码免费一区二区| 色天使久久综合网天天| 人人狠狠综合久久亚洲| 久久蜜桃av一区二区天堂 | 91精品国产综合久久久蜜臀粉嫩| 日本不卡高清视频| 国产亚洲精久久久久久| www.欧美色图| 日本不卡的三区四区五区| 日本一区二区电影| 欧美日韩三级一区| 岛国av在线一区| 欧美a一区二区| 一区二区三区四区亚洲| 国产欧美日韩综合| 欧美伦理电影网| 97se亚洲国产综合在线| 青青草精品视频| 亚洲精品伦理在线| 国产日韩欧美综合在线| 欧美日韩亚洲另类| 一本大道综合伊人精品热热| 成人一区在线观看| 国产在线视频一区二区| 国产一区三区三区| 一区二区在线观看免费| 中文一区二区完整视频在线观看| 精品国产91洋老外米糕| 欧美精品国产精品| 欧美精品三级在线观看| 欧美性生活影院| 欧美亚洲综合色| 欧美色老头old∨ideo| 91成人免费在线视频| 欧美精品123区| 久久中文字幕电影| 中文字幕一区二区三区乱码在线| 亚洲人成精品久久久久久| 一区二区三区高清| 精品一二三四区| 91网址在线看| 亚洲精品在线三区| 亚洲综合色成人| 久久精品国产一区二区三区免费看| 国产传媒久久文化传媒| 欧美色图片你懂的| 久久综合一区二区| 亚洲亚洲精品在线观看| 中文一区在线播放| 日韩视频一区二区三区在线播放 | 国产精品99久久久久久有的能看| 国产精品99久久久久久宅男| 国产大陆亚洲精品国产| 波多野结衣一区二区三区| 97久久人人超碰| 欧美视频一区二区三区四区| 精品国产青草久久久久福利| 久久久久国色av免费看影院| 亚洲色图在线看| 奇米影视7777精品一区二区| www.久久久久久久久| 欧美日韩高清不卡| 亚洲国产精品成人久久综合一区 | 日本不卡视频一二三区| 暴力调教一区二区三区| 欧美电影一区二区三区| 国产精品麻豆99久久久久久| 美美哒免费高清在线观看视频一区二区 | 制服丝袜在线91| 亚洲人成电影网站色mp4| 麻豆91免费看| 欧美精选一区二区| 亚洲最新在线观看| 成人开心网精品视频| 日韩三级视频在线看| 亚洲网友自拍偷拍| 99精品在线观看视频| 久久女同性恋中文字幕| 日本不卡视频在线| 91精品国模一区二区三区| 亚洲一区二区三区小说| 99精品视频中文字幕| 国产欧美日韩精品一区| 国产suv精品一区二区三区| 久久综合九色综合97_久久久| 婷婷六月综合亚洲| 欧美老女人在线| 日韩制服丝袜av| 欧美精品久久天天躁| 亚洲成av人影院| 91精品午夜视频| 九九久久精品视频| 国产欧美日韩精品在线| av在线不卡免费看|