2021-06-04 13:56:03 +00:00
|
|
|
;;; SPDX-License-Identifier: LGPL-3.0-or-later
|
|
|
|
;;; SPDX-FileCopyrightText: Copyright © 2010-2021 Tony Garnock-Jones <tonyg@leastfixedpoint.com>
|
2021-06-01 15:19:24 +00:00
|
|
|
|
2020-04-27 18:27:48 +00:00
|
|
|
#lang syndicate
|
2019-03-25 11:44:12 +00:00
|
|
|
|
|
|
|
(require "../client.rkt")
|
|
|
|
(require "../wire-protocol.rkt")
|
2019-05-09 10:17:37 +00:00
|
|
|
(require "../internal-protocol.rkt")
|
2019-03-25 11:44:12 +00:00
|
|
|
(require "../protocol.rkt")
|
|
|
|
|
2020-04-27 18:27:48 +00:00
|
|
|
(require syndicate/protocol/credit)
|
2019-05-12 12:07:38 +00:00
|
|
|
|
2020-04-27 18:27:48 +00:00
|
|
|
(require/activate syndicate/distributed/server)
|
2019-03-25 11:44:12 +00:00
|
|
|
|
|
|
|
(spawn #:name 'loopback-client-factory
|
2019-05-05 15:37:03 +00:00
|
|
|
(during/spawn (server-connection ($ address (server-loopback-connection $scope)))
|
2019-03-25 11:44:12 +00:00
|
|
|
#:name address
|
2019-05-07 11:56:22 +00:00
|
|
|
(assert (server-poa address))
|
2019-05-05 15:37:03 +00:00
|
|
|
(on (message (message-server->poa address $p)) (send! (server-packet address p)))
|
2019-05-16 21:28:42 +00:00
|
|
|
(on-start (react
|
|
|
|
(stop-when (asserted (observe (message-poa->server address _)))
|
|
|
|
(react (generic-client-session-facet
|
|
|
|
address
|
|
|
|
scope
|
|
|
|
(lambda (x) (send! (message-poa->server address x))))))))))
|