Some work on streaming.

git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3855 542714f4-19e9-0310-aa3c-eee0fc999fb1
This commit is contained in:
Ray Greenwell
2006-02-15 01:41:14 +00:00
parent 28ac720b98
commit 1d36299e3c
13 changed files with 216 additions and 175 deletions
@@ -11,7 +11,7 @@ public class ArrayStreamer extends Streamer
{
public function ArrayStreamer ()
{
super(Array);
super(Array, "[Ljava.lang.Object");
}
public override function createObject (ins :ObjectInputStream) :*
@@ -19,8 +19,7 @@ public class ArrayStreamer extends Streamer
return new Array(ins.readInt());
}
public override function writeObject (obj :*, out :ObjectOutputStream,
useWriter :Boolean) :void
public override function writeObject (obj :*, out :ObjectOutputStream) :void
{
var arr :Array = (obj as Array);
out.writeInt(arr.length);
@@ -29,8 +28,7 @@ public class ArrayStreamer extends Streamer
}
}
public override function readObject (obj :*, ins :ObjectInputStream,
useReader :Boolean) :void
public override function readObject (obj :*, ins :ObjectInputStream) :void
{
var arr :Array = (obj as Array);
for (var ii :int = 0; ii < arr.length; ii++) {
@@ -13,7 +13,7 @@ public class ByteArrayStreamer extends Streamer
{
public function ByteArrayStreamer ()
{
super(ByteArray);
super(ByteArray, "[B"); // yes, that's the Java class for a byte[].
}
public override function createObject (ins :ObjectInputStream) :*
@@ -23,16 +23,14 @@ public class ByteArrayStreamer extends Streamer
return bytes;
}
public override function writeObject (obj :*, out :ObjectOutputStream,
useWriter :Boolean) :void
public override function writeObject (obj :*, out :ObjectOutputStream) :void
{
var bytes :ByteArray = (obj as ByteArray);
out.writeInt(bytes.length);
out.writeBytes(bytes);
}
public override function readObject (obj :*, ins :ObjectInputStream,
useReader :Boolean) :void
public override function readObject (obj :*, ins :ObjectInputStream) :void
{
var bytes :ByteArray = (obj as ByteArray);
ins.readBytes(bytes, 0, bytes.length);
@@ -11,7 +11,7 @@ public class IntStreamer extends Streamer
{
public function IntStreamer ()
{
super(int);
super(int, "java.lang.Integer");
}
public override function createObject (ins :ObjectInputStream) :*
@@ -19,15 +19,13 @@ public class IntStreamer extends Streamer
return ins.readInt();
}
public override function writeObject (obj :*, out :ObjectOutputStream,
useWriter :Boolean) :void
public override function writeObject (obj :*, out :ObjectOutputStream) :void
{
var i :int = (obj as int);
out.writeInt(i);
}
public override function readObject (obj :*, ins :ObjectInputStream,
useReader :Boolean) :void
public override function readObject (obj :*, ins :ObjectInputStream) :void
{
// nothing here, the int is fully read in createObject()
}
@@ -11,7 +11,7 @@ public class NumberStreamer extends Streamer
{
public function NumberStreamer ()
{
super(Number);
super(Number, "java.lang.Double");
}
public override function createObject (ins :ObjectInputStream) :*
@@ -19,15 +19,13 @@ public class NumberStreamer extends Streamer
return ins.readDouble();
}
public override function writeObject (obj :*, out :ObjectOutputStream,
useWriter :Boolean) :void
public override function writeObject (obj :*, out :ObjectOutputStream) :void
{
var n :Number = (obj as Number);
out.writeDouble(n);
}
public override function readObject (obj :*, ins :ObjectInputStream,
useReader :Boolean) :void
public override function readObject (obj :*, ins :ObjectInputStream) :void
{
// nothing here, the Number is fully read in createObject()
}
@@ -11,7 +11,7 @@ public class StringStreamer extends Streamer
{
public function StringStreamer ()
{
super(String);
super(String, "java.lang.String");
}
public override function createObject (ins :ObjectInputStream) :*
@@ -19,15 +19,13 @@ public class StringStreamer extends Streamer
return ins.readUTF();
}
public override function writeObject (obj :*, out :ObjectOutputStream,
useWriter :Boolean) :void
public override function writeObject (obj :*, out :ObjectOutputStream) :void
{
var s :String = (obj as String);
out.writeUTF(s);
}
public override function readObject (obj :*, ins :ObjectInputStream,
useReader :Boolean) :void
public override function readObject (obj :*, ins :ObjectInputStream) :void
{
// nothing here, the String is fully read in createObject()
}