Well, it compiles.
It's not functional, there are still large holes in the implementation. git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3868 542714f4-19e9-0310-aa3c-eee0fc999fb1
This commit is contained in:
@@ -26,7 +26,7 @@ public class ObjectInputStream
|
|||||||
_source = source;
|
_source = source;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function readObject () :*
|
public function readObject () :Object
|
||||||
//throws IOError
|
//throws IOError
|
||||||
{
|
{
|
||||||
try {
|
try {
|
||||||
@@ -61,7 +61,7 @@ public class ObjectInputStream
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
var target :*;
|
var target :Object;
|
||||||
if (cmap.streamer === null) {
|
if (cmap.streamer === null) {
|
||||||
var clazz :Class = flash.util.getClassByName(cmap.classname);
|
var clazz :Class = flash.util.getClassByName(cmap.classname);
|
||||||
target = new clazz();
|
target = new clazz();
|
||||||
@@ -75,15 +75,16 @@ public class ObjectInputStream
|
|||||||
} catch (me :MemoryError) {
|
} catch (me :MemoryError) {
|
||||||
throw new IOError("out of memory" + me.message);
|
throw new IOError("out of memory" + me.message);
|
||||||
}
|
}
|
||||||
|
return null; // not reached: compiler dumb
|
||||||
}
|
}
|
||||||
|
|
||||||
public function readBareObject (obj :*) :void
|
public function readBareObject (obj :Object) :void
|
||||||
//throws IOError
|
//throws IOError
|
||||||
{
|
{
|
||||||
readBareObjectImpl(obj, Streamer.getStreamer(obj));
|
readBareObjectImpl(obj, Streamer.getStreamer(obj));
|
||||||
}
|
}
|
||||||
|
|
||||||
protected function readBareObjectImpl (obj :*, streamer :Streamer) :void
|
protected function readBareObjectImpl (obj :Object, streamer :Streamer) :void
|
||||||
{
|
{
|
||||||
// streamable objects
|
// streamable objects
|
||||||
if (streamer == null) {
|
if (streamer == null) {
|
||||||
@@ -105,11 +106,11 @@ public class ObjectInputStream
|
|||||||
|
|
||||||
// TODO: this is the equivalent of marshalling something for which
|
// TODO: this is the equivalent of marshalling something for which
|
||||||
// we have a basic streamer. Fill out with all the java types
|
// we have a basic streamer. Fill out with all the java types
|
||||||
public function readField (clazz :Class) :*
|
public function readField (clazz :Class) :Object
|
||||||
//throws IOError
|
//throws IOError
|
||||||
{
|
{
|
||||||
if (readBoolean()) {
|
if (readBoolean()) {
|
||||||
var obj :* = new clazz();
|
var obj :Object = new clazz();
|
||||||
return readBareObject(obj);
|
return readBareObject(obj);
|
||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
@@ -179,7 +180,7 @@ public class ObjectInputStream
|
|||||||
/**
|
/**
|
||||||
* Used by a Streamer that is reading an array of Streamable instances.
|
* Used by a Streamer that is reading an array of Streamable instances.
|
||||||
*/
|
*/
|
||||||
protected function setCurrent (streamer :Streamer, current :*)
|
protected function setCurrent (streamer :Streamer, current :Object)
|
||||||
{
|
{
|
||||||
_streamer = streamer;
|
_streamer = streamer;
|
||||||
_current = current;
|
_current = current;
|
||||||
@@ -189,7 +190,7 @@ public class ObjectInputStream
|
|||||||
protected var _source :IDataInput;
|
protected var _source :IDataInput;
|
||||||
|
|
||||||
/** The object currently being read from the stream. */
|
/** The object currently being read from the stream. */
|
||||||
protected var _current :*;
|
protected var _current :Object;
|
||||||
|
|
||||||
/** The stramer being used currently. */
|
/** The stramer being used currently. */
|
||||||
protected var _streamer :Streamer;
|
protected var _streamer :Streamer;
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ public class ObjectOutputStream
|
|||||||
_targ = targ;
|
_targ = targ;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function writeObject (obj :*) :void
|
public function writeObject (obj :Object) :void
|
||||||
//throws IOError
|
//throws IOError
|
||||||
{
|
{
|
||||||
// if the object to be written is null (or undefined) write a zero
|
// if the object to be written is null (or undefined) write a zero
|
||||||
@@ -53,13 +53,13 @@ public class ObjectOutputStream
|
|||||||
writeBareObjectImpl(obj, cmap.streamer);
|
writeBareObjectImpl(obj, cmap.streamer);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function writeBareObject (obj :*) :void
|
public function writeBareObject (obj :Object) :void
|
||||||
//throws IOError
|
//throws IOError
|
||||||
{
|
{
|
||||||
writeBareObjectImpl(obj, Streamer.getStreamer(obj));
|
writeBareObjectImpl(obj, Streamer.getStreamer(obj));
|
||||||
}
|
}
|
||||||
|
|
||||||
protected function writeBareObjectImpl (obj :*, streamer :Streamer)
|
protected function writeBareObjectImpl (obj :Object, streamer :Streamer)
|
||||||
{
|
{
|
||||||
// if it's Streamable, it goes straight through
|
// if it's Streamable, it goes straight through
|
||||||
if (streamer == null) {
|
if (streamer == null) {
|
||||||
@@ -80,7 +80,7 @@ public class ObjectOutputStream
|
|||||||
|
|
||||||
// TODO: this is equivalent to marshalling a field for which there
|
// TODO: this is equivalent to marshalling a field for which there
|
||||||
// is a basic streamer. Work needs doing here.
|
// is a basic streamer. Work needs doing here.
|
||||||
public function writeField (val :*) :void
|
public function writeField (val :Object) :void
|
||||||
//throws IOError
|
//throws IOError
|
||||||
{
|
{
|
||||||
var b :Boolean = (val != null);
|
var b :Boolean = (val != null);
|
||||||
@@ -165,7 +165,7 @@ public class ObjectOutputStream
|
|||||||
/**
|
/**
|
||||||
* Used by a Streamer that is writing an array of Streamable instances.
|
* Used by a Streamer that is writing an array of Streamable instances.
|
||||||
*/
|
*/
|
||||||
protected function setCurrent (streamer :Streamer, current :*)
|
protected function setCurrent (streamer :Streamer, current :Object)
|
||||||
{
|
{
|
||||||
_streamer = streamer;
|
_streamer = streamer;
|
||||||
_current = current;
|
_current = current;
|
||||||
@@ -178,7 +178,7 @@ public class ObjectOutputStream
|
|||||||
protected var _nextCode :int = 1;
|
protected var _nextCode :int = 1;
|
||||||
|
|
||||||
/** The object currently being written out. */
|
/** The object currently being written out. */
|
||||||
protected var _current :*;
|
protected var _current :Object;
|
||||||
|
|
||||||
/** The streamer being used currently. */
|
/** The streamer being used currently. */
|
||||||
protected var _streamer :Streamer;
|
protected var _streamer :Streamer;
|
||||||
|
|||||||
@@ -32,7 +32,7 @@ public class Streamer
|
|||||||
}
|
}
|
||||||
*/
|
*/
|
||||||
|
|
||||||
public static function getStreamer (obj :*) :Streamer
|
public static function getStreamer (obj :Object) :Streamer
|
||||||
{
|
{
|
||||||
if (obj is Streamable) {
|
if (obj is Streamable) {
|
||||||
return null;
|
return null;
|
||||||
@@ -74,7 +74,7 @@ public class Streamer
|
|||||||
_jname = jname;
|
_jname = jname;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function isStreamerFor (obj :*) :Boolean
|
public function isStreamerFor (obj :Object) :Boolean
|
||||||
{
|
{
|
||||||
return (obj is _targ); // scripting langs are weird
|
return (obj is _targ); // scripting langs are weird
|
||||||
}
|
}
|
||||||
@@ -87,7 +87,7 @@ public class Streamer
|
|||||||
return _jname;
|
return _jname;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function writeObject (obj :*, out :ObjectOutputStream) :void
|
public function writeObject (obj :Object, out :ObjectOutputStream) :void
|
||||||
//throws IOError
|
//throws IOError
|
||||||
{
|
{
|
||||||
trace("TODO");
|
trace("TODO");
|
||||||
@@ -102,14 +102,14 @@ public class Streamer
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public function createObject (ins :ObjectInputStream) :*
|
public function createObject (ins :ObjectInputStream) :Object
|
||||||
//throws IOError
|
//throws IOError
|
||||||
{
|
{
|
||||||
// actionscript is so fucked up
|
// actionscript is so fucked up
|
||||||
return new _targ();
|
return new _targ();
|
||||||
}
|
}
|
||||||
|
|
||||||
public function readObject (obj :*, ins :ObjectInputStream) :void
|
public function readObject (obj :Object, ins :ObjectInputStream) :void
|
||||||
//throws IOError
|
//throws IOError
|
||||||
{
|
{
|
||||||
trace("TODO");
|
trace("TODO");
|
||||||
|
|||||||
@@ -14,12 +14,13 @@ public class ArrayStreamer extends Streamer
|
|||||||
super(Array, "[Ljava.lang.Object");
|
super(Array, "[Ljava.lang.Object");
|
||||||
}
|
}
|
||||||
|
|
||||||
public override function createObject (ins :ObjectInputStream) :*
|
public override function createObject (ins :ObjectInputStream) :Object
|
||||||
{
|
{
|
||||||
return new Array(ins.readInt());
|
return new Array(ins.readInt());
|
||||||
}
|
}
|
||||||
|
|
||||||
public override function writeObject (obj :*, out :ObjectOutputStream) :void
|
public override function writeObject (obj :Object, out :ObjectOutputStream)
|
||||||
|
:void
|
||||||
{
|
{
|
||||||
var arr :Array = (obj as Array);
|
var arr :Array = (obj as Array);
|
||||||
out.writeInt(arr.length);
|
out.writeInt(arr.length);
|
||||||
@@ -28,7 +29,8 @@ public class ArrayStreamer extends Streamer
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public override function readObject (obj :*, ins :ObjectInputStream) :void
|
public override function readObject (obj :Object, ins :ObjectInputStream)
|
||||||
|
:void
|
||||||
{
|
{
|
||||||
var arr :Array = (obj as Array);
|
var arr :Array = (obj as Array);
|
||||||
for (var ii :int = 0; ii < arr.length; ii++) {
|
for (var ii :int = 0; ii < arr.length; ii++) {
|
||||||
|
|||||||
@@ -16,21 +16,23 @@ public class ByteArrayStreamer extends Streamer
|
|||||||
super(ByteArray, "[B"); // yes, that's the Java class for a byte[].
|
super(ByteArray, "[B"); // yes, that's the Java class for a byte[].
|
||||||
}
|
}
|
||||||
|
|
||||||
public override function createObject (ins :ObjectInputStream) :*
|
public override function createObject (ins :ObjectInputStream) :Object
|
||||||
{
|
{
|
||||||
var bytes :ByteArray = new ByteArray();
|
var bytes :ByteArray = new ByteArray();
|
||||||
bytes.length = ins.readInt();
|
bytes.length = ins.readInt();
|
||||||
return bytes;
|
return bytes;
|
||||||
}
|
}
|
||||||
|
|
||||||
public override function writeObject (obj :*, out :ObjectOutputStream) :void
|
public override function writeObject (obj :Object, out :ObjectOutputStream)
|
||||||
|
:void
|
||||||
{
|
{
|
||||||
var bytes :ByteArray = (obj as ByteArray);
|
var bytes :ByteArray = (obj as ByteArray);
|
||||||
out.writeInt(bytes.length);
|
out.writeInt(bytes.length);
|
||||||
out.writeBytes(bytes);
|
out.writeBytes(bytes);
|
||||||
}
|
}
|
||||||
|
|
||||||
public override function readObject (obj :*, ins :ObjectInputStream) :void
|
public override function readObject (obj :Object, ins :ObjectInputStream)
|
||||||
|
:void
|
||||||
{
|
{
|
||||||
var bytes :ByteArray = (obj as ByteArray);
|
var bytes :ByteArray = (obj as ByteArray);
|
||||||
ins.readBytes(bytes, 0, bytes.length);
|
ins.readBytes(bytes, 0, bytes.length);
|
||||||
|
|||||||
@@ -14,18 +14,20 @@ public class IntStreamer extends Streamer
|
|||||||
super(int, "java.lang.Integer");
|
super(int, "java.lang.Integer");
|
||||||
}
|
}
|
||||||
|
|
||||||
public override function createObject (ins :ObjectInputStream) :*
|
public override function createObject (ins :ObjectInputStream) :Object
|
||||||
{
|
{
|
||||||
return ins.readInt();
|
return ins.readInt();
|
||||||
}
|
}
|
||||||
|
|
||||||
public override function writeObject (obj :*, out :ObjectOutputStream) :void
|
public override function writeObject (obj :Object, out :ObjectOutputStream)
|
||||||
|
:void
|
||||||
{
|
{
|
||||||
var i :int = (obj as int);
|
var i :int = (obj as int);
|
||||||
out.writeInt(i);
|
out.writeInt(i);
|
||||||
}
|
}
|
||||||
|
|
||||||
public override function readObject (obj :*, ins :ObjectInputStream) :void
|
public override function readObject (obj :Object, ins :ObjectInputStream)
|
||||||
|
:void
|
||||||
{
|
{
|
||||||
// nothing here, the int is fully read in createObject()
|
// nothing here, the int is fully read in createObject()
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -14,18 +14,20 @@ public class NumberStreamer extends Streamer
|
|||||||
super(Number, "java.lang.Double");
|
super(Number, "java.lang.Double");
|
||||||
}
|
}
|
||||||
|
|
||||||
public override function createObject (ins :ObjectInputStream) :*
|
public override function createObject (ins :ObjectInputStream) :Object
|
||||||
{
|
{
|
||||||
return ins.readDouble();
|
return ins.readDouble();
|
||||||
}
|
}
|
||||||
|
|
||||||
public override function writeObject (obj :*, out :ObjectOutputStream) :void
|
public override function writeObject (obj :Object, out :ObjectOutputStream)
|
||||||
|
:void
|
||||||
{
|
{
|
||||||
var n :Number = (obj as Number);
|
var n :Number = (obj as Number);
|
||||||
out.writeDouble(n);
|
out.writeDouble(n);
|
||||||
}
|
}
|
||||||
|
|
||||||
public override function readObject (obj :*, ins :ObjectInputStream) :void
|
public override function readObject (obj :Object, ins :ObjectInputStream)
|
||||||
|
:void
|
||||||
{
|
{
|
||||||
// nothing here, the Number is fully read in createObject()
|
// nothing here, the Number is fully read in createObject()
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -14,18 +14,20 @@ public class StringStreamer extends Streamer
|
|||||||
super(String, "java.lang.String");
|
super(String, "java.lang.String");
|
||||||
}
|
}
|
||||||
|
|
||||||
public override function createObject (ins :ObjectInputStream) :*
|
public override function createObject (ins :ObjectInputStream) :Object
|
||||||
{
|
{
|
||||||
return ins.readUTF();
|
return ins.readUTF();
|
||||||
}
|
}
|
||||||
|
|
||||||
public override function writeObject (obj :*, out :ObjectOutputStream) :void
|
public override function writeObject (obj :Object, out :ObjectOutputStream)
|
||||||
|
:void
|
||||||
{
|
{
|
||||||
var s :String = (obj as String);
|
var s :String = (obj as String);
|
||||||
out.writeUTF(s);
|
out.writeUTF(s);
|
||||||
}
|
}
|
||||||
|
|
||||||
public override function readObject (obj :*, ins :ObjectInputStream) :void
|
public override function readObject (obj :Object, ins :ObjectInputStream)
|
||||||
|
:void
|
||||||
{
|
{
|
||||||
// nothing here, the String is fully read in createObject()
|
// nothing here, the String is fully read in createObject()
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -99,6 +99,7 @@ public class Client extends EventDispatcher
|
|||||||
}
|
}
|
||||||
|
|
||||||
// TODO
|
// TODO
|
||||||
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function requireService (clazz :Class) :InvocationService
|
public function requireService (clazz :Class) :InvocationService
|
||||||
|
|||||||
@@ -44,6 +44,8 @@ import com.threerings.presents.net.FailureResponse;
|
|||||||
import com.threerings.presents.net.ForwardEventRequest;
|
import com.threerings.presents.net.ForwardEventRequest;
|
||||||
import com.threerings.presents.net.ObjectResponse;
|
import com.threerings.presents.net.ObjectResponse;
|
||||||
import com.threerings.presents.net.PongResponse;
|
import com.threerings.presents.net.PongResponse;
|
||||||
|
import com.threerings.presents.net.SubscribeRequest;
|
||||||
|
import com.threerings.presents.net.UnsubscribeRequest;
|
||||||
import com.threerings.presents.net.UnsubscribeResponse;
|
import com.threerings.presents.net.UnsubscribeResponse;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -241,7 +243,7 @@ public class ClientDObjectMgr
|
|||||||
var events :IList = (event as CompoundEvent).getEvents();
|
var events :IList = (event as CompoundEvent).getEvents();
|
||||||
var ecount :int = events.length;
|
var ecount :int = events.length;
|
||||||
for (var ii :int = 0; ii < ecount; ii++) {
|
for (var ii :int = 0; ii < ecount; ii++) {
|
||||||
dispatchEvent(events.getItemAt(ii));
|
dispatchEvent(events.getItemAt(ii) as DEvent);
|
||||||
}
|
}
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -275,7 +277,7 @@ public class ClientDObjectMgr
|
|||||||
target.notifyListeners(event);
|
target.notifyListeners(event);
|
||||||
}
|
}
|
||||||
|
|
||||||
} catch (e :Exception) {
|
} catch (e :Error) {
|
||||||
trace("Failure processing event [event=" + event +
|
trace("Failure processing event [event=" + event +
|
||||||
", target=" + target + "].");
|
", target=" + target + "].");
|
||||||
//Log.logStackTrace(e);
|
//Log.logStackTrace(e);
|
||||||
@@ -304,7 +306,7 @@ public class ClientDObjectMgr
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
for (var ii :int = 0; ii < req.targets.length; ii++) {
|
for (var ii :int = 0; ii < req.targets.length; ii++) {
|
||||||
var target :Subscriber = req.targets[ii];
|
var target :Subscriber = req.targets[ii];
|
||||||
// add them as a subscriber
|
// add them as a subscriber
|
||||||
obj.addSubscriber(target);
|
obj.addSubscriber(target);
|
||||||
@@ -415,7 +417,7 @@ public class ClientDObjectMgr
|
|||||||
protected function flushObjects () :void
|
protected function flushObjects () :void
|
||||||
{
|
{
|
||||||
var now :Number = new Date().getTime();
|
var now :Number = new Date().getTime();
|
||||||
for (var oid :int in _flushes) {
|
for (var oid :String in _flushes) {
|
||||||
var rec :FlushRecord = _flushes[oid];
|
var rec :FlushRecord = _flushes[oid];
|
||||||
if (rec.expire <= now) {
|
if (rec.expire <= now) {
|
||||||
_flushes[oid] = undefined;
|
_flushes[oid] = undefined;
|
||||||
@@ -469,7 +471,8 @@ class ObjectAction
|
|||||||
public var subscribe :Boolean;
|
public var subscribe :Boolean;
|
||||||
|
|
||||||
public function ObjectAction (
|
public function ObjectAction (
|
||||||
oid :int, target :com.threerings.presents.dobj.Subscriber, subscribe :Boolean)
|
oid :int, target :com.threerings.presents.dobj.Subscriber,
|
||||||
|
subscribe :Boolean)
|
||||||
{
|
{
|
||||||
this.oid = oid;
|
this.oid = oid;
|
||||||
this.target = target;
|
this.target = target;
|
||||||
@@ -492,7 +495,8 @@ class PendingRequest
|
|||||||
this.oid = oid;
|
this.oid = oid;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function addTarget (target :com.threerings.presents.dobj.Subscriber) :void
|
public function addTarget (
|
||||||
|
target :com.threerings.presents.dobj.Subscriber) :void
|
||||||
{
|
{
|
||||||
targets.push(target);
|
targets.push(target);
|
||||||
}
|
}
|
||||||
@@ -507,7 +511,8 @@ class FlushRecord
|
|||||||
/** The time at which we flush it. */
|
/** The time at which we flush it. */
|
||||||
public var expire :Number;
|
public var expire :Number;
|
||||||
|
|
||||||
public function FlushRecord (obj :com.threerings.presents.dobj.DObject, expire :Number)
|
public function FlushRecord (
|
||||||
|
obj :com.threerings.presents.dobj.DObject, expire :Number)
|
||||||
{
|
{
|
||||||
this.obj = obj;
|
this.obj = obj;
|
||||||
this.expire = expire;
|
this.expire = expire;
|
||||||
|
|||||||
@@ -106,7 +106,7 @@ public class Communicator
|
|||||||
/**
|
/**
|
||||||
* Returns the time at which we last sent a packet to the server.
|
* Returns the time at which we last sent a packet to the server.
|
||||||
*/
|
*/
|
||||||
protected function getLastWrite () :Number
|
internal function getLastWrite () :Number
|
||||||
{
|
{
|
||||||
return _lastWrite;
|
return _lastWrite;
|
||||||
}
|
}
|
||||||
@@ -114,7 +114,7 @@ public class Communicator
|
|||||||
/**
|
/**
|
||||||
* Makes a note of the time at which we last communicated with the server.
|
* Makes a note of the time at which we last communicated with the server.
|
||||||
*/
|
*/
|
||||||
protected function updateWriteStamp () :void
|
internal function updateWriteStamp () :void
|
||||||
{
|
{
|
||||||
_lastWrite = new Date().getTime();
|
_lastWrite = new Date().getTime();
|
||||||
}
|
}
|
||||||
@@ -128,7 +128,8 @@ public class Communicator
|
|||||||
// convert the frame data into a message from the server
|
// convert the frame data into a message from the server
|
||||||
var frameData :ByteArray = event.getFrameData();
|
var frameData :ByteArray = event.getFrameData();
|
||||||
_inStream.setSource(frameData);
|
_inStream.setSource(frameData);
|
||||||
var msg :DownstreamMessage = _inStream.readObject();
|
var msg :DownstreamMessage =
|
||||||
|
(_inStream.readObject() as DownstreamMessage);
|
||||||
if (frameData.bytesAvailable > 0) {
|
if (frameData.bytesAvailable > 0) {
|
||||||
trace("OMG, we didn't fully read the frame. Surely there's a bug");
|
trace("OMG, we didn't fully read the frame. Surely there's a bug");
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -56,7 +56,7 @@ public class ClientObject extends DObject
|
|||||||
public override function readObject (ins :ObjectInputStream) :void
|
public override function readObject (ins :ObjectInputStream) :void
|
||||||
{
|
{
|
||||||
super.readObject(ins);
|
super.readObject(ins);
|
||||||
receivers = ins.readObject();
|
receivers = (ins.readObject() as DSet);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ public class AttributeChangedEvent extends NamedEvent
|
|||||||
/**
|
/**
|
||||||
* Returns the new value of the attribute.
|
* Returns the new value of the attribute.
|
||||||
*/
|
*/
|
||||||
public function getValue () :*
|
public function getValue () :Object
|
||||||
{
|
{
|
||||||
return _value;
|
return _value;
|
||||||
}
|
}
|
||||||
@@ -23,7 +23,7 @@ public class AttributeChangedEvent extends NamedEvent
|
|||||||
* Returns the value of the attribute prior to the application of this
|
* Returns the value of the attribute prior to the application of this
|
||||||
* event.
|
* event.
|
||||||
*/
|
*/
|
||||||
public function getOldValue () :*
|
public function getOldValue () :Object
|
||||||
{
|
{
|
||||||
return _oldValue;
|
return _oldValue;
|
||||||
}
|
}
|
||||||
@@ -60,7 +60,7 @@ public class AttributeChangedEvent extends NamedEvent
|
|||||||
* used).
|
* used).
|
||||||
*/
|
*/
|
||||||
public function AttributeChangedEvent (
|
public function AttributeChangedEvent (
|
||||||
targetOid :int, name :String, value :*, oldValue :*)
|
targetOid :int, name :String, value :Object, oldValue :Object)
|
||||||
{
|
{
|
||||||
super(targetOid, name);
|
super(targetOid, name);
|
||||||
_value = value;
|
_value = value;
|
||||||
@@ -68,7 +68,7 @@ public class AttributeChangedEvent extends NamedEvent
|
|||||||
}
|
}
|
||||||
|
|
||||||
// documentation inherited
|
// documentation inherited
|
||||||
protected override function notifyListener (listener :*) :void
|
internal override function notifyListener (listener :Object) :void
|
||||||
{
|
{
|
||||||
if (listener is AttributeChangeListener) {
|
if (listener is AttributeChangeListener) {
|
||||||
listener.attributeChanged(this);
|
listener.attributeChanged(this);
|
||||||
@@ -83,7 +83,7 @@ public class AttributeChangedEvent extends NamedEvent
|
|||||||
buf.append(", value=", _value);
|
buf.append(", value=", _value);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected var _value :*;
|
protected var _value :Object;
|
||||||
protected var _oldValue :* = UNSET_OLD_ENTRY;
|
protected var _oldValue :Object = UNSET_OLD_ENTRY;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -92,7 +92,7 @@ public class CompoundEvent extends DEvent
|
|||||||
case 0: // nothing doing
|
case 0: // nothing doing
|
||||||
break;
|
break;
|
||||||
case 1: // no point in being compound
|
case 1: // no point in being compound
|
||||||
_omgr.postEvent(_events.getItemAt(0));
|
_omgr.postEvent(_events.getItemAt(0) as DEvent);
|
||||||
break;
|
break;
|
||||||
default: // now we're talking
|
default: // now we're talking
|
||||||
_omgr.postEvent(this);
|
_omgr.postEvent(this);
|
||||||
@@ -152,7 +152,7 @@ public class CompoundEvent extends DEvent
|
|||||||
public override function readObject (ins :ObjectInputStream) :void
|
public override function readObject (ins :ObjectInputStream) :void
|
||||||
{
|
{
|
||||||
super.readObject(ins);
|
super.readObject(ins);
|
||||||
_events = ins.readObject();
|
_events = (ins.readObject() as StreamableArrayList);
|
||||||
}
|
}
|
||||||
|
|
||||||
/** The object manager that we'll post ourselves to when we're
|
/** The object manager that we'll post ourselves to when we're
|
||||||
|
|||||||
@@ -32,9 +32,10 @@ public class DEvent
|
|||||||
* return true here and short-circuit the normal proxy event dispatch
|
* return true here and short-circuit the normal proxy event dispatch
|
||||||
* mechanism.
|
* mechanism.
|
||||||
*/
|
*/
|
||||||
public function applyToObject (target :DObject) :void
|
public function applyToObject (target :DObject) :Boolean
|
||||||
{
|
{
|
||||||
trace("TODO: abstract methods?");
|
trace("TODO: abstract methods?");
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -44,7 +45,7 @@ public class DEvent
|
|||||||
* AttributeChangedEvent} will notify listeners that implement {@link
|
* AttributeChangedEvent} will notify listeners that implement {@link
|
||||||
* AttributeChangeListener}.
|
* AttributeChangeListener}.
|
||||||
*/
|
*/
|
||||||
protected function notifyListener (listener :*) :void
|
internal function notifyListener (listener :Object) :void
|
||||||
{
|
{
|
||||||
// the default is to do nothing
|
// the default is to do nothing
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -24,6 +24,29 @@ public class DObject // extends EventDispatcher
|
|||||||
return _omgr;
|
return _omgr;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function addSubscriber (sub :Subscriber) :void
|
||||||
|
{
|
||||||
|
if (!_subscribers.contains(sub)) {
|
||||||
|
_subscribers.addItem(sub);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public function removeSubscriber (sub :Subscriber) :void
|
||||||
|
{
|
||||||
|
var dex :int = _subscribers.getItemIndex(sub);
|
||||||
|
if (dex != -1) {
|
||||||
|
_subscribers.removeItemAt(dex);
|
||||||
|
if (_subscribers.length == 0) {
|
||||||
|
_omgr.removedLastSubscriber(this, _deathWish);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public function setDestroyOnLastSubscriberRemoved (deathWish :Boolean) :void
|
||||||
|
{
|
||||||
|
_deathWish = deathWish;
|
||||||
|
}
|
||||||
|
|
||||||
public function addListener (listener :ChangeListener) :void
|
public function addListener (listener :ChangeListener) :void
|
||||||
{
|
{
|
||||||
if (_listeners == null) {
|
if (_listeners == null) {
|
||||||
@@ -53,7 +76,7 @@ public class DObject // extends EventDispatcher
|
|||||||
}
|
}
|
||||||
|
|
||||||
for (var ii :int = 0; ii < _listeners.length; ii++) {
|
for (var ii :int = 0; ii < _listeners.length; ii++) {
|
||||||
var listener :* = _listeners.getItemAt(ii);
|
var listener :Object = _listeners.getItemAt(ii);
|
||||||
try {
|
try {
|
||||||
event.notifyListener(listener);
|
event.notifyListener(listener);
|
||||||
|
|
||||||
@@ -83,6 +106,31 @@ public class DObject // extends EventDispatcher
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function startTransaction () :void
|
||||||
|
{
|
||||||
|
// TODO
|
||||||
|
}
|
||||||
|
|
||||||
|
public function commitTransaction () :void
|
||||||
|
{
|
||||||
|
// TODO
|
||||||
|
}
|
||||||
|
|
||||||
|
public function inTransaction () :Boolean
|
||||||
|
{
|
||||||
|
return false; // TODO
|
||||||
|
}
|
||||||
|
|
||||||
|
public function cancelTransaction () :void
|
||||||
|
{
|
||||||
|
// TODO
|
||||||
|
}
|
||||||
|
|
||||||
|
internal function clearTransaction () :void
|
||||||
|
{
|
||||||
|
// TODO
|
||||||
|
}
|
||||||
|
|
||||||
public function isActive () :Boolean
|
public function isActive () :Boolean
|
||||||
{
|
{
|
||||||
return (_omgr != null);
|
return (_omgr != null);
|
||||||
@@ -106,7 +154,7 @@ public class DObject // extends EventDispatcher
|
|||||||
* called.
|
* called.
|
||||||
*/
|
*/
|
||||||
protected function requestAttributeChange (
|
protected function requestAttributeChange (
|
||||||
name :String, value :*, oldValue :*) :void
|
name :String, value :Object, oldValue :Object) :void
|
||||||
{
|
{
|
||||||
postEvent(new AttributeChangedEvent(_oid, name, value, oldValue));
|
postEvent(new AttributeChangedEvent(_oid, name, value, oldValue));
|
||||||
}
|
}
|
||||||
@@ -116,7 +164,7 @@ public class DObject // extends EventDispatcher
|
|||||||
* called.
|
* called.
|
||||||
*/
|
*/
|
||||||
protected function requestElementUpdate (
|
protected function requestElementUpdate (
|
||||||
name :String, index :int, value :*, oldValue :*) :void
|
name :String, index :int, value :Object, oldValue :Object) :void
|
||||||
{
|
{
|
||||||
// dispatch an attribute changed event
|
// dispatch an attribute changed event
|
||||||
postEvent(new ElementUpdatedEvent(_oid, name, value, oldValue, index));
|
postEvent(new ElementUpdatedEvent(_oid, name, value, oldValue, index));
|
||||||
@@ -186,5 +234,9 @@ public class DObject // extends EventDispatcher
|
|||||||
|
|
||||||
/** Our event listeners. */
|
/** Our event listeners. */
|
||||||
protected var _listeners :ArrayCollection;
|
protected var _listeners :ArrayCollection;
|
||||||
|
|
||||||
|
protected var _subscribers :ArrayCollection;
|
||||||
|
|
||||||
|
protected var _deathWish :Boolean = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -158,7 +158,7 @@ public class DSet
|
|||||||
* @return true if the entry was added, false if it was already in
|
* @return true if the entry was added, false if it was already in
|
||||||
* the set.
|
* the set.
|
||||||
*/
|
*/
|
||||||
protected function add (elem :DSetEntry) :Boolean
|
internal function add (elem :DSetEntry) :Boolean
|
||||||
{
|
{
|
||||||
if (contains(elem)) {
|
if (contains(elem)) {
|
||||||
trace("Refusing to add duplicate entry [set=" + this +
|
trace("Refusing to add duplicate entry [set=" + this +
|
||||||
@@ -179,7 +179,7 @@ public class DSet
|
|||||||
* @return true if the entry was removed, false if it was not in the
|
* @return true if the entry was removed, false if it was not in the
|
||||||
* set.
|
* set.
|
||||||
*/
|
*/
|
||||||
protected function remove (elem :DSetEntry) :Boolean
|
internal function remove (elem :DSetEntry) :Boolean
|
||||||
{
|
{
|
||||||
return (null != removeKey(elem.getKey()));
|
return (null != removeKey(elem.getKey()));
|
||||||
}
|
}
|
||||||
@@ -193,7 +193,7 @@ public class DSet
|
|||||||
* @return the old matching entry if found and removed, null if not
|
* @return the old matching entry if found and removed, null if not
|
||||||
* found.
|
* found.
|
||||||
*/
|
*/
|
||||||
protected function removeKey (key :Comparable) :DSetEntry
|
internal function removeKey (key :Comparable) :DSetEntry
|
||||||
{
|
{
|
||||||
// o(n) for now
|
// o(n) for now
|
||||||
// TODO
|
// TODO
|
||||||
@@ -217,7 +217,7 @@ public class DSet
|
|||||||
* @return the old entry that was replaced, or null if it was not
|
* @return the old entry that was replaced, or null if it was not
|
||||||
* found (in which case nothing is updated).
|
* found (in which case nothing is updated).
|
||||||
*/
|
*/
|
||||||
protected function update (elem :DSetEntry) :DSetEntry
|
internal function update (elem :DSetEntry) :DSetEntry
|
||||||
{
|
{
|
||||||
var key :Comparable = elem.getKey();
|
var key :Comparable = elem.getKey();
|
||||||
for (var ii :int = 0; ii < _entries.length; ii++) {
|
for (var ii :int = 0; ii < _entries.length; ii++) {
|
||||||
@@ -250,7 +250,7 @@ public class DSet
|
|||||||
// documentation inherited from interface Streamable
|
// documentation inherited from interface Streamable
|
||||||
public function readObject (ins :ObjectInputStream) :void
|
public function readObject (ins :ObjectInputStream) :void
|
||||||
{
|
{
|
||||||
_entries = ins.readField(Array);
|
_entries = (ins.readObject() as Array);
|
||||||
_entries.length = ins.readInt(); // then read the length and limit it
|
_entries.length = ins.readInt(); // then read the length and limit it
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -31,7 +31,8 @@ public class ElementUpdatedEvent extends NamedEvent
|
|||||||
* @param index the index in the array of the updated element.
|
* @param index the index in the array of the updated element.
|
||||||
*/
|
*/
|
||||||
public function ElementUpdatedEvent (
|
public function ElementUpdatedEvent (
|
||||||
targetOid :int, name :String, value :*, oldValue :*, index :int)
|
targetOid :int, name :String, value :Object, oldValue :Object,
|
||||||
|
index :int)
|
||||||
{
|
{
|
||||||
super(targetOid, name);
|
super(targetOid, name);
|
||||||
_value = value;
|
_value = value;
|
||||||
@@ -42,7 +43,7 @@ public class ElementUpdatedEvent extends NamedEvent
|
|||||||
/**
|
/**
|
||||||
* Returns the new value of the element.
|
* Returns the new value of the element.
|
||||||
*/
|
*/
|
||||||
public function getValue () :*
|
public function getValue () :Object
|
||||||
{
|
{
|
||||||
return _value;
|
return _value;
|
||||||
}
|
}
|
||||||
@@ -51,7 +52,7 @@ public class ElementUpdatedEvent extends NamedEvent
|
|||||||
* Returns the value of the element prior to the application of this
|
* Returns the value of the element prior to the application of this
|
||||||
* event.
|
* event.
|
||||||
*/
|
*/
|
||||||
public function getOldValue () :*
|
public function getOldValue () :Object
|
||||||
{
|
{
|
||||||
return _oldValue;
|
return _oldValue;
|
||||||
}
|
}
|
||||||
@@ -89,12 +90,12 @@ public class ElementUpdatedEvent extends NamedEvent
|
|||||||
public override function readObject (ins :ObjectInputStream) :void
|
public override function readObject (ins :ObjectInputStream) :void
|
||||||
{
|
{
|
||||||
super.readObject(ins);
|
super.readObject(ins);
|
||||||
_value = ins.readObjct();
|
_value = ins.readObject();
|
||||||
_index = ins.readInt();
|
_index = ins.readInt();
|
||||||
}
|
}
|
||||||
|
|
||||||
// documentation inherited
|
// documentation inherited
|
||||||
protected override function notifyListener (listener :*) :void
|
internal override function notifyListener (listener :Object) :void
|
||||||
{
|
{
|
||||||
if (listener is ElementUpdateListener) {
|
if (listener is ElementUpdateListener) {
|
||||||
listener.elementUpdated(this);
|
listener.elementUpdated(this);
|
||||||
@@ -110,8 +111,8 @@ public class ElementUpdatedEvent extends NamedEvent
|
|||||||
buf.append(", index=", _index);
|
buf.append(", index=", _index);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected var _value :*;
|
protected var _value :Object;
|
||||||
protected var _index :int;
|
protected var _index :int;
|
||||||
protected var _oldValue :* = UNSET_OLD_ENTRY;
|
protected var _oldValue :Object = UNSET_OLD_ENTRY;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -54,7 +54,7 @@ public class EntryAddedEvent extends NamedEvent
|
|||||||
}
|
}
|
||||||
|
|
||||||
// documentation inherited
|
// documentation inherited
|
||||||
protected override function notifyListener (listener :*) :void
|
internal override function notifyListener (listener :Object) :void
|
||||||
{
|
{
|
||||||
if (listener is SetListener) {
|
if (listener is SetListener) {
|
||||||
listener.entryAdded(this);
|
listener.entryAdded(this);
|
||||||
@@ -62,7 +62,7 @@ public class EntryAddedEvent extends NamedEvent
|
|||||||
}
|
}
|
||||||
|
|
||||||
// documentation inherited
|
// documentation inherited
|
||||||
protected override function toStringBuf (buf :StringBuilder)
|
protected override function toStringBuf (buf :StringBuilder) :void
|
||||||
{
|
{
|
||||||
buf.append("ELADD:");
|
buf.append("ELADD:");
|
||||||
super.toStringBuf(buf);
|
super.toStringBuf(buf);
|
||||||
@@ -78,7 +78,7 @@ public class EntryAddedEvent extends NamedEvent
|
|||||||
public override function readObject (ins :ObjectInputStream) :void
|
public override function readObject (ins :ObjectInputStream) :void
|
||||||
{
|
{
|
||||||
super.readObject(ins);
|
super.readObject(ins);
|
||||||
_entry = ins.readObject();
|
_entry = (ins.readObject() as DSetEntry);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected var _entry :DSetEntry;
|
protected var _entry :DSetEntry;
|
||||||
|
|||||||
@@ -66,7 +66,7 @@ public class EntryRemovedEvent extends NamedEvent
|
|||||||
if (_oldEntry == null) {
|
if (_oldEntry == null) {
|
||||||
// complain if there was actually nothing there
|
// complain if there was actually nothing there
|
||||||
trace("No matching entry to remove [key=" + _key +
|
trace("No matching entry to remove [key=" + _key +
|
||||||
", set=" + set + "].");
|
", set=" + dset + "].");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -74,7 +74,7 @@ public class EntryRemovedEvent extends NamedEvent
|
|||||||
}
|
}
|
||||||
|
|
||||||
// documentation inherited
|
// documentation inherited
|
||||||
protected override function notifyListener (listener :*) :void
|
internal override function notifyListener (listener :Object) :void
|
||||||
{
|
{
|
||||||
if (listener is SetListener) {
|
if (listener is SetListener) {
|
||||||
listener.entryRemoved(this);
|
listener.entryRemoved(this);
|
||||||
@@ -82,7 +82,7 @@ public class EntryRemovedEvent extends NamedEvent
|
|||||||
}
|
}
|
||||||
|
|
||||||
// documentation inherited
|
// documentation inherited
|
||||||
protected override function toStringBuf (buf :StringBuilder)
|
protected override function toStringBuf (buf :StringBuilder) :void
|
||||||
{
|
{
|
||||||
buf.append("ELREM:");
|
buf.append("ELREM:");
|
||||||
super.toStringBuf(buf);
|
super.toStringBuf(buf);
|
||||||
@@ -98,7 +98,7 @@ public class EntryRemovedEvent extends NamedEvent
|
|||||||
public override function readObject (ins :ObjectInputStream) :void
|
public override function readObject (ins :ObjectInputStream) :void
|
||||||
{
|
{
|
||||||
super.readObject(ins);
|
super.readObject(ins);
|
||||||
_key = ins.readObject();
|
_key = (ins.readObject() as Comparable);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected var _key :Comparable;
|
protected var _key :Comparable;
|
||||||
|
|||||||
@@ -73,7 +73,7 @@ public class EntryUpdatedEvent extends NamedEvent
|
|||||||
}
|
}
|
||||||
|
|
||||||
// documentation inherited
|
// documentation inherited
|
||||||
protected override function notifyListener (listener :*) :void
|
internal override function notifyListener (listener :Object) :void
|
||||||
{
|
{
|
||||||
if (listener is SetListener) {
|
if (listener is SetListener) {
|
||||||
listener.entryUpdated(this);
|
listener.entryUpdated(this);
|
||||||
@@ -97,7 +97,7 @@ public class EntryUpdatedEvent extends NamedEvent
|
|||||||
public override function readObject (ins :ObjectInputStream) :void
|
public override function readObject (ins :ObjectInputStream) :void
|
||||||
{
|
{
|
||||||
super.readObject(ins);
|
super.readObject(ins);
|
||||||
_entry = ins.readObject();
|
_entry = (ins.readObject() as DSetEntry);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected var _entry :DSetEntry;
|
protected var _entry :DSetEntry;
|
||||||
|
|||||||
@@ -61,7 +61,7 @@ public class MessageEvent extends NamedEvent
|
|||||||
}
|
}
|
||||||
|
|
||||||
// documentation inherited
|
// documentation inherited
|
||||||
protected override function notifyListener (listener :*) :void
|
internal override function notifyListener (listener :Object) :void
|
||||||
{
|
{
|
||||||
if (listener is MessageListener) {
|
if (listener is MessageListener) {
|
||||||
listener.messageReceived(this);
|
listener.messageReceived(this);
|
||||||
|
|||||||
@@ -47,7 +47,7 @@ public class NamedEvent extends DEvent
|
|||||||
public override function readObject (ins :ObjectInputStream) :void
|
public override function readObject (ins :ObjectInputStream) :void
|
||||||
{
|
{
|
||||||
super.readObject(ins);
|
super.readObject(ins);
|
||||||
_name = ins.readField(String);
|
_name = (ins.readField(String) as String);
|
||||||
}
|
}
|
||||||
|
|
||||||
/** The name of the event. */
|
/** The name of the event. */
|
||||||
|
|||||||
@@ -42,7 +42,7 @@ public class ObjectAddedEvent extends NamedEvent
|
|||||||
/**
|
/**
|
||||||
* Applies this event to the object.
|
* Applies this event to the object.
|
||||||
*/
|
*/
|
||||||
public override function applyToObject (target :DObject) :void
|
public override function applyToObject (target :DObject) :Boolean
|
||||||
//throws ObjectAccessException
|
//throws ObjectAccessException
|
||||||
{
|
{
|
||||||
var list :OidList = target[_name];
|
var list :OidList = target[_name];
|
||||||
@@ -51,7 +51,7 @@ public class ObjectAddedEvent extends NamedEvent
|
|||||||
}
|
}
|
||||||
|
|
||||||
// documentation inherited
|
// documentation inherited
|
||||||
protected override function notifyListener (listener :*) :void
|
internal override function notifyListener (listener :Object) :void
|
||||||
{
|
{
|
||||||
if (listener is OidListListener) {
|
if (listener is OidListListener) {
|
||||||
listener.objectAdded(this);
|
listener.objectAdded(this);
|
||||||
|
|||||||
@@ -53,7 +53,7 @@ public class ObjectDestroyedEvent extends DEvent
|
|||||||
}
|
}
|
||||||
|
|
||||||
// documentation inherited
|
// documentation inherited
|
||||||
protected override function notifyListener (listener :Object) :void
|
internal override function notifyListener (listener :Object) :void
|
||||||
{
|
{
|
||||||
if (listener is ObjectDeathListener) {
|
if (listener is ObjectDeathListener) {
|
||||||
listener.objectDestroyed(this);
|
listener.objectDestroyed(this);
|
||||||
|
|||||||
@@ -74,7 +74,7 @@ public class ObjectRemovedEvent extends NamedEvent
|
|||||||
}
|
}
|
||||||
|
|
||||||
// documentation inherited
|
// documentation inherited
|
||||||
protected override function notifyListener (listener :*) :void
|
internal override function notifyListener (listener :Object) :void
|
||||||
{
|
{
|
||||||
if (listener is OidListListener) {
|
if (listener is OidListListener) {
|
||||||
listener.objectRemoved(this);
|
listener.objectRemoved(this);
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
package com.threerings.presents.dobj {
|
package com.threerings.presents.dobj {
|
||||||
|
|
||||||
import flash.util.trace;
|
import flash.util.trace;
|
||||||
|
import flash.util.StringBuilder;
|
||||||
|
|
||||||
import com.threerings.io.Streamable;
|
import com.threerings.io.Streamable;
|
||||||
|
|
||||||
|
|||||||
@@ -24,8 +24,8 @@ public class AuthRequest extends UpstreamMessage
|
|||||||
public override function readObject (ins :ObjectInputStream) :void
|
public override function readObject (ins :ObjectInputStream) :void
|
||||||
{
|
{
|
||||||
super.readObject(ins);
|
super.readObject(ins);
|
||||||
_creds = ins.readObject();
|
_creds = (ins.readObject() as Credentials);
|
||||||
_version = ins.readField(String);
|
_version = (ins.readField(String) as String);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected var _creds :Credentials;
|
protected var _creds :Credentials;
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ public class AuthResponse extends DownstreamMessage
|
|||||||
public override function readObject (ins :ObjectInputStream) :void
|
public override function readObject (ins :ObjectInputStream) :void
|
||||||
{
|
{
|
||||||
super.readObject(ins);
|
super.readObject(ins);
|
||||||
_data = ins.readObject();
|
_data = (ins.readObject() as AuthResponseData);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected var _data :AuthResponseData;
|
protected var _data :AuthResponseData;
|
||||||
|
|||||||
@@ -25,7 +25,7 @@ public class AuthResponseData extends DObject
|
|||||||
public override function readObject (ins :ObjectInputStream) :void
|
public override function readObject (ins :ObjectInputStream) :void
|
||||||
{
|
{
|
||||||
super.readObject(ins);
|
super.readObject(ins);
|
||||||
code = ins.readField(String);
|
code = (ins.readField(String) as String);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -34,7 +34,7 @@ public class BootstrapData
|
|||||||
public function readObject (ins :ObjectInputStream) :void
|
public function readObject (ins :ObjectInputStream) :void
|
||||||
{
|
{
|
||||||
clientOid = ins.readInt();
|
clientOid = ins.readInt();
|
||||||
services = ins.readObject();
|
services = (ins.readObject() as StreamableArrayList);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ public class BootstrapNotification extends DownstreamMessage
|
|||||||
public override function readObject (ins :ObjectInputStream) :void
|
public override function readObject (ins :ObjectInputStream) :void
|
||||||
{
|
{
|
||||||
super.readObject(ins);
|
super.readObject(ins);
|
||||||
_data = ins.readObject();
|
_data = (ins.readObject() as BootstrapData);
|
||||||
}
|
}
|
||||||
|
|
||||||
/** The data associated with this notification. */
|
/** The data associated with this notification. */
|
||||||
|
|||||||
@@ -22,7 +22,7 @@ public class Credentials
|
|||||||
public function readObject (ins :ObjectInputStream) :void
|
public function readObject (ins :ObjectInputStream) :void
|
||||||
//throws IOError
|
//throws IOError
|
||||||
{
|
{
|
||||||
_username = ins.readObject();
|
_username = (ins.readObject() as Name);
|
||||||
}
|
}
|
||||||
|
|
||||||
/** The username. */
|
/** The username. */
|
||||||
|
|||||||
@@ -40,7 +40,7 @@ public class EventNotification extends DownstreamMessage
|
|||||||
public override function readObject (ins :ObjectInputStream) :void
|
public override function readObject (ins :ObjectInputStream) :void
|
||||||
{
|
{
|
||||||
super.readObject(ins);
|
super.readObject(ins);
|
||||||
_event = ins.readObject();
|
_event = (ins.readObject() as DEvent);
|
||||||
}
|
}
|
||||||
|
|
||||||
/** The event which we are forwarding. */
|
/** The event which we are forwarding. */
|
||||||
|
|||||||
@@ -53,7 +53,7 @@ public class ForwardEventRequest extends UpstreamMessage
|
|||||||
public override function readObject (ins :ObjectInputStream) :void
|
public override function readObject (ins :ObjectInputStream) :void
|
||||||
{
|
{
|
||||||
super.readObject(ins);
|
super.readObject(ins);
|
||||||
_event = ins.readObject();
|
_event = (ins.readObject() as DEvent);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function toString () :String
|
public function toString () :String
|
||||||
|
|||||||
@@ -40,7 +40,7 @@ public class ObjectResponse extends DownstreamMessage
|
|||||||
public override function readObject (ins :ObjectInputStream) :void
|
public override function readObject (ins :ObjectInputStream) :void
|
||||||
{
|
{
|
||||||
super.readObject(ins);
|
super.readObject(ins);
|
||||||
_dobj = ins.readObject();
|
_dobj = (ins.readObject() as DObject);
|
||||||
}
|
}
|
||||||
|
|
||||||
/** The object which is associated with this response. */
|
/** The object which is associated with this response. */
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ public class PingRequest extends UpstreamMessage
|
|||||||
}
|
}
|
||||||
|
|
||||||
// documentation inherited
|
// documentation inherited
|
||||||
public override function writeObject (out :ObjectOutputStream)
|
public override function writeObject (out :ObjectOutputStream) :void
|
||||||
{
|
{
|
||||||
_packStamp = new Date().getTime();
|
_packStamp = new Date().getTime();
|
||||||
super.writeObject(out);
|
super.writeObject(out);
|
||||||
|
|||||||
@@ -28,13 +28,13 @@ public class PongResponse extends DownstreamMessage
|
|||||||
return _unpackStamp;
|
return _unpackStamp;
|
||||||
}
|
}
|
||||||
|
|
||||||
public override function readObject (ins :ObjectInputStream)
|
public override function readObject (ins :ObjectInputStream) :void
|
||||||
{
|
{
|
||||||
_unpackStamp = new Date().getTime();
|
_unpackStamp = new Date().getTime();
|
||||||
super.readObject(ins);
|
super.readObject(ins);
|
||||||
|
|
||||||
// TODO: Figure out how we're really going to cope with longs
|
// TODO: Figure out how we're really going to cope with longs
|
||||||
_packStamp = new long();
|
_packStamp = new long(0);
|
||||||
_packStamp.readObject(ins);
|
_packStamp.readObject(ins);
|
||||||
|
|
||||||
_processDelay = ins.readInt();
|
_processDelay = ins.readInt();
|
||||||
|
|||||||
@@ -42,7 +42,7 @@ public class SubscribeRequest extends UpstreamMessage
|
|||||||
return _oid;
|
return _oid;
|
||||||
}
|
}
|
||||||
|
|
||||||
public override function toString () :String
|
public function toString () :String
|
||||||
{
|
{
|
||||||
return "[type=SUB, msgid=" + messageId + ", oid=" + _oid + "]";
|
return "[type=SUB, msgid=" + messageId + ", oid=" + _oid + "]";
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -47,7 +47,7 @@ public class UnsubscribeRequest extends UpstreamMessage
|
|||||||
return "[type=UNSUB, msgid=" + messageId + ", oid=" + _oid + "]";
|
return "[type=UNSUB, msgid=" + messageId + ", oid=" + _oid + "]";
|
||||||
}
|
}
|
||||||
|
|
||||||
public function writeObject (out :ObjectOutputStream) :void
|
public override function writeObject (out :ObjectOutputStream) :void
|
||||||
{
|
{
|
||||||
super.writeObject(out);
|
super.writeObject(out);
|
||||||
out.writeInt(_oid);
|
out.writeInt(_oid);
|
||||||
|
|||||||
@@ -6,6 +6,8 @@ import com.threerings.io.Streamable;
|
|||||||
import com.threerings.io.ObjectInputStream;
|
import com.threerings.io.ObjectInputStream;
|
||||||
import com.threerings.io.ObjectOutputStream;
|
import com.threerings.io.ObjectOutputStream;
|
||||||
|
|
||||||
|
import com.threerings.util.JavaConstants;
|
||||||
|
|
||||||
public class UpstreamMessage
|
public class UpstreamMessage
|
||||||
implements Streamable
|
implements Streamable
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -2,12 +2,12 @@ package com.threerings.util {
|
|||||||
|
|
||||||
public class ClassUtil
|
public class ClassUtil
|
||||||
{
|
{
|
||||||
public static function getClassName (obj :*) :String
|
public static function getClassName (obj :Object) :String
|
||||||
{
|
{
|
||||||
return flash.util.getQualifiedClassName(obj).replace("::", ".");
|
return flash.util.getQualifiedClassName(obj).replace("::", ".");
|
||||||
}
|
}
|
||||||
|
|
||||||
public static function getClass (obj :*) :Class
|
public static function getClass (obj :Object) :Class
|
||||||
{
|
{
|
||||||
return flash.util.getClassByName(getClassName(obj));
|
return flash.util.getClassByName(getClassName(obj));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -56,7 +56,7 @@ public class Name extends Object
|
|||||||
public function readObject (ins :ObjectInputStream) :void
|
public function readObject (ins :ObjectInputStream) :void
|
||||||
//throws IOError
|
//throws IOError
|
||||||
{
|
{
|
||||||
_name = ins.readField(String);
|
_name = (ins.readField(String) as String);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected function normalize (txt :String) :String
|
protected function normalize (txt :String) :String
|
||||||
|
|||||||
Reference in New Issue
Block a user