[client] update network view

This commit is contained in:
2018-02-27 22:12:29 +03:00
parent c9698f1f5c
commit 336896b37e
7 changed files with 181 additions and 95 deletions

View File

@@ -1,41 +1,42 @@
package ru.m.connect;
import promhx.Promise;
import haxework.dispath.IDispatcher;
import haxe.io.Bytes;
import hxsignal.impl.Signal1;
import promhx.Promise;
import protohx.Message;
interface IConnection {
public var connected(default,null):Bool;
public var handler(default,default):IDispatcher<IConnectionHandler>;
public var packetHandler(default,default):IDispatcher<IPacketHandler>;
public var connected(default, null):Bool;
public var handler(default, default):Signal1<IConnectionHandler>;
public var packetHandler(default, default):Signal1<IPacketHandler>;
public var builder(default,null):IPacketBuilder;
public var builder(default, null):IPacketBuilder;
public function connect():Void;
public function disconnect():Void;
public function send(packet:Message):Void;
public function pushData(bytes:Bytes):Void;
public function connect():Promise<IConnection>;
public function disconnect():Void;
public function send(packet:Message):Void;
public function pushData(bytes:Bytes):Void;
public function receive(packet:Message):Void;
public function receive(packet:Message):Void;
}
interface IConnectionHandler {
public function onConnected():Void;
public function onDisconnected():Void;
public function onError(error:Dynamic):Void;
public function onConnected():Void;
public function onDisconnected():Void;
public function onError(error:Dynamic):Void;
}
interface IPacketHandler {
public function onPacket(packet:Message):Void;
public function onPacket(packet:Message):Void;
}
typedef PacketMeta = {
var family:Int;
var id:Int;
var family:Int;
var id:Int;
}
interface IPacketBuilder {
public function packetMeta(packet:Message):PacketMeta;
public function buildPacket(meta:PacketMeta):Message;
public function packetMeta(packet:Message):PacketMeta;
public function buildPacket(meta:PacketMeta):Message;
}