tweaks
This commit is contained in:
parent
0b05c9ca5a
commit
0fe6cfd994
|
@ -88,7 +88,7 @@ class WSRelayClient(object):
|
||||||
@m.state()
|
@m.state()
|
||||||
def disconnecting(self): pass
|
def disconnecting(self): pass
|
||||||
@m.state()
|
@m.state()
|
||||||
def disconnecting2(self): pass
|
def cancelling(self): pass
|
||||||
@m.state(terminal=True)
|
@m.state(terminal=True)
|
||||||
def closed(self): pass
|
def closed(self): pass
|
||||||
|
|
||||||
|
@ -100,16 +100,17 @@ class WSRelayClient(object):
|
||||||
@m.input()
|
@m.input()
|
||||||
def d_errback(self, f): pass ; print("in d_errback", f)
|
def d_errback(self, f): pass ; print("in d_errback", f)
|
||||||
@m.input()
|
@m.input()
|
||||||
|
|
||||||
def d_cancel(self, f): pass # XXX remove f
|
def d_cancel(self, f): pass # XXX remove f
|
||||||
@m.input()
|
@m.input()
|
||||||
def onOpen(self, ws): pass ; print("in onOpen")
|
def onOpen(self, ws): pass ; print("in onOpen")
|
||||||
@m.input()
|
@m.input()
|
||||||
def onClose(self, f): pass # XXX maybe remove f
|
def onClose(self, f): pass # XXX p.onClose does cm.onClose("made up failure")
|
||||||
@m.input()
|
@m.input()
|
||||||
def expire(self): pass
|
def expire(self): pass
|
||||||
if ALLOW_CLOSE:
|
if ALLOW_CLOSE:
|
||||||
@m.input()
|
@m.input()
|
||||||
def close(self, f): pass
|
def stop(self, f): pass
|
||||||
|
|
||||||
@m.output()
|
@m.output()
|
||||||
def ep_connect(self):
|
def ep_connect(self):
|
||||||
|
@ -124,8 +125,8 @@ class WSRelayClient(object):
|
||||||
self._wormhole.side, self)
|
self._wormhole.side, self)
|
||||||
self._wormhole.add_connection(self._connection)
|
self._wormhole.add_connection(self._connection)
|
||||||
@m.output()
|
@m.output()
|
||||||
def remove_connection(self, f): # XXX remove f
|
def M_lost(self, f): # XXX remove f
|
||||||
self._wormhole.remove_connection(self._connection)
|
self._wormhole.M_lost(self._connection)
|
||||||
self._connection = None
|
self._connection = None
|
||||||
@m.output()
|
@m.output()
|
||||||
def start_timer(self, f): # XXX remove f
|
def start_timer(self, f): # XXX remove f
|
||||||
|
@ -144,35 +145,38 @@ class WSRelayClient(object):
|
||||||
def notify_fail(self, f):
|
def notify_fail(self, f):
|
||||||
print("notify_fail", f.value)
|
print("notify_fail", f.value)
|
||||||
self._done_d.errback(f)
|
self._done_d.errback(f)
|
||||||
|
@m.output()
|
||||||
|
def MC_stopped(self):
|
||||||
|
pass
|
||||||
|
|
||||||
initial.upon(start, enter=first_time_connecting, outputs=[ep_connect])
|
initial.upon(start, enter=first_time_connecting, outputs=[ep_connect])
|
||||||
first_time_connecting.upon(d_callback, enter=negotiating, outputs=[])
|
first_time_connecting.upon(d_callback, enter=negotiating, outputs=[])
|
||||||
first_time_connecting.upon(d_errback, enter=failed, outputs=[notify_fail])
|
first_time_connecting.upon(d_errback, enter=failed, outputs=[notify_fail])
|
||||||
first_time_connecting.upon(onClose, enter=failed, outputs=[notify_fail])
|
first_time_connecting.upon(onClose, enter=failed, outputs=[notify_fail])
|
||||||
if ALLOW_CLOSE:
|
if ALLOW_CLOSE:
|
||||||
first_time_connecting.upon(close, enter=disconnecting2,
|
first_time_connecting.upon(stop, enter=cancelling,
|
||||||
outputs=[d_cancel])
|
outputs=[d_cancel])
|
||||||
disconnecting2.upon(d_errback, enter=closed, outputs=[])
|
cancelling.upon(d_errback, enter=closed, outputs=[])
|
||||||
|
|
||||||
negotiating.upon(onOpen, enter=open, outputs=[add_connection])
|
negotiating.upon(onOpen, enter=open, outputs=[add_connection])
|
||||||
if ALLOW_CLOSE:
|
if ALLOW_CLOSE:
|
||||||
negotiating.upon(close, enter=disconnecting, outputs=[dropConnection])
|
negotiating.upon(stop, enter=disconnecting, outputs=[dropConnection])
|
||||||
negotiating.upon(onClose, enter=failed, outputs=[notify_fail])
|
negotiating.upon(onClose, enter=failed, outputs=[notify_fail])
|
||||||
|
|
||||||
open.upon(onClose, enter=waiting, outputs=[remove_connection, start_timer])
|
open.upon(onClose, enter=waiting, outputs=[M_lost, start_timer])
|
||||||
if ALLOW_CLOSE:
|
if ALLOW_CLOSE:
|
||||||
open.upon(close, enter=disconnecting,
|
open.upon(stop, enter=disconnecting,
|
||||||
outputs=[dropConnection, remove_connection])
|
outputs=[dropConnection, M_lost])
|
||||||
connecting.upon(d_callback, enter=negotiating, outputs=[])
|
connecting.upon(d_callback, enter=negotiating, outputs=[])
|
||||||
connecting.upon(d_errback, enter=waiting, outputs=[start_timer])
|
connecting.upon(d_errback, enter=waiting, outputs=[start_timer])
|
||||||
connecting.upon(onClose, enter=waiting, outputs=[start_timer])
|
connecting.upon(onClose, enter=waiting, outputs=[start_timer])
|
||||||
if ALLOW_CLOSE:
|
if ALLOW_CLOSE:
|
||||||
connecting.upon(close, enter=disconnecting2, outputs=[d_cancel])
|
connecting.upon(stop, enter=cancelling, outputs=[d_cancel])
|
||||||
|
|
||||||
waiting.upon(expire, enter=connecting, outputs=[ep_connect])
|
waiting.upon(expire, enter=connecting, outputs=[ep_connect])
|
||||||
if ALLOW_CLOSE:
|
if ALLOW_CLOSE:
|
||||||
waiting.upon(close, enter=closed, outputs=[cancel_timer])
|
waiting.upon(stop, enter=closed, outputs=[cancel_timer])
|
||||||
disconnecting.upon(onClose, enter=closed, outputs=[])
|
disconnecting.upon(onClose, enter=closed, outputs=[]) #MC_stopped
|
||||||
|
|
||||||
def tryit(reactor):
|
def tryit(reactor):
|
||||||
cm = WSRelayClient(None, "ws://127.0.0.1:4000/v1", reactor)
|
cm = WSRelayClient(None, "ws://127.0.0.1:4000/v1", reactor)
|
||||||
|
|
Loading…
Reference in New Issue
Block a user