public interface Writable extends Serializable
DataInput and DataOutput.
Any key or value type in the Hadoop Map-Reduce
framework implements this interface.
Implementations typically implement a static read(DataInput)
method which constructs a new instance, calls readFields(DataInput)
and returns the instance.
Example:
public class MyWritable implements Writable {
// Some data
private int counter;
private long timestamp;
public void write(DataOutput out) throws IOException {
out.writeInt(counter);
out.writeLong(timestamp);
}
public void readFields(DataInput in) throws IOException {
counter = in.readInt();
timestamp = in.readLong();
}
public static MyWritable read(DataInput in) throws IOException {
MyWritable w = new MyWritable();
w.readFields(in);
return w;
}
}
| Modifier and Type | Method and Description |
|---|---|
WritableType |
getType()
Get the type of the writable.
|
void |
readFields(DataInput in)
Deserialize the fields of this object from
in. |
double |
toDouble()
Convert Writable to double.
|
float |
toFloat()
Convert Writable to float.
|
int |
toInt()
Convert Writable to int.
|
long |
toLong()
Convert Writable to long.
|
void |
write(DataOutput out)
Serialize the fields of this object to
out. |
void |
writeType(DataOutput out)
Write the type (a single short value) to the DataOutput.
|
void write(DataOutput out) throws IOException
out.out - DataOuput to serialize this object into.IOExceptionvoid readFields(DataInput in) throws IOException
in.
For efficiency, implementations should attempt to re-use storage in the existing object where possible.
in - DataInput to deseriablize this object from.IOExceptionvoid writeType(DataOutput out) throws IOException
WritableFactory for details.out - DataOutput to write toIOException - For errors during writingdouble toDouble()
float toFloat()
int toInt()
long toLong()
WritableType getType()
Copyright © 2019. All rights reserved.