mirror of
https://github.com/fluencelabs/dashboard
synced 2025-05-03 11:42:13 +00:00
trying to add services
This commit is contained in:
parent
c790075a0e
commit
dafa8a61e5
@ -4,11 +4,12 @@ service DashboardEvent("event"):
|
|||||||
collectPeerInfo(peer: PeerId, ident: Info, services: []Service, blueprints: []Blueprint, modules: []Module)
|
collectPeerInfo(peer: PeerId, ident: Info, services: []Service, blueprints: []Blueprint, modules: []Module)
|
||||||
collectServiceInterface(peer: PeerId, serviceId: string, interface: Interface)
|
collectServiceInterface(peer: PeerId, serviceId: string, interface: Interface)
|
||||||
|
|
||||||
-- func collectServiceInterfaces(peer: Peer, services: []Service):
|
func collectServiceInterfaces(peer: PeerId, services: []Service):
|
||||||
-- on peer:
|
on peer:
|
||||||
-- for srv <- services par:
|
for srv <- services par:
|
||||||
-- info <- Srv.get_interface(srv.id)
|
info <- Srv.get_interface(srv.id)
|
||||||
-- DashboardEvent.collectServiceInterface(peer, service.id, info.Interface)
|
on %init_peer_id%:
|
||||||
|
DashboardEvent.collectServiceInterface(peer, srv.id, info.interface)
|
||||||
|
|
||||||
func askAllAndSend(peer: PeerId):
|
func askAllAndSend(peer: PeerId):
|
||||||
on peer:
|
on peer:
|
||||||
@ -17,7 +18,7 @@ func askAllAndSend(peer: PeerId):
|
|||||||
modules <- Dist.list_modules()
|
modules <- Dist.list_modules()
|
||||||
services <- Srv.list()
|
services <- Srv.list()
|
||||||
DashboardEvent.collectPeerInfo(peer, ident, services, blueprints, modules)
|
DashboardEvent.collectPeerInfo(peer, ident, services, blueprints, modules)
|
||||||
-- collectServiceInterfaces(peer, services)
|
collectServiceInterfaces(peer, services)
|
||||||
|
|
||||||
|
|
||||||
func findAndAskNeighboursSchema(relayPeerId: PeerId, clientId: PeerId):
|
func findAndAskNeighboursSchema(relayPeerId: PeerId, clientId: PeerId):
|
||||||
|
@ -19,7 +19,7 @@ limitations under the License.
|
|||||||
import Browser exposing (Document)
|
import Browser exposing (Document)
|
||||||
import Browser.Navigation as Navigation
|
import Browser.Navigation as Navigation
|
||||||
import Config exposing (Flags)
|
import Config exposing (Flags)
|
||||||
import Dict
|
import Dict exposing (Dict)
|
||||||
import Model exposing (Model)
|
import Model exposing (Model)
|
||||||
import Msg exposing (Msg(..))
|
import Msg exposing (Msg(..))
|
||||||
import Route
|
import Route
|
||||||
@ -56,6 +56,7 @@ init flags url key =
|
|||||||
, modules = Dict.empty
|
, modules = Dict.empty
|
||||||
, modulesByHash = Dict.empty
|
, modulesByHash = Dict.empty
|
||||||
, blueprints = Dict.empty
|
, blueprints = Dict.empty
|
||||||
|
, services = Dict.empty
|
||||||
, toggledInterface = Nothing
|
, toggledInterface = Nothing
|
||||||
, knownPeers = flags.knownPeers
|
, knownPeers = flags.knownPeers
|
||||||
, isInitialized = False
|
, isInitialized = False
|
||||||
|
@ -55,6 +55,7 @@ type alias Model =
|
|||||||
, modules : Dict String Module
|
, modules : Dict String Module
|
||||||
, modulesByHash : Dict String Module
|
, modulesByHash : Dict String Module
|
||||||
, blueprints : Dict String Blueprint
|
, blueprints : Dict String Blueprint
|
||||||
|
, services : Dict String Service
|
||||||
, toggledInterface : Maybe String
|
, toggledInterface : Maybe String
|
||||||
, knownPeers : List String
|
, knownPeers : List String
|
||||||
, isInitialized : Bool
|
, isInitialized : Bool
|
||||||
|
35
src/Port.elm
35
src/Port.elm
@ -5,13 +5,20 @@ import Dict exposing (Dict)
|
|||||||
import Json.Encode exposing (Value)
|
import Json.Encode exposing (Value)
|
||||||
import Modules.Model exposing (Module)
|
import Modules.Model exposing (Module)
|
||||||
import Nodes.Model exposing (Identify)
|
import Nodes.Model exposing (Identify)
|
||||||
import Service.Model exposing (Service)
|
import Service.Model exposing (Interface, Service)
|
||||||
|
|
||||||
|
|
||||||
|
type alias ServiceInfo =
|
||||||
|
{ id : String
|
||||||
|
, blueprint_id : String
|
||||||
|
, owner_id : String
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
type alias CollectPeerInfo =
|
type alias CollectPeerInfo =
|
||||||
{ peerId : String
|
{ peerId : String
|
||||||
, identify : Maybe Identify
|
, identify : Maybe Identify
|
||||||
, services : Maybe (List Service)
|
, services : Maybe (List ServiceInfo)
|
||||||
, modules : Maybe (List Module)
|
, modules : Maybe (List Module)
|
||||||
, blueprints : Maybe (List Blueprint)
|
, blueprints : Maybe (List Blueprint)
|
||||||
}
|
}
|
||||||
@ -20,30 +27,10 @@ type alias CollectPeerInfo =
|
|||||||
port collectPeerInfo : (CollectPeerInfo -> msg) -> Sub msg
|
port collectPeerInfo : (CollectPeerInfo -> msg) -> Sub msg
|
||||||
|
|
||||||
|
|
||||||
type alias FunctionSignature =
|
|
||||||
{ arguments : List String
|
|
||||||
, name : String
|
|
||||||
, output_types : List String
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
type alias RecordType =
|
|
||||||
{ fields : List String
|
|
||||||
, id : Int
|
|
||||||
, name : String
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
type alias ServiceInterface =
|
|
||||||
{ function_signatures : List FunctionSignature
|
|
||||||
, record_types : List RecordType
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
type alias CollectServiceInterface =
|
type alias CollectServiceInterface =
|
||||||
{ blueprint_id : String
|
{ peer_id : String
|
||||||
, service_id : String
|
, service_id : String
|
||||||
, interface : ServiceInterface
|
, interface : Interface
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -25,4 +25,10 @@ type alias Service =
|
|||||||
{ id : String
|
{ id : String
|
||||||
, blueprint_id : String
|
, blueprint_id : String
|
||||||
, owner_id : String
|
, owner_id : String
|
||||||
|
, interface : Maybe Interface
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
setInterface : Interface -> Service -> Service
|
||||||
|
setInterface interface service =
|
||||||
|
{ service | interface = Just interface }
|
||||||
|
@ -27,7 +27,7 @@ import Msg exposing (..)
|
|||||||
import Nodes.Model exposing (Identify)
|
import Nodes.Model exposing (Identify)
|
||||||
import Port exposing (getAll)
|
import Port exposing (getAll)
|
||||||
import Route exposing (getAllCmd)
|
import Route exposing (getAllCmd)
|
||||||
import Service.Model exposing (Service)
|
import Service.Model exposing (Service, setInterface)
|
||||||
import Url
|
import Url
|
||||||
|
|
||||||
|
|
||||||
@ -55,13 +55,34 @@ update msg model =
|
|||||||
Browser.External href ->
|
Browser.External href ->
|
||||||
( model, Nav.load href )
|
( model, Nav.load href )
|
||||||
|
|
||||||
CollectServiceInterface { blueprint_id, service_id, interface } ->
|
CollectServiceInterface { peer_id, service_id, interface } ->
|
||||||
( model, Cmd.none )
|
let
|
||||||
|
service =
|
||||||
|
Dict.get service_id model.services
|
||||||
|
|
||||||
|
updatedServices =
|
||||||
|
Dict.update service_id (Maybe.map (setInterface interface)) model.services
|
||||||
|
|
||||||
|
newModel =
|
||||||
|
{ model | services = updatedServices }
|
||||||
|
in
|
||||||
|
( newModel, Cmd.none )
|
||||||
|
|
||||||
CollectPeerInfo { peerId, identify, services, modules, blueprints } ->
|
CollectPeerInfo { peerId, identify, services, modules, blueprints } ->
|
||||||
let
|
let
|
||||||
|
fromServiceInfo =
|
||||||
|
\si ->
|
||||||
|
{ id = si.id
|
||||||
|
, blueprint_id = si.blueprint_id
|
||||||
|
, owner_id = si.owner_id
|
||||||
|
, interface = Nothing
|
||||||
|
}
|
||||||
|
|
||||||
|
servicesCorrectType =
|
||||||
|
services |> Maybe.map (List.map fromServiceInfo)
|
||||||
|
|
||||||
updated =
|
updated =
|
||||||
Maybe.map4 (updateModel model peerId) identify services modules blueprints
|
Maybe.map4 (updateModel model peerId) identify servicesCorrectType modules blueprints
|
||||||
|
|
||||||
updatedModel =
|
updatedModel =
|
||||||
withDefault model updated
|
withDefault model updated
|
||||||
@ -98,6 +119,9 @@ updateModel model peer identify services modules blueprints =
|
|||||||
data =
|
data =
|
||||||
Maybe.withDefault emptyPeerData (Dict.get peer model.discoveredPeers)
|
Maybe.withDefault emptyPeerData (Dict.get peer model.discoveredPeers)
|
||||||
|
|
||||||
|
servicesDict =
|
||||||
|
services |> List.map (\m -> ( m.id, m )) |> Dict.fromList
|
||||||
|
|
||||||
moduleDict =
|
moduleDict =
|
||||||
modules |> List.map (\m -> ( m.name, m )) |> Dict.fromList
|
modules |> List.map (\m -> ( m.name, m )) |> Dict.fromList
|
||||||
|
|
||||||
@ -117,9 +141,15 @@ updateModel model peer identify services modules blueprints =
|
|||||||
Dict.union blueprintDict model.blueprints
|
Dict.union blueprintDict model.blueprints
|
||||||
|
|
||||||
newData =
|
newData =
|
||||||
{ data | identify = identify, services = services, modules = Dict.keys moduleDict, blueprints = Dict.keys blueprintDict }
|
{ data | identify = identify, modules = Dict.keys moduleDict, blueprints = Dict.keys blueprintDict }
|
||||||
|
|
||||||
updated =
|
updated =
|
||||||
Dict.insert peer newData model.discoveredPeers
|
Dict.insert peer newData model.discoveredPeers
|
||||||
in
|
in
|
||||||
{ model | discoveredPeers = updated, modules = updatedModules, modulesByHash = updatedModulesByHash, blueprints = updatedBlueprints }
|
{ model
|
||||||
|
| discoveredPeers = updated
|
||||||
|
, services = servicesDict
|
||||||
|
, modules = updatedModules
|
||||||
|
, modulesByHash = updatedModulesByHash
|
||||||
|
, blueprints = updatedBlueprints
|
||||||
|
}
|
||||||
|
431
src/_aqua/app.js
431
src/_aqua/app.js
@ -10,6 +10,92 @@ import { RequestFlowBuilder } from '@fluencelabs/fluence/dist/api.unstable';
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
export async function collectServiceInterfaces(client, peer, services) {
|
||||||
|
let request;
|
||||||
|
const promise = new Promise((resolve, reject) => {
|
||||||
|
request = new RequestFlowBuilder()
|
||||||
|
.disableInjections()
|
||||||
|
.withRawScript(
|
||||||
|
`
|
||||||
|
(xor
|
||||||
|
(seq
|
||||||
|
(seq
|
||||||
|
(seq
|
||||||
|
(seq
|
||||||
|
(call %init_peer_id% ("getDataSrv" "-relay-") [] -relay-)
|
||||||
|
(call %init_peer_id% ("getDataSrv" "peer") [] peer)
|
||||||
|
)
|
||||||
|
(call %init_peer_id% ("getDataSrv" "services") [] services)
|
||||||
|
)
|
||||||
|
(call -relay- ("op" "identity") [])
|
||||||
|
)
|
||||||
|
(xor
|
||||||
|
(fold services srv
|
||||||
|
(par
|
||||||
|
(seq
|
||||||
|
(call peer ("srv" "get_interface") [srv.$.id!] info)
|
||||||
|
(xor
|
||||||
|
(call %init_peer_id% ("event" "collectServiceInterface") [peer srv.$.id! info.$.interface!])
|
||||||
|
(seq
|
||||||
|
(call -relay- ("op" "identity") [])
|
||||||
|
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 1])
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(seq
|
||||||
|
(seq
|
||||||
|
(seq
|
||||||
|
(call -relay- ("op" "identity") [])
|
||||||
|
(next srv)
|
||||||
|
)
|
||||||
|
(call -relay- ("op" "identity") [])
|
||||||
|
)
|
||||||
|
(call %init_peer_id% ("op" "identity") [])
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(seq
|
||||||
|
(seq
|
||||||
|
(call -relay- ("op" "identity") [])
|
||||||
|
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 2])
|
||||||
|
)
|
||||||
|
(call -relay- ("op" "identity") [])
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(seq
|
||||||
|
(call -relay- ("op" "identity") [])
|
||||||
|
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 3])
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
|
`,
|
||||||
|
)
|
||||||
|
.configHandler((h) => {
|
||||||
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
|
return client.relayPeerId;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'peer', () => {return peer;});
|
||||||
|
h.on('getDataSrv', 'services', () => {return services;});
|
||||||
|
|
||||||
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
|
// assuming error is the single argument
|
||||||
|
const [err] = args;
|
||||||
|
reject(err);
|
||||||
|
});
|
||||||
|
})
|
||||||
|
.handleScriptError(reject)
|
||||||
|
.handleTimeout(() => {
|
||||||
|
reject('Request timed out for collectServiceInterfaces');
|
||||||
|
})
|
||||||
|
.build();
|
||||||
|
});
|
||||||
|
await client.initiateFlow(request);
|
||||||
|
return Promise.race([promise, Promise.resolve()]);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
export async function askAllAndSend(client, peer) {
|
export async function askAllAndSend(client, peer) {
|
||||||
let request;
|
let request;
|
||||||
const promise = new Promise((resolve, reject) => {
|
const promise = new Promise((resolve, reject) => {
|
||||||
@ -23,33 +109,74 @@ export async function askAllAndSend(client, peer) {
|
|||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
(call %init_peer_id% ("getDataSrv" "-relay-") [] -relay-)
|
(seq
|
||||||
(call %init_peer_id% ("getDataSrv" "peer") [] peer)
|
(seq
|
||||||
|
(call %init_peer_id% ("getDataSrv" "-relay-") [] -relay-)
|
||||||
|
(call %init_peer_id% ("getDataSrv" "peer") [] peer)
|
||||||
|
)
|
||||||
|
(call -relay- ("op" "identity") [])
|
||||||
|
)
|
||||||
|
(xor
|
||||||
|
(seq
|
||||||
|
(seq
|
||||||
|
(seq
|
||||||
|
(call peer ("peer" "identify") [] ident)
|
||||||
|
(call peer ("dist" "list_blueprints") [] blueprints)
|
||||||
|
)
|
||||||
|
(call peer ("dist" "list_modules") [] modules)
|
||||||
|
)
|
||||||
|
(call peer ("srv" "list") [] services)
|
||||||
|
)
|
||||||
|
(seq
|
||||||
|
(call -relay- ("op" "identity") [])
|
||||||
|
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 1])
|
||||||
|
)
|
||||||
|
)
|
||||||
)
|
)
|
||||||
(call -relay- ("op" "identity") [])
|
(call -relay- ("op" "identity") [])
|
||||||
)
|
)
|
||||||
(xor
|
(call %init_peer_id% ("event" "collectPeerInfo") [peer ident services blueprints modules])
|
||||||
(seq
|
|
||||||
(seq
|
|
||||||
(seq
|
|
||||||
(call peer ("peer" "identify") [] ident)
|
|
||||||
(call peer ("dist" "list_blueprints") [] blueprints)
|
|
||||||
)
|
|
||||||
(call peer ("dist" "list_modules") [] modules)
|
|
||||||
)
|
|
||||||
(call peer ("srv" "list") [] services)
|
|
||||||
)
|
|
||||||
(seq
|
|
||||||
(call -relay- ("op" "identity") [])
|
|
||||||
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 1])
|
|
||||||
)
|
|
||||||
)
|
|
||||||
)
|
)
|
||||||
(call -relay- ("op" "identity") [])
|
(call -relay- ("op" "identity") [])
|
||||||
)
|
)
|
||||||
(call %init_peer_id% ("event" "collectPeerInfo") [peer ident services blueprints modules])
|
(xor
|
||||||
|
(fold services srv
|
||||||
|
(par
|
||||||
|
(seq
|
||||||
|
(call peer ("srv" "get_interface") [srv.$.id!] info)
|
||||||
|
(xor
|
||||||
|
(call %init_peer_id% ("event" "collectServiceInterface") [peer srv.$.id! info.$.interface!])
|
||||||
|
(seq
|
||||||
|
(call -relay- ("op" "identity") [])
|
||||||
|
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 2])
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(seq
|
||||||
|
(seq
|
||||||
|
(seq
|
||||||
|
(call -relay- ("op" "identity") [])
|
||||||
|
(next srv)
|
||||||
|
)
|
||||||
|
(call -relay- ("op" "identity") [])
|
||||||
|
)
|
||||||
|
(call %init_peer_id% ("op" "identity") [])
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(seq
|
||||||
|
(seq
|
||||||
|
(call -relay- ("op" "identity") [])
|
||||||
|
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 3])
|
||||||
|
)
|
||||||
|
(call -relay- ("op" "identity") [])
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(seq
|
||||||
|
(call -relay- ("op" "identity") [])
|
||||||
|
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 4])
|
||||||
)
|
)
|
||||||
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 2])
|
|
||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
@ -109,25 +236,60 @@ export async function findAndAskNeighboursSchema(client, relayPeerId, clientId)
|
|||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
(xor
|
(seq
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(call n2 ("peer" "identify") [] ident)
|
(seq
|
||||||
(call n2 ("dist" "list_blueprints") [] blueprints)
|
(seq
|
||||||
|
(call n2 ("peer" "identify") [] ident)
|
||||||
|
(call n2 ("dist" "list_blueprints") [] blueprints)
|
||||||
|
)
|
||||||
|
(call n2 ("dist" "list_modules") [] modules)
|
||||||
|
)
|
||||||
|
(call n2 ("srv" "list") [] services)
|
||||||
|
)
|
||||||
|
(seq
|
||||||
|
(call -relay- ("op" "identity") [])
|
||||||
|
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 1])
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(call -relay- ("op" "identity") [])
|
||||||
|
)
|
||||||
|
(call n ("event" "collectPeerInfo") [n2 ident services blueprints modules])
|
||||||
|
)
|
||||||
|
(xor
|
||||||
|
(fold services srv
|
||||||
|
(par
|
||||||
|
(seq
|
||||||
|
(call n2 ("srv" "get_interface") [srv.$.id!] info)
|
||||||
|
(xor
|
||||||
|
(call %init_peer_id% ("event" "collectServiceInterface") [n2 srv.$.id! info.$.interface!])
|
||||||
|
(seq
|
||||||
|
(call -relay- ("op" "identity") [])
|
||||||
|
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 2])
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(seq
|
||||||
|
(seq
|
||||||
|
(seq
|
||||||
|
(call -relay- ("op" "identity") [])
|
||||||
|
(next srv)
|
||||||
|
)
|
||||||
|
(call -relay- ("op" "identity") [])
|
||||||
|
)
|
||||||
|
(call %init_peer_id% ("op" "identity") [])
|
||||||
)
|
)
|
||||||
(call n2 ("dist" "list_modules") [] modules)
|
|
||||||
)
|
)
|
||||||
(call n2 ("srv" "list") [] services)
|
|
||||||
)
|
)
|
||||||
(seq
|
(seq
|
||||||
(call -relay- ("op" "identity") [])
|
(call -relay- ("op" "identity") [])
|
||||||
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 1])
|
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 3])
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
(call -relay- ("op" "identity") [])
|
|
||||||
)
|
)
|
||||||
(call n ("event" "collectPeerInfo") [n2 ident services blueprints modules])
|
(call -relay- ("op" "identity") [])
|
||||||
)
|
)
|
||||||
(next n2)
|
(next n2)
|
||||||
)
|
)
|
||||||
@ -135,7 +297,7 @@ export async function findAndAskNeighboursSchema(client, relayPeerId, clientId)
|
|||||||
)
|
)
|
||||||
(seq
|
(seq
|
||||||
(call -relay- ("op" "identity") [])
|
(call -relay- ("op" "identity") [])
|
||||||
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 2])
|
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 4])
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
(seq
|
(seq
|
||||||
@ -154,7 +316,7 @@ export async function findAndAskNeighboursSchema(client, relayPeerId, clientId)
|
|||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
(call -relay- ("op" "identity") [])
|
(call -relay- ("op" "identity") [])
|
||||||
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 3])
|
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 5])
|
||||||
)
|
)
|
||||||
(call -relay- ("op" "identity") [])
|
(call -relay- ("op" "identity") [])
|
||||||
)
|
)
|
||||||
@ -162,7 +324,7 @@ export async function findAndAskNeighboursSchema(client, relayPeerId, clientId)
|
|||||||
)
|
)
|
||||||
(seq
|
(seq
|
||||||
(call -relay- ("op" "identity") [])
|
(call -relay- ("op" "identity") [])
|
||||||
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 4])
|
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 6])
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -214,31 +376,6 @@ export async function getAll(client, relayPeerId, knownPeers) {
|
|||||||
(par
|
(par
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
(seq
|
|
||||||
(call -relay- ("op" "identity") [])
|
|
||||||
(xor
|
|
||||||
(seq
|
|
||||||
(seq
|
|
||||||
(seq
|
|
||||||
(call relayPeerId ("peer" "identify") [] ident)
|
|
||||||
(call relayPeerId ("dist" "list_blueprints") [] blueprints)
|
|
||||||
)
|
|
||||||
(call relayPeerId ("dist" "list_modules") [] modules)
|
|
||||||
)
|
|
||||||
(call relayPeerId ("srv" "list") [] services)
|
|
||||||
)
|
|
||||||
(seq
|
|
||||||
(call -relay- ("op" "identity") [])
|
|
||||||
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 1])
|
|
||||||
)
|
|
||||||
)
|
|
||||||
)
|
|
||||||
(call -relay- ("op" "identity") [])
|
|
||||||
)
|
|
||||||
(call %init_peer_id% ("event" "collectPeerInfo") [relayPeerId ident services blueprints modules])
|
|
||||||
)
|
|
||||||
(fold knownPeers peer
|
|
||||||
(par
|
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -247,26 +384,133 @@ export async function getAll(client, relayPeerId, knownPeers) {
|
|||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
(call peer ("peer" "identify") [] ident0)
|
(call relayPeerId ("peer" "identify") [] ident)
|
||||||
(call peer ("dist" "list_blueprints") [] blueprints0)
|
(call relayPeerId ("dist" "list_blueprints") [] blueprints)
|
||||||
)
|
)
|
||||||
(call peer ("dist" "list_modules") [] modules0)
|
(call relayPeerId ("dist" "list_modules") [] modules)
|
||||||
)
|
)
|
||||||
(call peer ("srv" "list") [] services0)
|
(call relayPeerId ("srv" "list") [] services)
|
||||||
)
|
)
|
||||||
|
(seq
|
||||||
|
(call -relay- ("op" "identity") [])
|
||||||
|
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 1])
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(call -relay- ("op" "identity") [])
|
||||||
|
)
|
||||||
|
(call %init_peer_id% ("event" "collectPeerInfo") [relayPeerId ident services blueprints modules])
|
||||||
|
)
|
||||||
|
(call -relay- ("op" "identity") [])
|
||||||
|
)
|
||||||
|
(xor
|
||||||
|
(fold services srv
|
||||||
|
(par
|
||||||
|
(seq
|
||||||
|
(call relayPeerId ("srv" "get_interface") [srv.$.id!] info)
|
||||||
|
(xor
|
||||||
|
(call %init_peer_id% ("event" "collectServiceInterface") [relayPeerId srv.$.id! info.$.interface!])
|
||||||
(seq
|
(seq
|
||||||
(call -relay- ("op" "identity") [])
|
(call -relay- ("op" "identity") [])
|
||||||
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 2])
|
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 2])
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
(call -relay- ("op" "identity") [])
|
(seq
|
||||||
|
(seq
|
||||||
|
(seq
|
||||||
|
(call -relay- ("op" "identity") [])
|
||||||
|
(next srv)
|
||||||
|
)
|
||||||
|
(call -relay- ("op" "identity") [])
|
||||||
|
)
|
||||||
|
(call %init_peer_id% ("op" "identity") [])
|
||||||
|
)
|
||||||
)
|
)
|
||||||
(call %init_peer_id% ("event" "collectPeerInfo") [peer ident0 services0 blueprints0 modules0])
|
|
||||||
)
|
)
|
||||||
(next peer)
|
(seq
|
||||||
|
(call -relay- ("op" "identity") [])
|
||||||
|
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 3])
|
||||||
|
)
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
(seq
|
||||||
|
(seq
|
||||||
|
(seq
|
||||||
|
(call -relay- ("op" "identity") [])
|
||||||
|
(fold knownPeers peer
|
||||||
|
(par
|
||||||
|
(seq
|
||||||
|
(seq
|
||||||
|
(seq
|
||||||
|
(seq
|
||||||
|
(seq
|
||||||
|
(call -relay- ("op" "identity") [])
|
||||||
|
(xor
|
||||||
|
(seq
|
||||||
|
(seq
|
||||||
|
(seq
|
||||||
|
(call peer ("peer" "identify") [] ident0)
|
||||||
|
(call peer ("dist" "list_blueprints") [] blueprints0)
|
||||||
|
)
|
||||||
|
(call peer ("dist" "list_modules") [] modules0)
|
||||||
|
)
|
||||||
|
(call peer ("srv" "list") [] services0)
|
||||||
|
)
|
||||||
|
(seq
|
||||||
|
(call -relay- ("op" "identity") [])
|
||||||
|
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 4])
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(call -relay- ("op" "identity") [])
|
||||||
|
)
|
||||||
|
(call %init_peer_id% ("event" "collectPeerInfo") [peer ident0 services0 blueprints0 modules0])
|
||||||
|
)
|
||||||
|
(call -relay- ("op" "identity") [])
|
||||||
|
)
|
||||||
|
(xor
|
||||||
|
(fold services0 srv0
|
||||||
|
(par
|
||||||
|
(seq
|
||||||
|
(call peer ("srv" "get_interface") [srv0.$.id!] info0)
|
||||||
|
(xor
|
||||||
|
(call %init_peer_id% ("event" "collectServiceInterface") [peer srv0.$.id! info0.$.interface!])
|
||||||
|
(seq
|
||||||
|
(call -relay- ("op" "identity") [])
|
||||||
|
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 5])
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(seq
|
||||||
|
(seq
|
||||||
|
(seq
|
||||||
|
(call -relay- ("op" "identity") [])
|
||||||
|
(next srv0)
|
||||||
|
)
|
||||||
|
(call -relay- ("op" "identity") [])
|
||||||
|
)
|
||||||
|
(call %init_peer_id% ("op" "identity") [])
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(seq
|
||||||
|
(call -relay- ("op" "identity") [])
|
||||||
|
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 6])
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(seq
|
||||||
|
(call -relay- ("op" "identity") [])
|
||||||
|
(next peer)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(call -relay- ("op" "identity") [])
|
||||||
|
)
|
||||||
|
(call %init_peer_id% ("op" "identity") [])
|
||||||
|
)
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
(call -relay- ("op" "identity") [])
|
(call -relay- ("op" "identity") [])
|
||||||
@ -283,25 +527,60 @@ export async function getAll(client, relayPeerId, knownPeers) {
|
|||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
(xor
|
(seq
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(call n2 ("peer" "identify") [] ident1)
|
(seq
|
||||||
(call n2 ("dist" "list_blueprints") [] blueprints1)
|
(seq
|
||||||
|
(call n2 ("peer" "identify") [] ident1)
|
||||||
|
(call n2 ("dist" "list_blueprints") [] blueprints1)
|
||||||
|
)
|
||||||
|
(call n2 ("dist" "list_modules") [] modules1)
|
||||||
|
)
|
||||||
|
(call n2 ("srv" "list") [] services1)
|
||||||
|
)
|
||||||
|
(seq
|
||||||
|
(call -relay- ("op" "identity") [])
|
||||||
|
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 7])
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(call -relay- ("op" "identity") [])
|
||||||
|
)
|
||||||
|
(call n ("event" "collectPeerInfo") [n2 ident1 services1 blueprints1 modules1])
|
||||||
|
)
|
||||||
|
(xor
|
||||||
|
(fold services1 srv1
|
||||||
|
(par
|
||||||
|
(seq
|
||||||
|
(call n2 ("srv" "get_interface") [srv1.$.id!] info1)
|
||||||
|
(xor
|
||||||
|
(call %init_peer_id% ("event" "collectServiceInterface") [n2 srv1.$.id! info1.$.interface!])
|
||||||
|
(seq
|
||||||
|
(call -relay- ("op" "identity") [])
|
||||||
|
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 8])
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(seq
|
||||||
|
(seq
|
||||||
|
(seq
|
||||||
|
(call -relay- ("op" "identity") [])
|
||||||
|
(next srv1)
|
||||||
|
)
|
||||||
|
(call -relay- ("op" "identity") [])
|
||||||
|
)
|
||||||
|
(call %init_peer_id% ("op" "identity") [])
|
||||||
)
|
)
|
||||||
(call n2 ("dist" "list_modules") [] modules1)
|
|
||||||
)
|
)
|
||||||
(call n2 ("srv" "list") [] services1)
|
|
||||||
)
|
)
|
||||||
(seq
|
(seq
|
||||||
(call -relay- ("op" "identity") [])
|
(call -relay- ("op" "identity") [])
|
||||||
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 3])
|
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 9])
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
(call -relay- ("op" "identity") [])
|
|
||||||
)
|
)
|
||||||
(call n ("event" "collectPeerInfo") [n2 ident1 services1 blueprints1 modules1])
|
(call -relay- ("op" "identity") [])
|
||||||
)
|
)
|
||||||
(next n2)
|
(next n2)
|
||||||
)
|
)
|
||||||
@ -309,7 +588,7 @@ export async function getAll(client, relayPeerId, knownPeers) {
|
|||||||
)
|
)
|
||||||
(seq
|
(seq
|
||||||
(call -relay- ("op" "identity") [])
|
(call -relay- ("op" "identity") [])
|
||||||
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 4])
|
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 10])
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
(seq
|
(seq
|
||||||
@ -328,7 +607,7 @@ export async function getAll(client, relayPeerId, knownPeers) {
|
|||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
(call -relay- ("op" "identity") [])
|
(call -relay- ("op" "identity") [])
|
||||||
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 5])
|
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 11])
|
||||||
)
|
)
|
||||||
(call -relay- ("op" "identity") [])
|
(call -relay- ("op" "identity") [])
|
||||||
)
|
)
|
||||||
@ -336,7 +615,7 @@ export async function getAll(client, relayPeerId, knownPeers) {
|
|||||||
)
|
)
|
||||||
(seq
|
(seq
|
||||||
(call -relay- ("op" "identity") [])
|
(call -relay- ("op" "identity") [])
|
||||||
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 6])
|
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 12])
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user