Class ZipNumIndex
java.lang.Object
org.archive.format.gzip.zipnum.ZipNumIndex
- All Implemented Interfaces:
CDXInputSource
- Direct Known Subclasses:
ZipNumCluster
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected intprotected ZipNumBlockLoaderprotected intprotected longprotected static final booleanprotected Stringprotected intprotected booleanprotected SortedTextFileprotected Stringprotected boolean -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic ZipNumIndexcreateIndexWithBasePath(String pathRoot) static ZipNumIndexcreateIndexWithSummaryPath(String summaryFile) static Stringstatic intextractLineCount(String line) protected static longextractLongField(String line, int index) intgetCDXIterator(String key, String start, boolean exact, ZipNumParams params) getCDXIterator(String key, String start, String end, ZipNumParams params) getCDXIterator(String key, ZipNumParams params) getCDXIterator(CloseableIterator<String> summaryIterator) getCDXIterator(CloseableIterator<String> summaryIterator, String start, String end, int split, int numSplits) getCDXIterator(CloseableIterator<String> summaryIterator, String start, String end, int split, int numSplits, ZipNumParams params) getCDXIterator(CloseableIterator<String> summaryIterator, ZipNumParams params) intgetClusterRange(String start, String end, boolean inclusive, boolean includePrevLine) longgetEstimateSplitSize(String[] blocks) getNthLine(String lineNumber, int lineField) getNthPage(String[] startEnd, int page, int pageSize, boolean numPagesOnly) intgetNumLines(String[] blocks) intgetNumLines(String start, String end) intlonggetTotalLength(String[] blocks) longvoidinit()booleanbooleanisUseNio()voidsetBinsearchBlockSize(int binsearchBlockSize) voidsetBlockLoader(ZipNumBlockLoader blockLoader) voidsetCdxLinesPerBlock(int cdxLinesPerBlock) voidsetPathRoot(String pathRoot) voidsetReadaheadSize(int readaheadSize) voidsetRequired(boolean required) voidsetSummaryFile(String summaryFile) voidsetUseNio(boolean useNio) static CloseableIterator<String> wrapEndIterator(CloseableIterator<String> iter, String end, boolean inclusive) static CloseableIterator<String> wrapPrefix(CloseableIterator<String> source, String prefix, boolean exact) static CloseableIterator<String> wrapReverseIterator(CloseableIterator<String> iter, String start, String end) static CloseableIterator<String> wrapStartEndIterator(CloseableIterator<String> iter, String start, String end, boolean inclusive) static CloseableIterator<String> wrapStartIterator(CloseableIterator<String> iter, String start)
-
Field Details
-
pathRoot
-
summaryFile
-
binsearchBlockSize
protected int binsearchBlockSize -
readaheadSize
protected int readaheadSize -
summary
-
required
protected boolean required -
blockLoader
-
cdxLinesPerBlock
protected int cdxLinesPerBlock -
cdxLinesTotalCount
protected long cdxLinesTotalCount -
DEFAULT_USE_NIO
protected static final boolean DEFAULT_USE_NIO- See Also:
-
useNio
protected boolean useNio
-
-
Constructor Details
-
ZipNumIndex
public ZipNumIndex()
-
-
Method Details
-
init
- Throws:
IOException
-
createIndexWithSummaryPath
- Throws:
IOException
-
createIndexWithBasePath
- Throws:
IOException
-
extractLineCount
-
extractLongField
-
getNumLines
-
getTotalLength
-
getNumLines
- Throws:
IOException
-
getNthPage
public ZipNumIndex.PageResult getNthPage(String[] startEnd, int page, int pageSize, boolean numPagesOnly) throws IOException - Throws:
IOException
-
getNthLine
- Throws:
IOException
-
getEstimateSplitSize
-
getClusterRange
public CloseableIterator<String> getClusterRange(String start, String end, boolean inclusive, boolean includePrevLine) throws IOException - Throws:
IOException
-
wrapStartEndIterator
public static CloseableIterator<String> wrapStartEndIterator(CloseableIterator<String> iter, String start, String end, boolean inclusive) -
wrapReverseIterator
public static CloseableIterator<String> wrapReverseIterator(CloseableIterator<String> iter, String start, String end) -
wrapStartIterator
public static CloseableIterator<String> wrapStartIterator(CloseableIterator<String> iter, String start) -
wrapEndIterator
public static CloseableIterator<String> wrapEndIterator(CloseableIterator<String> iter, String end, boolean inclusive) -
getCDXIterator
public CloseableIterator<String> getCDXIterator(CloseableIterator<String> summaryIterator, String start, String end, int split, int numSplits) -
getCDXIterator
public CloseableIterator<String> getCDXIterator(CloseableIterator<String> summaryIterator, String start, String end, int split, int numSplits, ZipNumParams params) -
endKey
-
getLastBlockCDXLineIterator
- Throws:
IOException
-
wrapPrefix
public static CloseableIterator<String> wrapPrefix(CloseableIterator<String> source, String prefix, boolean exact) -
getCDXIterator
public CloseableIterator<String> getCDXIterator(String key, String start, String end, ZipNumParams params) throws IOException - Specified by:
getCDXIteratorin interfaceCDXInputSource- Throws:
IOException
-
getCDXIterator
public CloseableIterator<String> getCDXIterator(String key, String start, boolean exact, ZipNumParams params) throws IOException - Specified by:
getCDXIteratorin interfaceCDXInputSource- Throws:
IOException
-
getCDXIterator
- Throws:
IOException
-
getCDXIterator
public CloseableIterator<String> getCDXIterator(CloseableIterator<String> summaryIterator, ZipNumParams params) -
getCDXIterator
-
setSummaryFile
-
getSummaryFile
-
getSummary
-
getBlockLoader
-
getBinsearchBlockSize
public int getBinsearchBlockSize() -
setBinsearchBlockSize
public void setBinsearchBlockSize(int binsearchBlockSize) -
getReadaheadSize
public int getReadaheadSize() -
setReadaheadSize
public void setReadaheadSize(int readaheadSize) -
setBlockLoader
-
isUseNio
public boolean isUseNio() -
setUseNio
public void setUseNio(boolean useNio) -
getCdxLinesPerBlock
public int getCdxLinesPerBlock() -
setCdxLinesPerBlock
public void setCdxLinesPerBlock(int cdxLinesPerBlock) -
getPathRoot
-
setPathRoot
-
isRequired
public boolean isRequired() -
setRequired
public void setRequired(boolean required) -
getTotalLines
public long getTotalLines()- Specified by:
getTotalLinesin interfaceCDXInputSource
-