org.apache.hadoop.io
Class SequenceFile.Reader

java.lang.Object
  extended by org.apache.hadoop.io.SequenceFile.Reader
Enclosing class:
SequenceFile

public static class SequenceFile.Reader
extends Object

Reads key/value pairs from a sequence-format file.


Constructor Summary
SequenceFile.Reader(FileSystem fs, Path file, Configuration conf)
          Open the named file.
 
Method Summary
 void close()
          Close the file.
 SequenceFile.ValueBytes createValueBytes()
           
 CompressionCodec getCompressionCodec()
          Returns the compression codec of data in this file.
 void getCurrentValue(Writable val)
          Get the 'value' corresponding to the last read 'key'.
 Class getKeyClass()
          Returns the class of keys in this file.
 SequenceFile.Metadata getMetadata()
          Returns the metadata object of the file
 long getPosition()
          Return the current byte position in the input file.
 Class getValueClass()
          Returns the class of values in this file.
 boolean isBlockCompressed()
          Returns true if records are block-compressed.
 boolean isCompressed()
          Returns true if values are compressed.
 int next(DataOutputBuffer buffer)
          Deprecated. Call nextRaw(DataOutputBuffer,SequenceFile.ValueBytes).
 boolean next(Writable key)
          Read the next key in the file into key, skipping its value.
 boolean next(Writable key, Writable val)
          Read the next key/value pair in the file into key and val.
 int nextRaw(DataOutputBuffer key, SequenceFile.ValueBytes val)
          Read 'raw' records.
 int nextRawKey(DataOutputBuffer key)
          Read 'raw' keys.
 int nextRawValue(SequenceFile.ValueBytes val)
          Read 'raw' values.
 void seek(long position)
          Set the current byte position in the input file.
 void sync(long position)
          Seek to the next sync mark past a given position.
 boolean syncSeen()
          Returns true iff the previous call to next passed a sync mark.
 String toString()
          Returns the name of the file.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

SequenceFile.Reader

public SequenceFile.Reader(FileSystem fs,
                           Path file,
                           Configuration conf)
                    throws IOException
Open the named file.

Throws:
IOException
Method Detail

close

public void close()
           throws IOException
Close the file.

Throws:
IOException

getKeyClass

public Class getKeyClass()
Returns the class of keys in this file.


getValueClass

public Class getValueClass()
Returns the class of values in this file.


isCompressed

public boolean isCompressed()
Returns true if values are compressed.


isBlockCompressed

public boolean isBlockCompressed()
Returns true if records are block-compressed.


getCompressionCodec

public CompressionCodec getCompressionCodec()
Returns the compression codec of data in this file.


getMetadata

public SequenceFile.Metadata getMetadata()
Returns the metadata object of the file


getCurrentValue

public void getCurrentValue(Writable val)
                     throws IOException
Get the 'value' corresponding to the last read 'key'.

Parameters:
val - : The 'value' to be read.
Throws:
IOException

next

public boolean next(Writable key)
             throws IOException
Read the next key in the file into key, skipping its value. True if another entry exists, and false at end of file.

Throws:
IOException

next

public boolean next(Writable key,
                    Writable val)
             throws IOException
Read the next key/value pair in the file into key and val. Returns true if such a pair exists and false when at end of file

Throws:
IOException

next

public int next(DataOutputBuffer buffer)
         throws IOException
Deprecated. Call nextRaw(DataOutputBuffer,SequenceFile.ValueBytes).

Throws:
IOException

createValueBytes

public SequenceFile.ValueBytes createValueBytes()

nextRaw

public int nextRaw(DataOutputBuffer key,
                   SequenceFile.ValueBytes val)
            throws IOException
Read 'raw' records.

Parameters:
key - - The buffer into which the key is read
val - - The 'raw' value
Returns:
Returns the total record length
Throws:
IOException

nextRawKey

public int nextRawKey(DataOutputBuffer key)
               throws IOException
Read 'raw' keys.

Parameters:
key - - The buffer into which the key is read
Returns:
Returns the key length
Throws:
IOException

nextRawValue

public int nextRawValue(SequenceFile.ValueBytes val)
                 throws IOException
Read 'raw' values.

Parameters:
val - - The 'raw' value
Returns:
Returns the value length
Throws:
IOException

seek

public void seek(long position)
          throws IOException
Set the current byte position in the input file.

The position passed must be a position returned by SequenceFile.Writer.getLength() when writing this file. To seek to an arbitrary position, use sync(long).

Throws:
IOException

sync

public void sync(long position)
          throws IOException
Seek to the next sync mark past a given position.

Throws:
IOException

syncSeen

public boolean syncSeen()
Returns true iff the previous call to next passed a sync mark.


getPosition

public long getPosition()
                 throws IOException
Return the current byte position in the input file.

Throws:
IOException

toString

public String toString()
Returns the name of the file.

Overrides:
toString in class Object


Copyright © 2006 The Apache Software Foundation