Package org.eclipse.net4j.util.io
Class SortedFileMap<K extends java.lang.Comparable<K>,V>
- java.lang.Object
-
- org.eclipse.net4j.util.io.SortedFileMap<K,V>
-
- All Implemented Interfaces:
java.io.Closeable,java.lang.AutoCloseable
- Direct Known Subclasses:
CachedFileMap
public abstract class SortedFileMap<K extends java.lang.Comparable<K>,V> extends java.lang.Object implements java.io.Closeable- Author:
- Eike Stepper
-
-
Constructor Summary
Constructors Constructor Description SortedFileMap(java.io.File file, java.lang.String mode)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description voidclose()Vget(K key)longgetEntryCount()intgetEntrySize()java.io.FilegetFile()KgetKey(long index)abstract intgetKeySize()KgetMaxKey()longgetPosition(long index)java.io.RandomAccessFilegetRandomAccessFile()VgetValue(long index)longgetValuePosition(long index)abstract intgetValueSize()Vput(K key, V value)protected abstract KreadKey(ExtendedDataInput in)protected abstract VreadValue(ExtendedDataInput in)protected longsearch(K key)protected abstract voidwriteKey(ExtendedDataOutput out, K key)protected abstract voidwriteValue(ExtendedDataOutput out, V value)
-
-
-
Method Detail
-
close
public void close() throws java.io.IOException- Specified by:
closein interfacejava.lang.AutoCloseable- Specified by:
closein interfacejava.io.Closeable- Throws:
java.io.IOException
-
getFile
public java.io.File getFile()
-
getRandomAccessFile
public java.io.RandomAccessFile getRandomAccessFile()
-
getEntryCount
public long getEntryCount()
-
getEntrySize
public int getEntrySize()
-
getPosition
public long getPosition(long index)
-
getValuePosition
public long getValuePosition(long index)
-
getMaxKey
public K getMaxKey()
-
getKey
public K getKey(long index)
-
getValue
public V getValue(long index)
-
search
protected long search(K key) throws java.io.IOException
- Returns:
- The index of the entry with the given key if the key exists,
-(insertionIndex + 1)otherwise. - Throws:
java.io.IOException
-
getKeySize
public abstract int getKeySize()
-
readKey
protected abstract K readKey(ExtendedDataInput in) throws java.io.IOException
- Throws:
java.io.IOException
-
writeKey
protected abstract void writeKey(ExtendedDataOutput out, K key) throws java.io.IOException
- Throws:
java.io.IOException
-
getValueSize
public abstract int getValueSize()
-
readValue
protected abstract V readValue(ExtendedDataInput in) throws java.io.IOException
- Throws:
java.io.IOException
-
writeValue
protected abstract void writeValue(ExtendedDataOutput out, V value) throws java.io.IOException
- Throws:
java.io.IOException
-
-