Rewrite JS SDK examples with release version of libraries

This commit is contained in:
Pavel Murygin
2021-09-08 14:38:40 +03:00
parent 91b1b711aa
commit 17a00d853f
11 changed files with 309 additions and 280 deletions

View File

@ -3,7 +3,7 @@
* 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
* Aqua version: 0.2.2-SNAPSHOT
* Aqua version: 0.3.0-222
*
*/
import { FluencePeer } from "@fluencelabs/fluence";
@ -17,12 +17,12 @@ import {
// Services
export interface CalcDef {
add: (n: number, callParams: CallParams<"n">) => Promise<void> | void;
divide: (n: number, callParams: CallParams<"n">) => Promise<void> | void;
getResult: (callParams: CallParams<null>) => Promise<number> | number;
multiply: (n: number, callParams: CallParams<"n">) => Promise<void> | void;
reset: (callParams: CallParams<null>) => Promise<void> | void;
subtract: (n: number, callParams: CallParams<"n">) => Promise<void> | void;
add: (n: number, callParams: CallParams<"n">) => void;
divide: (n: number, callParams: CallParams<"n">) => void;
getResult: (callParams: CallParams<null>) => number;
multiply: (n: number, callParams: CallParams<"n">) => void;
reset: (callParams: CallParams<null>) => void;
subtract: (n: number, callParams: CallParams<"n">) => void;
}
export function registerCalc(service: CalcDef): void;
@ -59,9 +59,9 @@ export function registerCalc(...args) {
service = args[2];
}
peer.callServiceHandler.use(async (req, resp, next) => {
peer.internals.callServiceHandler.use((req, resp, next) => {
if (req.serviceId !== serviceId) {
await next();
next();
return;
}
@ -73,7 +73,7 @@ export function registerCalc(...args) {
},
};
resp.retCode = ResultCodes.success;
await service.add(req.args[0], callParams);
service.add(req.args[0], callParams);
resp.result = {};
}
@ -85,7 +85,7 @@ export function registerCalc(...args) {
},
};
resp.retCode = ResultCodes.success;
await service.divide(req.args[0], callParams);
service.divide(req.args[0], callParams);
resp.result = {};
}
@ -95,7 +95,7 @@ export function registerCalc(...args) {
tetraplets: {},
};
resp.retCode = ResultCodes.success;
resp.result = await service.getResult(callParams);
resp.result = service.getResult(callParams);
}
if (req.fnName === "multiply") {
@ -106,7 +106,7 @@ export function registerCalc(...args) {
},
};
resp.retCode = ResultCodes.success;
await service.multiply(req.args[0], callParams);
service.multiply(req.args[0], callParams);
resp.result = {};
}
@ -116,7 +116,7 @@ export function registerCalc(...args) {
tetraplets: {},
};
resp.retCode = ResultCodes.success;
await service.reset(callParams);
service.reset(callParams);
resp.result = {};
}
@ -128,93 +128,12 @@ export function registerCalc(...args) {
},
};
resp.retCode = ResultCodes.success;
await service.subtract(req.args[0], callParams);
service.subtract(req.args[0], callParams);
resp.result = {};
}
await next();
next();
});
}
// Functions
export async function demoCalculation(config?: {
ttl?: number;
}): Promise<number>;
export async function demoCalculation(
peer: FluencePeer,
config?: { ttl?: number }
): Promise<number>;
export async function demoCalculation(...args) {
let peer: FluencePeer;
let config;
if (args[0] instanceof FluencePeer) {
peer = args[0];
config = args[1];
} else {
peer = FluencePeer.default;
config = args[0];
}
let request: RequestFlow;
const promise = new Promise<number>((resolve, reject) => {
const r = new RequestFlowBuilder()
.disableInjections()
.withRawScript(
`
(xor
(seq
(seq
(seq
(seq
(seq
(seq
(call %init_peer_id% ("getDataSrv" "-relay-") [] -relay-)
(call %init_peer_id% ("calc" "add") [10])
)
(call %init_peer_id% ("calc" "multiply") [5])
)
(call %init_peer_id% ("calc" "subtract") [8])
)
(call %init_peer_id% ("calc" "divide") [6])
)
(call %init_peer_id% ("calc" "getResult") [] res)
)
(xor
(call %init_peer_id% ("callbackSrv" "response") [res])
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 1])
)
)
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 2])
)
`
)
.configHandler((h) => {
h.on("getDataSrv", "-relay-", async () => {
return peer.connectionInfo.connectedRelays[0] || null;
});
h.onEvent("callbackSrv", "response", async (args) => {
const [res] = args;
resolve(res);
});
h.onEvent("errorHandlingSrv", "error", async (args) => {
const [err] = args;
reject(err);
});
})
.handleScriptError(reject)
.handleTimeout(() => {
reject("Request timed out for demoCalculation");
});
if (config && config.ttl) {
r.withTTL(config.ttl);
}
request = r.build();
});
await peer.initiateFlow(request!);
return promise;
}

View File

@ -0,0 +1,122 @@
/**
*
* 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
* Aqua version: 0.3.0-222
*
*/
import { FluencePeer } from '@fluencelabs/fluence';
import {
ResultCodes,
RequestFlow,
RequestFlowBuilder,
CallParams,
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
// Services
// Functions
export function demoCalculation(config?: {ttl?: number}) : Promise<number>;
export function demoCalculation(peer: FluencePeer, config?: {ttl?: number}) : Promise<number>;
export function demoCalculation(...args) {
let peer: FluencePeer;
let config;
if (args[0] instanceof FluencePeer) {
peer = args[0];
config = args[1];
} else {
peer = FluencePeer.default;
config = args[0];
}
let request: RequestFlow;
const promise = new Promise<number>((resolve, reject) => {
const r = new RequestFlowBuilder()
.disableInjections()
.withRawScript(
`
(xor
(seq
(seq
(seq
(seq
(seq
(seq
(call %init_peer_id% ("getDataSrv" "-relay-") [] -relay-)
(call -relay- ("op" "noop") [])
)
(call "12D3KooWSD5PToNiLQwKDXsu8JSysCwUt8BVUJEqCHcDe7P5h45e" ("op" "noop") [])
)
(xor
(seq
(seq
(seq
(seq
(call "12D3KooWLBkw4Tz8bRoSriy5WEpHyWfU11jEK3b5yCa7FBRDRWH3" ("calc" "add") [10])
(call "12D3KooWLBkw4Tz8bRoSriy5WEpHyWfU11jEK3b5yCa7FBRDRWH3" ("calc" "multiply") [5])
)
(call "12D3KooWLBkw4Tz8bRoSriy5WEpHyWfU11jEK3b5yCa7FBRDRWH3" ("calc" "subtract") [8])
)
(call "12D3KooWLBkw4Tz8bRoSriy5WEpHyWfU11jEK3b5yCa7FBRDRWH3" ("calc" "divide") [6])
)
(call "12D3KooWLBkw4Tz8bRoSriy5WEpHyWfU11jEK3b5yCa7FBRDRWH3" ("calc" "getResult") [] res)
)
(seq
(seq
(seq
(call "12D3KooWSD5PToNiLQwKDXsu8JSysCwUt8BVUJEqCHcDe7P5h45e" ("op" "noop") [])
(call -relay- ("op" "noop") [])
)
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 1])
)
(call -relay- ("op" "noop") [])
)
)
)
(call "12D3KooWSD5PToNiLQwKDXsu8JSysCwUt8BVUJEqCHcDe7P5h45e" ("op" "noop") [])
)
(call -relay- ("op" "noop") [])
)
(xor
(call %init_peer_id% ("callbackSrv" "response") [res])
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 2])
)
)
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 3])
)
`,
)
.configHandler((h) => {
h.on('getDataSrv', '-relay-', () => {
return peer.connectionInfo.connectedRelay ;
});
h.onEvent('callbackSrv', 'response', (args) => {
const [res] = args;
resolve(res);
});
h.onEvent('errorHandlingSrv', 'error', (args) => {
const [err] = args;
reject(err);
});
})
.handleScriptError(reject)
.handleTimeout(() => {
reject('Request timed out for demoCalculation');
})
if(config && config.ttl) {
r.withTTL(config.ttl)
}
request = r.build();
});
peer.internals.initiateFlow(request!);
return promise;
}

View File

@ -49,10 +49,7 @@ async function main() {
console.log("application started");
console.log("peer id is: ", FluencePeer.default.connectionInfo.selfPeerId);
console.log(
"relay is: ",
FluencePeer.default.connectionInfo.connectedRelays[0]
);
console.log("relay is: ", FluencePeer.default.connectionInfo.connectedRelay);
console.log("press any key to continue");
await keypress();