diff --git a/echo-greeter/aqua-compiled/air/echo.echo.air b/echo-greeter/aqua-compiled/air/echo.echo.air new file mode 100644 index 0000000..5e7d94b --- /dev/null +++ b/echo-greeter/aqua-compiled/air/echo.echo.air @@ -0,0 +1,13 @@ +(xor + (seq + (seq + (seq + (call %init_peer_id% ("getDataSrv" "relay") [] relay) + (call %init_peer_id% ("getDataSrv" "data") [] data) + ) + (call %init_peer_id% ("service-id" "echo") [data] res) + ) + (call %init_peer_id% ("callbackSrv" "response") [res]) + ) + (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error%]) +) diff --git a/echo-greeter/aqua-compiled/air/greeter.greeting.air b/echo-greeter/aqua-compiled/air/greeter.greeting.air new file mode 100644 index 0000000..be3251f --- /dev/null +++ b/echo-greeter/aqua-compiled/air/greeter.greeting.air @@ -0,0 +1,16 @@ +(xor + (seq + (seq + (seq + (seq + (call %init_peer_id% ("getDataSrv" "relay") [] relay) + (call %init_peer_id% ("getDataSrv" "name") [] name) + ) + (call %init_peer_id% ("getDataSrv" "greeter") [] greeter) + ) + (call %init_peer_id% ("service-id" "greeting") [name greeter] res) + ) + (call %init_peer_id% ("callbackSrv" "response") [res]) + ) + (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error%]) +) diff --git a/echo-greeter/aqua-compiled/ts/echo.ts b/echo-greeter/aqua-compiled/ts/echo.ts new file mode 100644 index 0000000..f92a30a --- /dev/null +++ b/echo-greeter/aqua-compiled/ts/echo.ts @@ -0,0 +1,64 @@ +/** + * + * This file is auto-generated. Do not edit manually: changes may be erased. + * Generated by Aqua compiler: https://github.com/fluencelabs/aqua/. + * If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues + * + */ +import { FluenceClient, PeerIdB58 } from '@fluencelabs/fluence'; +import { RequestFlowBuilder } from '@fluencelabs/fluence/dist/api.unstable'; + + + +export async function echo(client: FluenceClient, data: string[]): Promise { + let request; + const promise = new Promise((resolve, reject) => { + request = new RequestFlowBuilder() + .disableInjections() + .withRawScript( + ` +(xor + (seq + (seq + (seq + (call %init_peer_id% ("getDataSrv" "relay") [] relay) + (call %init_peer_id% ("getDataSrv" "data") [] data) + ) + (call %init_peer_id% ("service-id" "echo") [data] res) + ) + (call %init_peer_id% ("callbackSrv" "response") [res]) + ) + (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error%]) +) + + `, + ) + .configHandler((h) => { + h.on('getDataSrv', 'relay', () => { + return client.relayPeerId!; + }); + h.on('getRelayService', 'hasReleay', () => {// Not Used + return client.relayPeerId !== undefined; + }); + h.on('getDataSrv', 'data', () => {return data;}); + h.onEvent('callbackSrv', 'response', (args) => { + const [res] = args; + resolve(res); +}); + + h.onEvent('errorHandlingSrv', 'error', (args) => { + // assuming error is the single argument + const [err] = args; + reject(err); + }); + }) + .handleScriptError(reject) + .handleTimeout(() => { + reject('Request timed out for echo'); + }) + .build(); + }); + await client.initiateFlow(request); + return promise; +} + \ No newline at end of file diff --git a/echo-greeter/aqua-compiled/ts/greeter.ts b/echo-greeter/aqua-compiled/ts/greeter.ts new file mode 100644 index 0000000..3e6d9e3 --- /dev/null +++ b/echo-greeter/aqua-compiled/ts/greeter.ts @@ -0,0 +1,68 @@ +/** + * + * This file is auto-generated. Do not edit manually: changes may be erased. + * Generated by Aqua compiler: https://github.com/fluencelabs/aqua/. + * If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues + * + */ +import { FluenceClient, PeerIdB58 } from '@fluencelabs/fluence'; +import { RequestFlowBuilder } from '@fluencelabs/fluence/dist/api.unstable'; + + + +export async function greeting(client: FluenceClient, name: string, greeter: boolean): Promise { + 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" "name") [] name) + ) + (call %init_peer_id% ("getDataSrv" "greeter") [] greeter) + ) + (call %init_peer_id% ("service-id" "greeting") [name greeter] res) + ) + (call %init_peer_id% ("callbackSrv" "response") [res]) + ) + (call %init_peer_id% ("errorHandlingSrv" "error") [%last_error%]) +) + + `, + ) + .configHandler((h) => { + h.on('getDataSrv', 'relay', () => { + return client.relayPeerId!; + }); + h.on('getRelayService', 'hasReleay', () => {// Not Used + return client.relayPeerId !== undefined; + }); + h.on('getDataSrv', 'name', () => {return name;}); +h.on('getDataSrv', 'greeter', () => {return greeter;}); + h.onEvent('callbackSrv', 'response', (args) => { + const [res] = args; + resolve(res); +}); + + h.onEvent('errorHandlingSrv', 'error', (args) => { + // assuming error is the single argument + const [err] = args; + reject(err); + }); + }) + .handleScriptError(reject) + .handleTimeout(() => { + reject('Request timed out for greeting'); + }) + .build(); + }); + await client.initiateFlow(request); + return promise; +} + \ No newline at end of file diff --git a/echo-greeter/aqua-scripts/echo.aqua b/echo-greeter/aqua-scripts/echo.aqua new file mode 100644 index 0000000..172baa4 --- /dev/null +++ b/echo-greeter/aqua-scripts/echo.aqua @@ -0,0 +1,6 @@ +service Echo("service-id"): + echo: []string -> []string + +func echo(data: []string) -> []string: + res <- Echo.echo(data) + <- res \ No newline at end of file diff --git a/echo-greeter/aqua-scripts/echo_greeter.aqua b/echo-greeter/aqua-scripts/echo_greeter.aqua new file mode 100644 index 0000000..0eac1e1 --- /dev/null +++ b/echo-greeter/aqua-scripts/echo_greeter.aqua @@ -0,0 +1,20 @@ +service Echo("service-id"): + echo: []string -> []string + + +service Greeting("service-id"): + greeting: string, bool -> string + +func seq_echo_greeter(data: []string, name: string, greeter: bool) -> []string: + big_res: []string + echo_res <- Echo.echo(data) + for s <- echo_res: + big_res.append(Greeting.greeting(s, greeter)) + <- big_res + +func par_echo_greeter(data: []string, name: string, greeter: bool) -> []string: + big_res: []string + echo_res <- Echo.echo(data) + for s <- echo_res par: + big_res.append(Greeting.greeting(s, greeter)) + <- big_res \ No newline at end of file diff --git a/echo-greeter/aqua-scripts/greeter.aqua b/echo-greeter/aqua-scripts/greeter.aqua new file mode 100644 index 0000000..e9b3058 --- /dev/null +++ b/echo-greeter/aqua-scripts/greeter.aqua @@ -0,0 +1,7 @@ +service Greeting("service-id"): + greeting: string, bool -> string + -- greeting: string -> string + +func greeting(name: string, greeter:bool) -> string: + res <- Greeting.greeting(name, greeter) + <- res \ No newline at end of file