mirror of
https://github.com/fluencelabs/aqua-playground
synced 2025-06-23 10:21:52 +00:00
Update the compiler and JS SDK version to support udpate public JS API (#13)
This commit is contained in:
5030
package-lock.json
generated
5030
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@ -34,7 +34,7 @@
|
|||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@fluencelabs/aqua-dht-ts": "0.1.36",
|
"@fluencelabs/aqua-dht-ts": "0.1.36",
|
||||||
"@fluencelabs/fluence": "0.11.0",
|
"@fluencelabs/fluence": "0.12.0",
|
||||||
"@fluencelabs/fluence-network-environment": "^1.0.10",
|
"@fluencelabs/fluence-network-environment": "^1.0.10",
|
||||||
"deep-equal": "^2.0.5"
|
"deep-equal": "^2.0.5"
|
||||||
},
|
},
|
||||||
|
@ -3,10 +3,10 @@
|
|||||||
* This file is auto-generated. Do not edit manually: changes may be erased.
|
* This file is auto-generated. Do not edit manually: changes may be erased.
|
||||||
* Generated by Aqua compiler: https://github.com/fluencelabs/aqua/.
|
* 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
|
* If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues
|
||||||
* Aqua version: 0.3.0-222
|
* Aqua version: 0.3.0-SNAPSHOT
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence, FluencePeer } from '@fluencelabs/fluence';
|
||||||
import {
|
import {
|
||||||
ResultCodes,
|
ResultCodes,
|
||||||
RequestFlow,
|
RequestFlow,
|
||||||
@ -25,18 +25,18 @@ export function put_value(
|
|||||||
value: string,
|
value: string,
|
||||||
config?: { ttl?: number },
|
config?: { ttl?: number },
|
||||||
): Promise<string>;
|
): Promise<string>;
|
||||||
export function put_value(...args) {
|
export function put_value(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let initial_peer;
|
let initial_peer: any;
|
||||||
let value;
|
let value: any;
|
||||||
let config;
|
let config: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
initial_peer = args[1];
|
initial_peer = args[1];
|
||||||
value = args[2];
|
value = args[2];
|
||||||
config = args[3];
|
config = args[3];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
initial_peer = args[0];
|
initial_peer = args[0];
|
||||||
value = args[1];
|
value = args[1];
|
||||||
config = args[2];
|
config = args[2];
|
||||||
@ -107,7 +107,7 @@ export function put_value(...args) {
|
|||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay;
|
return peer.getStatus().relayPeerId;
|
||||||
});
|
});
|
||||||
h.on('getDataSrv', 'initial_peer', () => {
|
h.on('getDataSrv', 'initial_peer', () => {
|
||||||
return initial_peer;
|
return initial_peer;
|
||||||
@ -155,15 +155,15 @@ export function registerKeyPutValue(
|
|||||||
service_id: string | null,
|
service_id: string | null,
|
||||||
config?: { ttl?: number },
|
config?: { ttl?: number },
|
||||||
): Promise<string[]>;
|
): Promise<string[]>;
|
||||||
export function registerKeyPutValue(...args) {
|
export function registerKeyPutValue(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let node_id;
|
let node_id: any;
|
||||||
let key;
|
let key: any;
|
||||||
let value;
|
let value: any;
|
||||||
let relay_id;
|
let relay_id: any;
|
||||||
let service_id;
|
let service_id: any;
|
||||||
let config;
|
let config: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
node_id = args[1];
|
node_id = args[1];
|
||||||
key = args[2];
|
key = args[2];
|
||||||
@ -172,7 +172,7 @@ export function registerKeyPutValue(...args) {
|
|||||||
service_id = args[5];
|
service_id = args[5];
|
||||||
config = args[6];
|
config = args[6];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
node_id = args[0];
|
node_id = args[0];
|
||||||
key = args[1];
|
key = args[1];
|
||||||
value = args[2];
|
value = args[2];
|
||||||
@ -252,7 +252,7 @@ export function registerKeyPutValue(...args) {
|
|||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay;
|
return peer.getStatus().relayPeerId;
|
||||||
});
|
});
|
||||||
h.on('getDataSrv', 'node_id', () => {
|
h.on('getDataSrv', 'node_id', () => {
|
||||||
return node_id;
|
return node_id;
|
||||||
@ -299,18 +299,18 @@ export function getNeighbours(
|
|||||||
topic: string,
|
topic: string,
|
||||||
config?: { ttl?: number },
|
config?: { ttl?: number },
|
||||||
): Promise<string[]>;
|
): Promise<string[]>;
|
||||||
export function getNeighbours(...args) {
|
export function getNeighbours(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let node_id;
|
let node_id: any;
|
||||||
let topic;
|
let topic: any;
|
||||||
let config;
|
let config: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
node_id = args[1];
|
node_id = args[1];
|
||||||
topic = args[2];
|
topic = args[2];
|
||||||
config = args[3];
|
config = args[3];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
node_id = args[0];
|
node_id = args[0];
|
||||||
topic = args[1];
|
topic = args[1];
|
||||||
config = args[2];
|
config = args[2];
|
||||||
@ -361,7 +361,7 @@ export function getNeighbours(...args) {
|
|||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay;
|
return peer.getStatus().relayPeerId;
|
||||||
});
|
});
|
||||||
h.on('getDataSrv', 'node_id', () => {
|
h.on('getDataSrv', 'node_id', () => {
|
||||||
return node_id;
|
return node_id;
|
||||||
@ -423,18 +423,18 @@ export function findSubscribers(
|
|||||||
weight: number;
|
weight: number;
|
||||||
}[]
|
}[]
|
||||||
>;
|
>;
|
||||||
export function findSubscribers(...args) {
|
export function findSubscribers(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let node_id;
|
let node_id: any;
|
||||||
let topic;
|
let topic: any;
|
||||||
let config;
|
let config: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
node_id = args[1];
|
node_id = args[1];
|
||||||
topic = args[2];
|
topic = args[2];
|
||||||
config = args[3];
|
config = args[3];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
node_id = args[0];
|
node_id = args[0];
|
||||||
topic = args[1];
|
topic = args[1];
|
||||||
config = args[2];
|
config = args[2];
|
||||||
@ -530,7 +530,7 @@ export function findSubscribers(...args) {
|
|||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay;
|
return peer.getStatus().relayPeerId;
|
||||||
});
|
});
|
||||||
h.on('getDataSrv', 'node_id', () => {
|
h.on('getDataSrv', 'node_id', () => {
|
||||||
return node_id;
|
return node_id;
|
||||||
@ -578,15 +578,15 @@ export function initTopicAndSubscribe(
|
|||||||
service_id: string | null,
|
service_id: string | null,
|
||||||
config?: { ttl?: number },
|
config?: { ttl?: number },
|
||||||
): Promise<void>;
|
): Promise<void>;
|
||||||
export function initTopicAndSubscribe(...args) {
|
export function initTopicAndSubscribe(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let node_id;
|
let node_id: any;
|
||||||
let topic;
|
let topic: any;
|
||||||
let value;
|
let value: any;
|
||||||
let relay_id;
|
let relay_id: any;
|
||||||
let service_id;
|
let service_id: any;
|
||||||
let config;
|
let config: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
node_id = args[1];
|
node_id = args[1];
|
||||||
topic = args[2];
|
topic = args[2];
|
||||||
@ -595,7 +595,7 @@ export function initTopicAndSubscribe(...args) {
|
|||||||
service_id = args[5];
|
service_id = args[5];
|
||||||
config = args[6];
|
config = args[6];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
node_id = args[0];
|
node_id = args[0];
|
||||||
topic = args[1];
|
topic = args[1];
|
||||||
value = args[2];
|
value = args[2];
|
||||||
@ -672,7 +672,7 @@ export function initTopicAndSubscribe(...args) {
|
|||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay;
|
return peer.getStatus().relayPeerId;
|
||||||
});
|
});
|
||||||
h.on('getDataSrv', 'node_id', () => {
|
h.on('getDataSrv', 'node_id', () => {
|
||||||
return node_id;
|
return node_id;
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* This file is auto-generated. Do not edit manually: changes may be erased.
|
* This file is auto-generated. Do not edit manually: changes may be erased.
|
||||||
* Generated by Aqua compiler: https://github.com/fluencelabs/aqua/.
|
* 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
|
* If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues
|
||||||
* Aqua version: 0.3.0-SNAPSHOT
|
* Aqua version: 0.3.0-SNAPSHOT
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence, FluencePeer } from '@fluencelabs/fluence';
|
||||||
import {
|
import {
|
||||||
ResultCodes,
|
ResultCodes,
|
||||||
RequestFlow,
|
RequestFlow,
|
||||||
@ -14,38 +14,41 @@ import {
|
|||||||
CallParams,
|
CallParams,
|
||||||
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
||||||
|
|
||||||
|
|
||||||
// Services
|
// Services
|
||||||
|
|
||||||
export interface OpHaDef {
|
export interface OpHaDef {
|
||||||
array: (a: string, b: string, callParams: CallParams<'a' | 'b'>) => string[];
|
array: (a: string, b: string, callParams: CallParams<'a' | 'b'>) => string[];
|
||||||
identity: (a: string, callParams: CallParams<'a'>) => string;
|
identity: (a: string, callParams: CallParams<'a'>) => string;
|
||||||
}
|
}
|
||||||
|
|
||||||
export function registerOpHa(service: OpHaDef): void;
|
export function registerOpHa(service: OpHaDef): void;
|
||||||
export function registerOpHa(serviceId: string, service: OpHaDef): void;
|
export function registerOpHa(serviceId: string, service: OpHaDef): void;
|
||||||
export function registerOpHa(peer: FluencePeer, service: OpHaDef): void;
|
export function registerOpHa(peer: FluencePeer, service: OpHaDef): void;
|
||||||
export function registerOpHa(peer: FluencePeer, serviceId: string, service: OpHaDef): void;
|
export function registerOpHa(peer: FluencePeer, serviceId: string, service: OpHaDef): void;
|
||||||
export function registerOpHa(...args: any) {
|
export function registerOpHa(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let serviceId: any;
|
let serviceId: any;
|
||||||
let service: any;
|
let service: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof args[0] === 'string') {
|
if (typeof args[0] === 'string') {
|
||||||
serviceId = args[0];
|
serviceId = args[0];
|
||||||
} else if (typeof args[1] === 'string') {
|
} else if (typeof args[1] === 'string') {
|
||||||
serviceId = args[1];
|
serviceId = args[1];
|
||||||
}
|
} else {
|
||||||
else {
|
serviceId = 'op';
|
||||||
serviceId = "op"
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (!(args[0] instanceof FluencePeer) && typeof args[0] === 'object') {
|
// Figuring out which overload is the service.
|
||||||
|
// If the first argument is not Fluence Peer and it is an object, then it can only be the service def
|
||||||
|
// If the first argument is peer, we are checking further. The second argument might either be
|
||||||
|
// an object, that it must be the service object
|
||||||
|
// or a string, which is the service id. In that case the service is the third argument
|
||||||
|
if (!FluencePeer.isInstance(args[0]) && typeof args[0] === 'object') {
|
||||||
service = args[0];
|
service = args[0];
|
||||||
} else if (typeof args[1] === 'object') {
|
} else if (typeof args[1] === 'object') {
|
||||||
service = args[1];
|
service = args[1];
|
||||||
@ -53,71 +56,63 @@ export function registerOpHa(peer: FluencePeer, serviceId: string, service: OpHa
|
|||||||
service = args[2];
|
service = args[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
peer.internals.callServiceHandler.use((req, resp, next) => {
|
peer.internals.callServiceHandler.use((req, resp, next) => {
|
||||||
if (req.serviceId !== serviceId) {
|
if (req.serviceId !== serviceId) {
|
||||||
next();
|
next();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'array') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
a: req.tetraplets[0],b: req.tetraplets[1]
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
resp.result = service.array(req.args[0], req.args[1], callParams)
|
|
||||||
|
|
||||||
}
|
if (req.fnName === 'array') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
|
tetraplets: {
|
||||||
|
a: req.tetraplets[0],
|
||||||
|
b: req.tetraplets[1],
|
||||||
|
},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
resp.result = service.array(req.args[0], req.args[1], callParams);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (req.fnName === 'identity') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
|
tetraplets: {
|
||||||
|
a: req.tetraplets[0],
|
||||||
|
},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
resp.result = service.identity(req.args[0], callParams);
|
||||||
|
}
|
||||||
|
|
||||||
if (req.fnName === 'identity') {
|
next();
|
||||||
|
});
|
||||||
const callParams = {
|
}
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
a: req.tetraplets[0]
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
resp.result = service.identity(req.args[0], callParams)
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
next();
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// Functions
|
// Functions
|
||||||
|
|
||||||
export function doSmth(arg: {value:string}, config?: {ttl?: number}) : Promise<string[]>;
|
export function doSmth(arg: { value: string }, config?: { ttl?: number }): Promise<string[]>;
|
||||||
export function doSmth(peer: FluencePeer, arg: {value:string}, config?: {ttl?: number}) : Promise<string[]>;
|
export function doSmth(peer: FluencePeer, arg: { value: string }, config?: { ttl?: number }): Promise<string[]>;
|
||||||
export function doSmth(...args: any) {
|
export function doSmth(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let arg: any;
|
let arg: any;
|
||||||
let config: any;
|
let config: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
arg = args[1];
|
arg = args[1];
|
||||||
config = args[2];
|
config = args[2];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
arg = args[0];
|
arg = args[0];
|
||||||
config = args[1];
|
config = args[1];
|
||||||
}
|
}
|
||||||
|
|
||||||
let request: RequestFlow;
|
let request: RequestFlow;
|
||||||
const promise = new Promise<string[]>((resolve, reject) => {
|
const promise = new Promise<string[]>((resolve, reject) => {
|
||||||
const r = new RequestFlowBuilder()
|
const r = new RequestFlowBuilder()
|
||||||
.disableInjections()
|
.disableInjections()
|
||||||
.withRawScript(
|
.withRawScript(
|
||||||
`
|
`
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -139,16 +134,18 @@ config = args[1];
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'arg', () => {
|
||||||
|
return arg;
|
||||||
});
|
});
|
||||||
h.on('getDataSrv', 'arg', () => {return arg;});
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
const [res] = args;
|
const [res] = args;
|
||||||
resolve(res);
|
resolve(res);
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -158,13 +155,12 @@ config = args[1];
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for doSmth');
|
reject('Request timed out for doSmth');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* This file is auto-generated. Do not edit manually: changes may be erased.
|
* This file is auto-generated. Do not edit manually: changes may be erased.
|
||||||
* Generated by Aqua compiler: https://github.com/fluencelabs/aqua/.
|
* 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
|
* If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues
|
||||||
* Aqua version: 0.3.0-SNAPSHOT
|
* Aqua version: 0.3.0-SNAPSHOT
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence, FluencePeer } from '@fluencelabs/fluence';
|
||||||
import {
|
import {
|
||||||
ResultCodes,
|
ResultCodes,
|
||||||
RequestFlow,
|
RequestFlow,
|
||||||
@ -14,40 +14,49 @@ import {
|
|||||||
CallParams,
|
CallParams,
|
||||||
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
||||||
|
|
||||||
|
|
||||||
// Services
|
// Services
|
||||||
|
|
||||||
|
|
||||||
// Functions
|
// Functions
|
||||||
|
|
||||||
export function passFunctionAsArg(node: string, str: string, c: (arg0: string, callParams: CallParams<'arg0'>) => string, config?: {ttl?: number}) : Promise<void>;
|
export function passFunctionAsArg(
|
||||||
export function passFunctionAsArg(peer: FluencePeer, node: string, str: string, c: (arg0: string, callParams: CallParams<'arg0'>) => string, config?: {ttl?: number}) : Promise<void>;
|
node: string,
|
||||||
export function passFunctionAsArg(...args: any) {
|
str: string,
|
||||||
let peer: FluencePeer;
|
c: (arg0: string, callParams: CallParams<'arg0'>) => string,
|
||||||
let node: any;
|
config?: { ttl?: number },
|
||||||
let str: any;
|
): Promise<void>;
|
||||||
let c: any;
|
export function passFunctionAsArg(
|
||||||
let config: any;
|
peer: FluencePeer,
|
||||||
if (args[0] instanceof FluencePeer) {
|
node: string,
|
||||||
peer = args[0];
|
str: string,
|
||||||
node = args[1];
|
c: (arg0: string, callParams: CallParams<'arg0'>) => string,
|
||||||
str = args[2];
|
config?: { ttl?: number },
|
||||||
c = args[3];
|
): Promise<void>;
|
||||||
config = args[4];
|
export function passFunctionAsArg(...args: any) {
|
||||||
} else {
|
let peer: FluencePeer;
|
||||||
peer = FluencePeer.default;
|
let node: any;
|
||||||
node = args[0];
|
let str: any;
|
||||||
str = args[1];
|
let c: any;
|
||||||
c = args[2];
|
let config: any;
|
||||||
config = args[3];
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
}
|
peer = args[0];
|
||||||
|
node = args[1];
|
||||||
let request: RequestFlow;
|
str = args[2];
|
||||||
const promise = new Promise<void>((resolve, reject) => {
|
c = args[3];
|
||||||
const r = new RequestFlowBuilder()
|
config = args[4];
|
||||||
.disableInjections()
|
} else {
|
||||||
.withRawScript(
|
peer = Fluence.getPeer();
|
||||||
`
|
node = args[0];
|
||||||
|
str = args[1];
|
||||||
|
c = args[2];
|
||||||
|
config = args[3];
|
||||||
|
}
|
||||||
|
|
||||||
|
let request: RequestFlow;
|
||||||
|
const promise = new Promise<void>((resolve, reject) => {
|
||||||
|
const r = new RequestFlowBuilder()
|
||||||
|
.disableInjections()
|
||||||
|
.withRawScript(
|
||||||
|
`
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -93,33 +102,33 @@ config = args[3];
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'node', () => {
|
||||||
|
return node;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'str', () => {
|
||||||
|
return str;
|
||||||
});
|
});
|
||||||
h.on('getDataSrv', 'node', () => {return node;});
|
|
||||||
h.on('getDataSrv', 'str', () => {return str;});
|
|
||||||
|
|
||||||
h.use((req, resp, next) => {
|
h.use((req, resp, next) => {
|
||||||
if(req.serviceId === 'callbackSrv' && req.fnName === 'c') {
|
if (req.serviceId === 'callbackSrv' && req.fnName === 'c') {
|
||||||
|
const callParams = {
|
||||||
const callParams = {
|
...req.particleContext,
|
||||||
...req.particleContext,
|
tetraplets: {
|
||||||
tetraplets: {
|
arg0: req.tetraplets[0],
|
||||||
arg0: req.tetraplets[0]
|
},
|
||||||
},
|
};
|
||||||
};
|
resp.retCode = ResultCodes.success;
|
||||||
resp.retCode = ResultCodes.success;
|
resp.result = c(req.args[0], callParams);
|
||||||
resp.result = c(req.args[0], callParams)
|
}
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
|
||||||
}
|
h.onEvent('callbackSrv', 'response', (args) => {});
|
||||||
next();
|
|
||||||
});
|
|
||||||
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
|
||||||
|
|
||||||
});
|
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -129,13 +138,12 @@ h.on('getDataSrv', 'str', () => {return str;});
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for passFunctionAsArg');
|
reject('Request timed out for passFunctionAsArg');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return Promise.race([promise, Promise.resolve()]);
|
return Promise.race([promise, Promise.resolve()]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* This file is auto-generated. Do not edit manually: changes may be erased.
|
* This file is auto-generated. Do not edit manually: changes may be erased.
|
||||||
* Generated by Aqua compiler: https://github.com/fluencelabs/aqua/.
|
* 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
|
* If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues
|
||||||
* Aqua version: 0.3.0-SNAPSHOT
|
* Aqua version: 0.3.0-SNAPSHOT
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence, FluencePeer } from '@fluencelabs/fluence';
|
||||||
import {
|
import {
|
||||||
ResultCodes,
|
ResultCodes,
|
||||||
RequestFlow,
|
RequestFlow,
|
||||||
@ -14,37 +14,40 @@ import {
|
|||||||
CallParams,
|
CallParams,
|
||||||
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
||||||
|
|
||||||
|
|
||||||
// Services
|
// Services
|
||||||
|
|
||||||
export interface CoServiceDef {
|
export interface CoServiceDef {
|
||||||
call: (callParams: CallParams<null>) => string;
|
call: (callParams: CallParams<null>) => string;
|
||||||
}
|
}
|
||||||
|
|
||||||
export function registerCoService(service: CoServiceDef): void;
|
export function registerCoService(service: CoServiceDef): void;
|
||||||
export function registerCoService(serviceId: string, service: CoServiceDef): void;
|
export function registerCoService(serviceId: string, service: CoServiceDef): void;
|
||||||
export function registerCoService(peer: FluencePeer, service: CoServiceDef): void;
|
export function registerCoService(peer: FluencePeer, service: CoServiceDef): void;
|
||||||
export function registerCoService(peer: FluencePeer, serviceId: string, service: CoServiceDef): void;
|
export function registerCoService(peer: FluencePeer, serviceId: string, service: CoServiceDef): void;
|
||||||
export function registerCoService(...args: any) {
|
export function registerCoService(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let serviceId: any;
|
let serviceId: any;
|
||||||
let service: any;
|
let service: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof args[0] === 'string') {
|
if (typeof args[0] === 'string') {
|
||||||
serviceId = args[0];
|
serviceId = args[0];
|
||||||
} else if (typeof args[1] === 'string') {
|
} else if (typeof args[1] === 'string') {
|
||||||
serviceId = args[1];
|
serviceId = args[1];
|
||||||
}
|
} else {
|
||||||
else {
|
serviceId = 'coservice-id';
|
||||||
serviceId = "coservice-id"
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (!(args[0] instanceof FluencePeer) && typeof args[0] === 'object') {
|
// Figuring out which overload is the service.
|
||||||
|
// If the first argument is not Fluence Peer and it is an object, then it can only be the service def
|
||||||
|
// If the first argument is peer, we are checking further. The second argument might either be
|
||||||
|
// an object, that it must be the service object
|
||||||
|
// or a string, which is the service id. In that case the service is the third argument
|
||||||
|
if (!FluencePeer.isInstance(args[0]) && typeof args[0] === 'object') {
|
||||||
service = args[0];
|
service = args[0];
|
||||||
} else if (typeof args[1] === 'object') {
|
} else if (typeof args[1] === 'object') {
|
||||||
service = args[1];
|
service = args[1];
|
||||||
@ -52,59 +55,61 @@ export function registerCoService(peer: FluencePeer, serviceId: string, service:
|
|||||||
service = args[2];
|
service = args[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
peer.internals.callServiceHandler.use((req, resp, next) => {
|
peer.internals.callServiceHandler.use((req, resp, next) => {
|
||||||
if (req.serviceId !== serviceId) {
|
if (req.serviceId !== serviceId) {
|
||||||
next();
|
next();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'call') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
resp.result = service.call(callParams)
|
|
||||||
|
|
||||||
}
|
if (req.fnName === 'call') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
next();
|
tetraplets: {},
|
||||||
});
|
};
|
||||||
}
|
resp.retCode = ResultCodes.success;
|
||||||
|
resp.result = service.call(callParams);
|
||||||
|
}
|
||||||
|
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
// Functions
|
// Functions
|
||||||
|
|
||||||
export function coFunc(node: string, c: (arg0: {external_addresses:string[]}, callParams: CallParams<'arg0'>) => void, config?: {ttl?: number}) : Promise<void>;
|
export function coFunc(
|
||||||
export function coFunc(peer: FluencePeer, node: string, c: (arg0: {external_addresses:string[]}, callParams: CallParams<'arg0'>) => void, config?: {ttl?: number}) : Promise<void>;
|
node: string,
|
||||||
export function coFunc(...args: any) {
|
c: (arg0: { external_addresses: string[] }, callParams: CallParams<'arg0'>) => void,
|
||||||
let peer: FluencePeer;
|
config?: { ttl?: number },
|
||||||
let node: any;
|
): Promise<void>;
|
||||||
let c: any;
|
export function coFunc(
|
||||||
let config: any;
|
peer: FluencePeer,
|
||||||
if (args[0] instanceof FluencePeer) {
|
node: string,
|
||||||
peer = args[0];
|
c: (arg0: { external_addresses: string[] }, callParams: CallParams<'arg0'>) => void,
|
||||||
node = args[1];
|
config?: { ttl?: number },
|
||||||
c = args[2];
|
): Promise<void>;
|
||||||
config = args[3];
|
export function coFunc(...args: any) {
|
||||||
} else {
|
let peer: FluencePeer;
|
||||||
peer = FluencePeer.default;
|
let node: any;
|
||||||
node = args[0];
|
let c: any;
|
||||||
c = args[1];
|
let config: any;
|
||||||
config = args[2];
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
}
|
peer = args[0];
|
||||||
|
node = args[1];
|
||||||
let request: RequestFlow;
|
c = args[2];
|
||||||
const promise = new Promise<void>((resolve, reject) => {
|
config = args[3];
|
||||||
const r = new RequestFlowBuilder()
|
} else {
|
||||||
.disableInjections()
|
peer = Fluence.getPeer();
|
||||||
.withRawScript(
|
node = args[0];
|
||||||
`
|
c = args[1];
|
||||||
|
config = args[2];
|
||||||
|
}
|
||||||
|
|
||||||
|
let request: RequestFlow;
|
||||||
|
const promise = new Promise<void>((resolve, reject) => {
|
||||||
|
const r = new RequestFlowBuilder()
|
||||||
|
.disableInjections()
|
||||||
|
.withRawScript(
|
||||||
|
`
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -141,32 +146,31 @@ config = args[2];
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'node', () => {
|
||||||
|
return node;
|
||||||
});
|
});
|
||||||
h.on('getDataSrv', 'node', () => {return node;});
|
|
||||||
|
|
||||||
h.use((req, resp, next) => {
|
h.use((req, resp, next) => {
|
||||||
if(req.serviceId === 'callbackSrv' && req.fnName === 'c') {
|
if (req.serviceId === 'callbackSrv' && req.fnName === 'c') {
|
||||||
|
const callParams = {
|
||||||
const callParams = {
|
...req.particleContext,
|
||||||
...req.particleContext,
|
tetraplets: {
|
||||||
tetraplets: {
|
arg0: req.tetraplets[0],
|
||||||
arg0: req.tetraplets[0]
|
},
|
||||||
},
|
};
|
||||||
};
|
resp.retCode = ResultCodes.success;
|
||||||
resp.retCode = ResultCodes.success;
|
c(req.args[0], callParams);
|
||||||
c(req.args[0], callParams); resp.result = {}
|
resp.result = {};
|
||||||
|
}
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
|
||||||
}
|
h.onEvent('callbackSrv', 'response', (args) => {});
|
||||||
next();
|
|
||||||
});
|
|
||||||
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
|
||||||
|
|
||||||
});
|
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -176,13 +180,12 @@ config = args[2];
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for coFunc');
|
reject('Request timed out for coFunc');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return Promise.race([promise, Promise.resolve()]);
|
return Promise.race([promise, Promise.resolve()]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* This file is auto-generated. Do not edit manually: changes may be erased.
|
* This file is auto-generated. Do not edit manually: changes may be erased.
|
||||||
* Generated by Aqua compiler: https://github.com/fluencelabs/aqua/.
|
* 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
|
* If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues
|
||||||
* Aqua version: 0.3.0-SNAPSHOT
|
* Aqua version: 0.3.0-SNAPSHOT
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence, FluencePeer } from '@fluencelabs/fluence';
|
||||||
import {
|
import {
|
||||||
ResultCodes,
|
ResultCodes,
|
||||||
RequestFlow,
|
RequestFlow,
|
||||||
@ -14,38 +14,41 @@ import {
|
|||||||
CallParams,
|
CallParams,
|
||||||
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
||||||
|
|
||||||
|
|
||||||
// Services
|
// Services
|
||||||
|
|
||||||
export interface TestSDef {
|
export interface TestSDef {
|
||||||
multiline: (a: string, b: string, c: boolean, callParams: CallParams<'a' | 'b' | 'c'>) => string;
|
multiline: (a: string, b: string, c: boolean, callParams: CallParams<'a' | 'b' | 'c'>) => string;
|
||||||
t: (arg0: string, callParams: CallParams<'arg0'>) => string;
|
t: (arg0: string, callParams: CallParams<'arg0'>) => string;
|
||||||
}
|
}
|
||||||
|
|
||||||
export function registerTestS(service: TestSDef): void;
|
export function registerTestS(service: TestSDef): void;
|
||||||
export function registerTestS(serviceId: string, service: TestSDef): void;
|
export function registerTestS(serviceId: string, service: TestSDef): void;
|
||||||
export function registerTestS(peer: FluencePeer, service: TestSDef): void;
|
export function registerTestS(peer: FluencePeer, service: TestSDef): void;
|
||||||
export function registerTestS(peer: FluencePeer, serviceId: string, service: TestSDef): void;
|
export function registerTestS(peer: FluencePeer, serviceId: string, service: TestSDef): void;
|
||||||
export function registerTestS(...args: any) {
|
export function registerTestS(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let serviceId: any;
|
let serviceId: any;
|
||||||
let service: any;
|
let service: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof args[0] === 'string') {
|
if (typeof args[0] === 'string') {
|
||||||
serviceId = args[0];
|
serviceId = args[0];
|
||||||
} else if (typeof args[1] === 'string') {
|
} else if (typeof args[1] === 'string') {
|
||||||
serviceId = args[1];
|
serviceId = args[1];
|
||||||
}
|
} else {
|
||||||
else {
|
serviceId = 'some-id';
|
||||||
serviceId = "some-id"
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (!(args[0] instanceof FluencePeer) && typeof args[0] === 'object') {
|
// Figuring out which overload is the service.
|
||||||
|
// If the first argument is not Fluence Peer and it is an object, then it can only be the service def
|
||||||
|
// If the first argument is peer, we are checking further. The second argument might either be
|
||||||
|
// an object, that it must be the service object
|
||||||
|
// or a string, which is the service id. In that case the service is the third argument
|
||||||
|
if (!FluencePeer.isInstance(args[0]) && typeof args[0] === 'object') {
|
||||||
service = args[0];
|
service = args[0];
|
||||||
} else if (typeof args[1] === 'object') {
|
} else if (typeof args[1] === 'object') {
|
||||||
service = args[1];
|
service = args[1];
|
||||||
@ -53,89 +56,101 @@ export function registerTestS(peer: FluencePeer, serviceId: string, service: Tes
|
|||||||
service = args[2];
|
service = args[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
peer.internals.callServiceHandler.use((req, resp, next) => {
|
peer.internals.callServiceHandler.use((req, resp, next) => {
|
||||||
if (req.serviceId !== serviceId) {
|
if (req.serviceId !== serviceId) {
|
||||||
next();
|
next();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'multiline') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
a: req.tetraplets[0],b: req.tetraplets[1],c: req.tetraplets[2]
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
resp.result = service.multiline(req.args[0], req.args[1], req.args[2], callParams)
|
|
||||||
|
|
||||||
}
|
if (req.fnName === 'multiline') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
|
tetraplets: {
|
||||||
|
a: req.tetraplets[0],
|
||||||
|
b: req.tetraplets[1],
|
||||||
|
c: req.tetraplets[2],
|
||||||
|
},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
resp.result = service.multiline(req.args[0], req.args[1], req.args[2], callParams);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (req.fnName === 't') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
|
tetraplets: {
|
||||||
|
arg0: req.tetraplets[0],
|
||||||
|
},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
resp.result = service.t(req.args[0], callParams);
|
||||||
|
}
|
||||||
|
|
||||||
if (req.fnName === 't') {
|
next();
|
||||||
|
});
|
||||||
const callParams = {
|
}
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
arg0: req.tetraplets[0]
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
resp.result = service.t(req.args[0], callParams)
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
next();
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// Functions
|
// Functions
|
||||||
|
|
||||||
export function doStuff(a: string, b: string, c: boolean, d: boolean, e: string[], g: string[], str: string, config?: {ttl?: number}) : Promise<string[]>;
|
export function doStuff(
|
||||||
export function doStuff(peer: FluencePeer, a: string, b: string, c: boolean, d: boolean, e: string[], g: string[], str: string, config?: {ttl?: number}) : Promise<string[]>;
|
a: string,
|
||||||
export function doStuff(...args: any) {
|
b: string,
|
||||||
let peer: FluencePeer;
|
c: boolean,
|
||||||
let a: any;
|
d: boolean,
|
||||||
let b: any;
|
e: string[],
|
||||||
let c: any;
|
g: string[],
|
||||||
let d: any;
|
str: string,
|
||||||
let e: any;
|
config?: { ttl?: number },
|
||||||
let g: any;
|
): Promise<string[]>;
|
||||||
let str: any;
|
export function doStuff(
|
||||||
let config: any;
|
peer: FluencePeer,
|
||||||
if (args[0] instanceof FluencePeer) {
|
a: string,
|
||||||
peer = args[0];
|
b: string,
|
||||||
a = args[1];
|
c: boolean,
|
||||||
b = args[2];
|
d: boolean,
|
||||||
c = args[3];
|
e: string[],
|
||||||
d = args[4];
|
g: string[],
|
||||||
e = args[5];
|
str: string,
|
||||||
g = args[6];
|
config?: { ttl?: number },
|
||||||
str = args[7];
|
): Promise<string[]>;
|
||||||
config = args[8];
|
export function doStuff(...args: any) {
|
||||||
} else {
|
let peer: FluencePeer;
|
||||||
peer = FluencePeer.default;
|
let a: any;
|
||||||
a = args[0];
|
let b: any;
|
||||||
b = args[1];
|
let c: any;
|
||||||
c = args[2];
|
let d: any;
|
||||||
d = args[3];
|
let e: any;
|
||||||
e = args[4];
|
let g: any;
|
||||||
g = args[5];
|
let str: any;
|
||||||
str = args[6];
|
let config: any;
|
||||||
config = args[7];
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
}
|
peer = args[0];
|
||||||
|
a = args[1];
|
||||||
let request: RequestFlow;
|
b = args[2];
|
||||||
const promise = new Promise<string[]>((resolve, reject) => {
|
c = args[3];
|
||||||
const r = new RequestFlowBuilder()
|
d = args[4];
|
||||||
.disableInjections()
|
e = args[5];
|
||||||
.withRawScript(
|
g = args[6];
|
||||||
`
|
str = args[7];
|
||||||
|
config = args[8];
|
||||||
|
} else {
|
||||||
|
peer = Fluence.getPeer();
|
||||||
|
a = args[0];
|
||||||
|
b = args[1];
|
||||||
|
c = args[2];
|
||||||
|
d = args[3];
|
||||||
|
e = args[4];
|
||||||
|
g = args[5];
|
||||||
|
str = args[6];
|
||||||
|
config = args[7];
|
||||||
|
}
|
||||||
|
|
||||||
|
let request: RequestFlow;
|
||||||
|
const promise = new Promise<string[]>((resolve, reject) => {
|
||||||
|
const r = new RequestFlowBuilder()
|
||||||
|
.disableInjections()
|
||||||
|
.withRawScript(
|
||||||
|
`
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -249,22 +264,36 @@ config = args[7];
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'a', () => {
|
||||||
|
return a;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'b', () => {
|
||||||
|
return b;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'c', () => {
|
||||||
|
return c;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'd', () => {
|
||||||
|
return d;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'e', () => {
|
||||||
|
return e;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'g', () => {
|
||||||
|
return g;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'str', () => {
|
||||||
|
return str;
|
||||||
});
|
});
|
||||||
h.on('getDataSrv', 'a', () => {return a;});
|
|
||||||
h.on('getDataSrv', 'b', () => {return b;});
|
|
||||||
h.on('getDataSrv', 'c', () => {return c;});
|
|
||||||
h.on('getDataSrv', 'd', () => {return d;});
|
|
||||||
h.on('getDataSrv', 'e', () => {return e;});
|
|
||||||
h.on('getDataSrv', 'g', () => {return g;});
|
|
||||||
h.on('getDataSrv', 'str', () => {return str;});
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
const [res] = args;
|
const [res] = args;
|
||||||
resolve(res);
|
resolve(res);
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -274,13 +303,12 @@ h.on('getDataSrv', 'str', () => {return str;});
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for doStuff');
|
reject('Request timed out for doStuff');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* This file is auto-generated. Do not edit manually: changes may be erased.
|
* This file is auto-generated. Do not edit manually: changes may be erased.
|
||||||
* Generated by Aqua compiler: https://github.com/fluencelabs/aqua/.
|
* 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
|
* If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues
|
||||||
* Aqua version: 0.3.0-SNAPSHOT
|
* Aqua version: 0.3.0-SNAPSHOT
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence, FluencePeer } from '@fluencelabs/fluence';
|
||||||
import {
|
import {
|
||||||
ResultCodes,
|
ResultCodes,
|
||||||
RequestFlow,
|
RequestFlow,
|
||||||
@ -14,37 +14,40 @@ import {
|
|||||||
CallParams,
|
CallParams,
|
||||||
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
||||||
|
|
||||||
|
|
||||||
// Services
|
// Services
|
||||||
|
|
||||||
export interface GetterDef {
|
export interface GetterDef {
|
||||||
createStr: (arg0: number, callParams: CallParams<'arg0'>) => string;
|
createStr: (arg0: number, callParams: CallParams<'arg0'>) => string;
|
||||||
}
|
}
|
||||||
|
|
||||||
export function registerGetter(service: GetterDef): void;
|
export function registerGetter(service: GetterDef): void;
|
||||||
export function registerGetter(serviceId: string, service: GetterDef): void;
|
export function registerGetter(serviceId: string, service: GetterDef): void;
|
||||||
export function registerGetter(peer: FluencePeer, service: GetterDef): void;
|
export function registerGetter(peer: FluencePeer, service: GetterDef): void;
|
||||||
export function registerGetter(peer: FluencePeer, serviceId: string, service: GetterDef): void;
|
export function registerGetter(peer: FluencePeer, serviceId: string, service: GetterDef): void;
|
||||||
export function registerGetter(...args: any) {
|
export function registerGetter(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let serviceId: any;
|
let serviceId: any;
|
||||||
let service: any;
|
let service: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof args[0] === 'string') {
|
if (typeof args[0] === 'string') {
|
||||||
serviceId = args[0];
|
serviceId = args[0];
|
||||||
} else if (typeof args[1] === 'string') {
|
} else if (typeof args[1] === 'string') {
|
||||||
serviceId = args[1];
|
serviceId = args[1];
|
||||||
}
|
} else {
|
||||||
else {
|
serviceId = 'test';
|
||||||
serviceId = "test"
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (!(args[0] instanceof FluencePeer) && typeof args[0] === 'object') {
|
// Figuring out which overload is the service.
|
||||||
|
// If the first argument is not Fluence Peer and it is an object, then it can only be the service def
|
||||||
|
// If the first argument is peer, we are checking further. The second argument might either be
|
||||||
|
// an object, that it must be the service object
|
||||||
|
// or a string, which is the service id. In that case the service is the third argument
|
||||||
|
if (!FluencePeer.isInstance(args[0]) && typeof args[0] === 'object') {
|
||||||
service = args[0];
|
service = args[0];
|
||||||
} else if (typeof args[1] === 'object') {
|
} else if (typeof args[1] === 'object') {
|
||||||
service = args[1];
|
service = args[1];
|
||||||
@ -52,61 +55,59 @@ export function registerGetter(peer: FluencePeer, serviceId: string, service: Ge
|
|||||||
service = args[2];
|
service = args[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
peer.internals.callServiceHandler.use((req, resp, next) => {
|
peer.internals.callServiceHandler.use((req, resp, next) => {
|
||||||
if (req.serviceId !== serviceId) {
|
if (req.serviceId !== serviceId) {
|
||||||
next();
|
next();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'createStr') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
arg0: req.tetraplets[0]
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
resp.result = service.createStr(req.args[0], callParams)
|
|
||||||
|
|
||||||
}
|
if (req.fnName === 'createStr') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
next();
|
tetraplets: {
|
||||||
});
|
arg0: req.tetraplets[0],
|
||||||
}
|
},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
resp.result = service.createStr(req.args[0], callParams);
|
||||||
|
}
|
||||||
|
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
export interface OpODef {
|
export interface OpODef {
|
||||||
identity: (arg0: string, callParams: CallParams<'arg0'>) => string;
|
identity: (arg0: string, callParams: CallParams<'arg0'>) => string;
|
||||||
}
|
}
|
||||||
|
|
||||||
export function registerOpO(service: OpODef): void;
|
export function registerOpO(service: OpODef): void;
|
||||||
export function registerOpO(serviceId: string, service: OpODef): void;
|
export function registerOpO(serviceId: string, service: OpODef): void;
|
||||||
export function registerOpO(peer: FluencePeer, service: OpODef): void;
|
export function registerOpO(peer: FluencePeer, service: OpODef): void;
|
||||||
export function registerOpO(peer: FluencePeer, serviceId: string, service: OpODef): void;
|
export function registerOpO(peer: FluencePeer, serviceId: string, service: OpODef): void;
|
||||||
export function registerOpO(...args: any) {
|
export function registerOpO(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let serviceId: any;
|
let serviceId: any;
|
||||||
let service: any;
|
let service: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof args[0] === 'string') {
|
if (typeof args[0] === 'string') {
|
||||||
serviceId = args[0];
|
serviceId = args[0];
|
||||||
} else if (typeof args[1] === 'string') {
|
} else if (typeof args[1] === 'string') {
|
||||||
serviceId = args[1];
|
serviceId = args[1];
|
||||||
}
|
} else {
|
||||||
else {
|
serviceId = 'op';
|
||||||
serviceId = "op"
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (!(args[0] instanceof FluencePeer) && typeof args[0] === 'object') {
|
// Figuring out which overload is the service.
|
||||||
|
// If the first argument is not Fluence Peer and it is an object, then it can only be the service def
|
||||||
|
// If the first argument is peer, we are checking further. The second argument might either be
|
||||||
|
// an object, that it must be the service object
|
||||||
|
// or a string, which is the service id. In that case the service is the third argument
|
||||||
|
if (!FluencePeer.isInstance(args[0]) && typeof args[0] === 'object') {
|
||||||
service = args[0];
|
service = args[0];
|
||||||
} else if (typeof args[1] === 'object') {
|
} else if (typeof args[1] === 'object') {
|
||||||
service = args[1];
|
service = args[1];
|
||||||
@ -114,54 +115,49 @@ export function registerOpO(peer: FluencePeer, serviceId: string, service: OpODe
|
|||||||
service = args[2];
|
service = args[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
peer.internals.callServiceHandler.use((req, resp, next) => {
|
peer.internals.callServiceHandler.use((req, resp, next) => {
|
||||||
if (req.serviceId !== serviceId) {
|
if (req.serviceId !== serviceId) {
|
||||||
next();
|
next();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'identity') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
arg0: req.tetraplets[0]
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
resp.result = service.identity(req.args[0], callParams)
|
|
||||||
|
|
||||||
}
|
if (req.fnName === 'identity') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
next();
|
tetraplets: {
|
||||||
});
|
arg0: req.tetraplets[0],
|
||||||
}
|
},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
resp.result = service.identity(req.args[0], callParams);
|
||||||
|
}
|
||||||
|
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
// Functions
|
// Functions
|
||||||
|
|
||||||
export function callConstant(config?: {ttl?: number}) : Promise<string[]>;
|
export function callConstant(config?: { ttl?: number }): Promise<string[]>;
|
||||||
export function callConstant(peer: FluencePeer, config?: {ttl?: number}) : Promise<string[]>;
|
export function callConstant(peer: FluencePeer, config?: { ttl?: number }): Promise<string[]>;
|
||||||
export function callConstant(...args: any) {
|
export function callConstant(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
|
|
||||||
let config: any;
|
let config: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
config = args[1];
|
config = args[1];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
config = args[0];
|
config = args[0];
|
||||||
}
|
}
|
||||||
|
|
||||||
let request: RequestFlow;
|
let request: RequestFlow;
|
||||||
const promise = new Promise<string[]>((resolve, reject) => {
|
const promise = new Promise<string[]>((resolve, reject) => {
|
||||||
const r = new RequestFlowBuilder()
|
const r = new RequestFlowBuilder()
|
||||||
.disableInjections()
|
.disableInjections()
|
||||||
.withRawScript(
|
.withRawScript(
|
||||||
`
|
`
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -180,16 +176,16 @@ export function registerOpO(peer: FluencePeer, serviceId: string, service: OpODe
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
const [res] = args;
|
const [res] = args;
|
||||||
resolve(res);
|
resolve(res);
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -199,13 +195,12 @@ export function registerOpO(peer: FluencePeer, serviceId: string, service: OpODe
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for callConstant');
|
reject('Request timed out for callConstant');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* This file is auto-generated. Do not edit manually: changes may be erased.
|
* This file is auto-generated. Do not edit manually: changes may be erased.
|
||||||
* Generated by Aqua compiler: https://github.com/fluencelabs/aqua/.
|
* 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
|
* If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues
|
||||||
* Aqua version: 0.3.0-SNAPSHOT
|
* Aqua version: 0.3.0-SNAPSHOT
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence, FluencePeer } from '@fluencelabs/fluence';
|
||||||
import {
|
import {
|
||||||
ResultCodes,
|
ResultCodes,
|
||||||
RequestFlow,
|
RequestFlow,
|
||||||
@ -14,37 +14,40 @@ import {
|
|||||||
CallParams,
|
CallParams,
|
||||||
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
||||||
|
|
||||||
|
|
||||||
// Services
|
// Services
|
||||||
|
|
||||||
export interface NodeIdGetterDef {
|
export interface NodeIdGetterDef {
|
||||||
get: (callParams: CallParams<null>) => {name:string;peerId:string};
|
get: (callParams: CallParams<null>) => { name: string; peerId: string };
|
||||||
}
|
}
|
||||||
|
|
||||||
export function registerNodeIdGetter(service: NodeIdGetterDef): void;
|
export function registerNodeIdGetter(service: NodeIdGetterDef): void;
|
||||||
export function registerNodeIdGetter(serviceId: string, service: NodeIdGetterDef): void;
|
export function registerNodeIdGetter(serviceId: string, service: NodeIdGetterDef): void;
|
||||||
export function registerNodeIdGetter(peer: FluencePeer, service: NodeIdGetterDef): void;
|
export function registerNodeIdGetter(peer: FluencePeer, service: NodeIdGetterDef): void;
|
||||||
export function registerNodeIdGetter(peer: FluencePeer, serviceId: string, service: NodeIdGetterDef): void;
|
export function registerNodeIdGetter(peer: FluencePeer, serviceId: string, service: NodeIdGetterDef): void;
|
||||||
export function registerNodeIdGetter(...args: any) {
|
export function registerNodeIdGetter(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let serviceId: any;
|
let serviceId: any;
|
||||||
let service: any;
|
let service: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof args[0] === 'string') {
|
if (typeof args[0] === 'string') {
|
||||||
serviceId = args[0];
|
serviceId = args[0];
|
||||||
} else if (typeof args[1] === 'string') {
|
} else if (typeof args[1] === 'string') {
|
||||||
serviceId = args[1];
|
serviceId = args[1];
|
||||||
}
|
} else {
|
||||||
else {
|
serviceId = 'somesrv';
|
||||||
serviceId = "somesrv"
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (!(args[0] instanceof FluencePeer) && typeof args[0] === 'object') {
|
// Figuring out which overload is the service.
|
||||||
|
// If the first argument is not Fluence Peer and it is an object, then it can only be the service def
|
||||||
|
// If the first argument is peer, we are checking further. The second argument might either be
|
||||||
|
// an object, that it must be the service object
|
||||||
|
// or a string, which is the service id. In that case the service is the third argument
|
||||||
|
if (!FluencePeer.isInstance(args[0]) && typeof args[0] === 'object') {
|
||||||
service = args[0];
|
service = args[0];
|
||||||
} else if (typeof args[1] === 'object') {
|
} else if (typeof args[1] === 'object') {
|
||||||
service = args[1];
|
service = args[1];
|
||||||
@ -52,54 +55,47 @@ export function registerNodeIdGetter(peer: FluencePeer, serviceId: string, servi
|
|||||||
service = args[2];
|
service = args[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
peer.internals.callServiceHandler.use((req, resp, next) => {
|
peer.internals.callServiceHandler.use((req, resp, next) => {
|
||||||
if (req.serviceId !== serviceId) {
|
if (req.serviceId !== serviceId) {
|
||||||
next();
|
next();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'get') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
resp.result = service.get(callParams)
|
|
||||||
|
|
||||||
}
|
if (req.fnName === 'get') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
next();
|
tetraplets: {},
|
||||||
});
|
};
|
||||||
}
|
resp.retCode = ResultCodes.success;
|
||||||
|
resp.result = service.get(callParams);
|
||||||
|
}
|
||||||
|
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
// Functions
|
// Functions
|
||||||
|
|
||||||
export function getAliasedData(config?: {ttl?: number}) : Promise<string>;
|
export function getAliasedData(config?: { ttl?: number }): Promise<string>;
|
||||||
export function getAliasedData(peer: FluencePeer, config?: {ttl?: number}) : Promise<string>;
|
export function getAliasedData(peer: FluencePeer, config?: { ttl?: number }): Promise<string>;
|
||||||
export function getAliasedData(...args: any) {
|
export function getAliasedData(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
|
|
||||||
let config: any;
|
let config: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
config = args[1];
|
config = args[1];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
config = args[0];
|
config = args[0];
|
||||||
}
|
}
|
||||||
|
|
||||||
let request: RequestFlow;
|
let request: RequestFlow;
|
||||||
const promise = new Promise<string>((resolve, reject) => {
|
const promise = new Promise<string>((resolve, reject) => {
|
||||||
const r = new RequestFlowBuilder()
|
const r = new RequestFlowBuilder()
|
||||||
.disableInjections()
|
.disableInjections()
|
||||||
.withRawScript(
|
.withRawScript(
|
||||||
`
|
`
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -115,16 +111,16 @@ export function registerNodeIdGetter(peer: FluencePeer, serviceId: string, servi
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
const [res] = args;
|
const [res] = args;
|
||||||
resolve(res);
|
resolve(res);
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -134,13 +130,12 @@ export function registerNodeIdGetter(peer: FluencePeer, serviceId: string, servi
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for getAliasedData');
|
reject('Request timed out for getAliasedData');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* This file is auto-generated. Do not edit manually: changes may be erased.
|
* This file is auto-generated. Do not edit manually: changes may be erased.
|
||||||
* Generated by Aqua compiler: https://github.com/fluencelabs/aqua/.
|
* 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
|
* If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues
|
||||||
* Aqua version: 0.3.0-SNAPSHOT
|
* Aqua version: 0.3.0-SNAPSHOT
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence, FluencePeer } from '@fluencelabs/fluence';
|
||||||
import {
|
import {
|
||||||
ResultCodes,
|
ResultCodes,
|
||||||
RequestFlow,
|
RequestFlow,
|
||||||
@ -14,37 +14,40 @@ import {
|
|||||||
CallParams,
|
CallParams,
|
||||||
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
||||||
|
|
||||||
|
|
||||||
// Services
|
// Services
|
||||||
|
|
||||||
export interface PeerDef {
|
export interface PeerDef {
|
||||||
is_connected: (arg0: string, callParams: CallParams<'arg0'>) => boolean;
|
is_connected: (arg0: string, callParams: CallParams<'arg0'>) => boolean;
|
||||||
}
|
}
|
||||||
|
|
||||||
export function registerPeer(service: PeerDef): void;
|
export function registerPeer(service: PeerDef): void;
|
||||||
export function registerPeer(serviceId: string, service: PeerDef): void;
|
export function registerPeer(serviceId: string, service: PeerDef): void;
|
||||||
export function registerPeer(peer: FluencePeer, service: PeerDef): void;
|
export function registerPeer(peer: FluencePeer, service: PeerDef): void;
|
||||||
export function registerPeer(peer: FluencePeer, serviceId: string, service: PeerDef): void;
|
export function registerPeer(peer: FluencePeer, serviceId: string, service: PeerDef): void;
|
||||||
export function registerPeer(...args: any) {
|
export function registerPeer(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let serviceId: any;
|
let serviceId: any;
|
||||||
let service: any;
|
let service: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof args[0] === 'string') {
|
if (typeof args[0] === 'string') {
|
||||||
serviceId = args[0];
|
serviceId = args[0];
|
||||||
} else if (typeof args[1] === 'string') {
|
} else if (typeof args[1] === 'string') {
|
||||||
serviceId = args[1];
|
serviceId = args[1];
|
||||||
}
|
} else {
|
||||||
else {
|
serviceId = 'peer';
|
||||||
serviceId = "peer"
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (!(args[0] instanceof FluencePeer) && typeof args[0] === 'object') {
|
// Figuring out which overload is the service.
|
||||||
|
// If the first argument is not Fluence Peer and it is an object, then it can only be the service def
|
||||||
|
// If the first argument is peer, we are checking further. The second argument might either be
|
||||||
|
// an object, that it must be the service object
|
||||||
|
// or a string, which is the service id. In that case the service is the third argument
|
||||||
|
if (!FluencePeer.isInstance(args[0]) && typeof args[0] === 'object') {
|
||||||
service = args[0];
|
service = args[0];
|
||||||
} else if (typeof args[1] === 'object') {
|
} else if (typeof args[1] === 'object') {
|
||||||
service = args[1];
|
service = args[1];
|
||||||
@ -52,61 +55,59 @@ export function registerPeer(peer: FluencePeer, serviceId: string, service: Peer
|
|||||||
service = args[2];
|
service = args[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
peer.internals.callServiceHandler.use((req, resp, next) => {
|
peer.internals.callServiceHandler.use((req, resp, next) => {
|
||||||
if (req.serviceId !== serviceId) {
|
if (req.serviceId !== serviceId) {
|
||||||
next();
|
next();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'is_connected') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
arg0: req.tetraplets[0]
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
resp.result = service.is_connected(req.args[0], callParams)
|
|
||||||
|
|
||||||
}
|
if (req.fnName === 'is_connected') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
next();
|
tetraplets: {
|
||||||
});
|
arg0: req.tetraplets[0],
|
||||||
}
|
},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
resp.result = service.is_connected(req.args[0], callParams);
|
||||||
|
}
|
||||||
|
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
export interface OpDef {
|
export interface OpDef {
|
||||||
identity: (callParams: CallParams<null>) => void;
|
identity: (callParams: CallParams<null>) => void;
|
||||||
}
|
}
|
||||||
|
|
||||||
export function registerOp(service: OpDef): void;
|
export function registerOp(service: OpDef): void;
|
||||||
export function registerOp(serviceId: string, service: OpDef): void;
|
export function registerOp(serviceId: string, service: OpDef): void;
|
||||||
export function registerOp(peer: FluencePeer, service: OpDef): void;
|
export function registerOp(peer: FluencePeer, service: OpDef): void;
|
||||||
export function registerOp(peer: FluencePeer, serviceId: string, service: OpDef): void;
|
export function registerOp(peer: FluencePeer, serviceId: string, service: OpDef): void;
|
||||||
export function registerOp(...args: any) {
|
export function registerOp(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let serviceId: any;
|
let serviceId: any;
|
||||||
let service: any;
|
let service: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof args[0] === 'string') {
|
if (typeof args[0] === 'string') {
|
||||||
serviceId = args[0];
|
serviceId = args[0];
|
||||||
} else if (typeof args[1] === 'string') {
|
} else if (typeof args[1] === 'string') {
|
||||||
serviceId = args[1];
|
serviceId = args[1];
|
||||||
}
|
} else {
|
||||||
else {
|
serviceId = 'op';
|
||||||
serviceId = "op"
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (!(args[0] instanceof FluencePeer) && typeof args[0] === 'object') {
|
// Figuring out which overload is the service.
|
||||||
|
// If the first argument is not Fluence Peer and it is an object, then it can only be the service def
|
||||||
|
// If the first argument is peer, we are checking further. The second argument might either be
|
||||||
|
// an object, that it must be the service object
|
||||||
|
// or a string, which is the service id. In that case the service is the third argument
|
||||||
|
if (!FluencePeer.isInstance(args[0]) && typeof args[0] === 'object') {
|
||||||
service = args[0];
|
service = args[0];
|
||||||
} else if (typeof args[1] === 'object') {
|
} else if (typeof args[1] === 'object') {
|
||||||
service = args[1];
|
service = args[1];
|
||||||
@ -114,62 +115,59 @@ export function registerOp(peer: FluencePeer, serviceId: string, service: OpDef)
|
|||||||
service = args[2];
|
service = args[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
peer.internals.callServiceHandler.use((req, resp, next) => {
|
peer.internals.callServiceHandler.use((req, resp, next) => {
|
||||||
if (req.serviceId !== serviceId) {
|
if (req.serviceId !== serviceId) {
|
||||||
next();
|
next();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'identity') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
service.identity(callParams); resp.result = {}
|
|
||||||
|
|
||||||
}
|
if (req.fnName === 'identity') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
next();
|
tetraplets: {},
|
||||||
});
|
};
|
||||||
}
|
resp.retCode = ResultCodes.success;
|
||||||
|
service.identity(callParams);
|
||||||
|
resp.result = {};
|
||||||
|
}
|
||||||
|
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
export interface TestDef {
|
export interface TestDef {
|
||||||
doSomething: (callParams: CallParams<null>) => boolean;
|
doSomething: (callParams: CallParams<null>) => boolean;
|
||||||
getUserList: (callParams: CallParams<null>) => {name:string;peer_id:string;relay_id:string}[];
|
getUserList: (callParams: CallParams<null>) => { name: string; peer_id: string; relay_id: string }[];
|
||||||
}
|
}
|
||||||
|
|
||||||
export function registerTest(service: TestDef): void;
|
export function registerTest(service: TestDef): void;
|
||||||
export function registerTest(serviceId: string, service: TestDef): void;
|
export function registerTest(serviceId: string, service: TestDef): void;
|
||||||
export function registerTest(peer: FluencePeer, service: TestDef): void;
|
export function registerTest(peer: FluencePeer, service: TestDef): void;
|
||||||
export function registerTest(peer: FluencePeer, serviceId: string, service: TestDef): void;
|
export function registerTest(peer: FluencePeer, serviceId: string, service: TestDef): void;
|
||||||
export function registerTest(...args: any) {
|
export function registerTest(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let serviceId: any;
|
let serviceId: any;
|
||||||
let service: any;
|
let service: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof args[0] === 'string') {
|
if (typeof args[0] === 'string') {
|
||||||
serviceId = args[0];
|
serviceId = args[0];
|
||||||
} else if (typeof args[1] === 'string') {
|
} else if (typeof args[1] === 'string') {
|
||||||
serviceId = args[1];
|
serviceId = args[1];
|
||||||
}
|
} else {
|
||||||
else {
|
serviceId = 'test';
|
||||||
serviceId = "test"
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (!(args[0] instanceof FluencePeer) && typeof args[0] === 'object') {
|
// Figuring out which overload is the service.
|
||||||
|
// If the first argument is not Fluence Peer and it is an object, then it can only be the service def
|
||||||
|
// If the first argument is peer, we are checking further. The second argument might either be
|
||||||
|
// an object, that it must be the service object
|
||||||
|
// or a string, which is the service id. In that case the service is the third argument
|
||||||
|
if (!FluencePeer.isInstance(args[0]) && typeof args[0] === 'object') {
|
||||||
service = args[0];
|
service = args[0];
|
||||||
} else if (typeof args[1] === 'object') {
|
} else if (typeof args[1] === 'object') {
|
||||||
service = args[1];
|
service = args[1];
|
||||||
@ -177,71 +175,58 @@ export function registerTest(peer: FluencePeer, serviceId: string, service: Test
|
|||||||
service = args[2];
|
service = args[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
peer.internals.callServiceHandler.use((req, resp, next) => {
|
peer.internals.callServiceHandler.use((req, resp, next) => {
|
||||||
if (req.serviceId !== serviceId) {
|
if (req.serviceId !== serviceId) {
|
||||||
next();
|
next();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'doSomething') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
resp.result = service.doSomething(callParams)
|
|
||||||
|
|
||||||
}
|
if (req.fnName === 'doSomething') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
|
tetraplets: {},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
resp.result = service.doSomething(callParams);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (req.fnName === 'getUserList') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
|
tetraplets: {},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
resp.result = service.getUserList(callParams);
|
||||||
|
}
|
||||||
|
|
||||||
if (req.fnName === 'getUserList') {
|
next();
|
||||||
|
});
|
||||||
const callParams = {
|
}
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
resp.result = service.getUserList(callParams)
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
next();
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// Functions
|
// Functions
|
||||||
|
|
||||||
export function betterMessage(relay: string, config?: {ttl?: number}) : Promise<void>;
|
export function betterMessage(relay: string, config?: { ttl?: number }): Promise<void>;
|
||||||
export function betterMessage(peer: FluencePeer, relay: string, config?: {ttl?: number}) : Promise<void>;
|
export function betterMessage(peer: FluencePeer, relay: string, config?: { ttl?: number }): Promise<void>;
|
||||||
export function betterMessage(...args: any) {
|
export function betterMessage(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let relay: any;
|
let relay: any;
|
||||||
let config: any;
|
let config: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
relay = args[1];
|
relay = args[1];
|
||||||
config = args[2];
|
config = args[2];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
relay = args[0];
|
relay = args[0];
|
||||||
config = args[1];
|
config = args[1];
|
||||||
}
|
}
|
||||||
|
|
||||||
let request: RequestFlow;
|
let request: RequestFlow;
|
||||||
const promise = new Promise<void>((resolve, reject) => {
|
const promise = new Promise<void>((resolve, reject) => {
|
||||||
const r = new RequestFlowBuilder()
|
const r = new RequestFlowBuilder()
|
||||||
.disableInjections()
|
.disableInjections()
|
||||||
.withRawScript(
|
.withRawScript(
|
||||||
`
|
`
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -277,15 +262,15 @@ config = args[1];
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
});
|
});
|
||||||
h.on('getDataSrv', 'relay', () => {return relay;});
|
h.on('getDataSrv', 'relay', () => {
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
return relay;
|
||||||
|
});
|
||||||
});
|
h.onEvent('callbackSrv', 'response', (args) => {});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -295,13 +280,12 @@ config = args[1];
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for betterMessage');
|
reject('Request timed out for betterMessage');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return Promise.race([promise, Promise.resolve()]);
|
return Promise.race([promise, Promise.resolve()]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* This file is auto-generated. Do not edit manually: changes may be erased.
|
* This file is auto-generated. Do not edit manually: changes may be erased.
|
||||||
* Generated by Aqua compiler: https://github.com/fluencelabs/aqua/.
|
* 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
|
* If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues
|
||||||
* Aqua version: 0.3.0-SNAPSHOT
|
* Aqua version: 0.3.0-SNAPSHOT
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence, FluencePeer } from '@fluencelabs/fluence';
|
||||||
import {
|
import {
|
||||||
ResultCodes,
|
ResultCodes,
|
||||||
RequestFlow,
|
RequestFlow,
|
||||||
@ -14,37 +14,40 @@ import {
|
|||||||
CallParams,
|
CallParams,
|
||||||
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
||||||
|
|
||||||
|
|
||||||
// Services
|
// Services
|
||||||
|
|
||||||
export interface ReturnDef {
|
export interface ReturnDef {
|
||||||
run: (arg0: {external_addresses:string[]}, callParams: CallParams<'arg0'>) => void;
|
run: (arg0: { external_addresses: string[] }, callParams: CallParams<'arg0'>) => void;
|
||||||
}
|
}
|
||||||
|
|
||||||
export function registerReturn(service: ReturnDef): void;
|
export function registerReturn(service: ReturnDef): void;
|
||||||
export function registerReturn(serviceId: string, service: ReturnDef): void;
|
export function registerReturn(serviceId: string, service: ReturnDef): void;
|
||||||
export function registerReturn(peer: FluencePeer, service: ReturnDef): void;
|
export function registerReturn(peer: FluencePeer, service: ReturnDef): void;
|
||||||
export function registerReturn(peer: FluencePeer, serviceId: string, service: ReturnDef): void;
|
export function registerReturn(peer: FluencePeer, serviceId: string, service: ReturnDef): void;
|
||||||
export function registerReturn(...args: any) {
|
export function registerReturn(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let serviceId: any;
|
let serviceId: any;
|
||||||
let service: any;
|
let service: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof args[0] === 'string') {
|
if (typeof args[0] === 'string') {
|
||||||
serviceId = args[0];
|
serviceId = args[0];
|
||||||
} else if (typeof args[1] === 'string') {
|
} else if (typeof args[1] === 'string') {
|
||||||
serviceId = args[1];
|
serviceId = args[1];
|
||||||
}
|
} else {
|
||||||
else {
|
serviceId = 'returnService';
|
||||||
serviceId = "returnService"
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (!(args[0] instanceof FluencePeer) && typeof args[0] === 'object') {
|
// Figuring out which overload is the service.
|
||||||
|
// If the first argument is not Fluence Peer and it is an object, then it can only be the service def
|
||||||
|
// If the first argument is peer, we are checking further. The second argument might either be
|
||||||
|
// an object, that it must be the service object
|
||||||
|
// or a string, which is the service id. In that case the service is the third argument
|
||||||
|
if (!FluencePeer.isInstance(args[0]) && typeof args[0] === 'object') {
|
||||||
service = args[0];
|
service = args[0];
|
||||||
} else if (typeof args[1] === 'object') {
|
} else if (typeof args[1] === 'object') {
|
||||||
service = args[1];
|
service = args[1];
|
||||||
@ -52,56 +55,52 @@ export function registerReturn(peer: FluencePeer, serviceId: string, service: Re
|
|||||||
service = args[2];
|
service = args[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
peer.internals.callServiceHandler.use((req, resp, next) => {
|
peer.internals.callServiceHandler.use((req, resp, next) => {
|
||||||
if (req.serviceId !== serviceId) {
|
if (req.serviceId !== serviceId) {
|
||||||
next();
|
next();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'run') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
arg0: req.tetraplets[0]
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
service.run(req.args[0], callParams); resp.result = {}
|
|
||||||
|
|
||||||
}
|
if (req.fnName === 'run') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
next();
|
tetraplets: {
|
||||||
});
|
arg0: req.tetraplets[0],
|
||||||
}
|
},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
service.run(req.args[0], callParams);
|
||||||
|
resp.result = {};
|
||||||
|
}
|
||||||
|
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
// Functions
|
// Functions
|
||||||
|
|
||||||
export function test(node: string, config?: {ttl?: number}) : Promise<void>;
|
export function test(node: string, config?: { ttl?: number }): Promise<void>;
|
||||||
export function test(peer: FluencePeer, node: string, config?: {ttl?: number}) : Promise<void>;
|
export function test(peer: FluencePeer, node: string, config?: { ttl?: number }): Promise<void>;
|
||||||
export function test(...args: any) {
|
export function test(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let node: any;
|
let node: any;
|
||||||
let config: any;
|
let config: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
node = args[1];
|
node = args[1];
|
||||||
config = args[2];
|
config = args[2];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
node = args[0];
|
node = args[0];
|
||||||
config = args[1];
|
config = args[1];
|
||||||
}
|
}
|
||||||
|
|
||||||
let request: RequestFlow;
|
let request: RequestFlow;
|
||||||
const promise = new Promise<void>((resolve, reject) => {
|
const promise = new Promise<void>((resolve, reject) => {
|
||||||
const r = new RequestFlowBuilder()
|
const r = new RequestFlowBuilder()
|
||||||
.disableInjections()
|
.disableInjections()
|
||||||
.withRawScript(
|
.withRawScript(
|
||||||
`
|
`
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -129,15 +128,15 @@ config = args[1];
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
});
|
});
|
||||||
h.on('getDataSrv', 'node', () => {return node;});
|
h.on('getDataSrv', 'node', () => {
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
return node;
|
||||||
|
});
|
||||||
});
|
h.onEvent('callbackSrv', 'response', (args) => {});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -147,13 +146,12 @@ config = args[1];
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for test');
|
reject('Request timed out for test');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return Promise.race([promise, Promise.resolve()]);
|
return Promise.race([promise, Promise.resolve()]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* This file is auto-generated. Do not edit manually: changes may be erased.
|
* This file is auto-generated. Do not edit manually: changes may be erased.
|
||||||
* Generated by Aqua compiler: https://github.com/fluencelabs/aqua/.
|
* 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
|
* If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues
|
||||||
* Aqua version: 0.3.0-SNAPSHOT
|
* Aqua version: 0.3.0-SNAPSHOT
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence, FluencePeer } from '@fluencelabs/fluence';
|
||||||
import {
|
import {
|
||||||
ResultCodes,
|
ResultCodes,
|
||||||
RequestFlow,
|
RequestFlow,
|
||||||
@ -14,34 +14,32 @@ import {
|
|||||||
CallParams,
|
CallParams,
|
||||||
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
||||||
|
|
||||||
|
|
||||||
// Services
|
// Services
|
||||||
|
|
||||||
|
|
||||||
// Functions
|
// Functions
|
||||||
|
|
||||||
export function iterateAndPrint(strings: string[], config?: {ttl?: number}) : Promise<void>;
|
export function iterateAndPrint(strings: string[], config?: { ttl?: number }): Promise<void>;
|
||||||
export function iterateAndPrint(peer: FluencePeer, strings: string[], config?: {ttl?: number}) : Promise<void>;
|
export function iterateAndPrint(peer: FluencePeer, strings: string[], config?: { ttl?: number }): Promise<void>;
|
||||||
export function iterateAndPrint(...args: any) {
|
export function iterateAndPrint(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let strings: any;
|
let strings: any;
|
||||||
let config: any;
|
let config: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
strings = args[1];
|
strings = args[1];
|
||||||
config = args[2];
|
config = args[2];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
strings = args[0];
|
strings = args[0];
|
||||||
config = args[1];
|
config = args[1];
|
||||||
}
|
}
|
||||||
|
|
||||||
let request: RequestFlow;
|
let request: RequestFlow;
|
||||||
const promise = new Promise<void>((resolve, reject) => {
|
const promise = new Promise<void>((resolve, reject) => {
|
||||||
const r = new RequestFlowBuilder()
|
const r = new RequestFlowBuilder()
|
||||||
.disableInjections()
|
.disableInjections()
|
||||||
.withRawScript(
|
.withRawScript(
|
||||||
`
|
`
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -59,15 +57,15 @@ config = args[1];
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
});
|
});
|
||||||
h.on('getDataSrv', 'strings', () => {return strings;});
|
h.on('getDataSrv', 'strings', () => {
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
return strings;
|
||||||
|
});
|
||||||
});
|
h.onEvent('callbackSrv', 'response', (args) => {});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -77,43 +75,50 @@ config = args[1];
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for iterateAndPrint');
|
reject('Request timed out for iterateAndPrint');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return Promise.race([promise, Promise.resolve()]);
|
return Promise.race([promise, Promise.resolve()]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
export function iterateAndPrintParallel(
|
||||||
|
nodes: string[],
|
||||||
|
c: (arg0: { external_addresses: string[] }, callParams: CallParams<'arg0'>) => void,
|
||||||
|
config?: { ttl?: number },
|
||||||
|
): Promise<void>;
|
||||||
|
export function iterateAndPrintParallel(
|
||||||
|
peer: FluencePeer,
|
||||||
|
nodes: string[],
|
||||||
|
c: (arg0: { external_addresses: string[] }, callParams: CallParams<'arg0'>) => void,
|
||||||
|
config?: { ttl?: number },
|
||||||
|
): Promise<void>;
|
||||||
|
export function iterateAndPrintParallel(...args: any) {
|
||||||
|
let peer: FluencePeer;
|
||||||
|
let nodes: any;
|
||||||
|
let c: any;
|
||||||
|
let config: any;
|
||||||
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
|
peer = args[0];
|
||||||
|
nodes = args[1];
|
||||||
|
c = args[2];
|
||||||
|
config = args[3];
|
||||||
|
} else {
|
||||||
|
peer = Fluence.getPeer();
|
||||||
|
nodes = args[0];
|
||||||
|
c = args[1];
|
||||||
|
config = args[2];
|
||||||
|
}
|
||||||
|
|
||||||
export function iterateAndPrintParallel(nodes: string[], c: (arg0: {external_addresses:string[]}, callParams: CallParams<'arg0'>) => void, config?: {ttl?: number}) : Promise<void>;
|
let request: RequestFlow;
|
||||||
export function iterateAndPrintParallel(peer: FluencePeer, nodes: string[], c: (arg0: {external_addresses:string[]}, callParams: CallParams<'arg0'>) => void, config?: {ttl?: number}) : Promise<void>;
|
const promise = new Promise<void>((resolve, reject) => {
|
||||||
export function iterateAndPrintParallel(...args: any) {
|
const r = new RequestFlowBuilder()
|
||||||
let peer: FluencePeer;
|
.disableInjections()
|
||||||
let nodes: any;
|
.withRawScript(
|
||||||
let c: any;
|
`
|
||||||
let config: any;
|
|
||||||
if (args[0] instanceof FluencePeer) {
|
|
||||||
peer = args[0];
|
|
||||||
nodes = args[1];
|
|
||||||
c = args[2];
|
|
||||||
config = args[3];
|
|
||||||
} else {
|
|
||||||
peer = FluencePeer.default;
|
|
||||||
nodes = args[0];
|
|
||||||
c = args[1];
|
|
||||||
config = args[2];
|
|
||||||
}
|
|
||||||
|
|
||||||
let request: RequestFlow;
|
|
||||||
const promise = new Promise<void>((resolve, reject) => {
|
|
||||||
const r = new RequestFlowBuilder()
|
|
||||||
.disableInjections()
|
|
||||||
.withRawScript(
|
|
||||||
`
|
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -146,32 +151,31 @@ config = args[2];
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'nodes', () => {
|
||||||
|
return nodes;
|
||||||
});
|
});
|
||||||
h.on('getDataSrv', 'nodes', () => {return nodes;});
|
|
||||||
|
|
||||||
h.use((req, resp, next) => {
|
h.use((req, resp, next) => {
|
||||||
if(req.serviceId === 'callbackSrv' && req.fnName === 'c') {
|
if (req.serviceId === 'callbackSrv' && req.fnName === 'c') {
|
||||||
|
const callParams = {
|
||||||
const callParams = {
|
...req.particleContext,
|
||||||
...req.particleContext,
|
tetraplets: {
|
||||||
tetraplets: {
|
arg0: req.tetraplets[0],
|
||||||
arg0: req.tetraplets[0]
|
},
|
||||||
},
|
};
|
||||||
};
|
resp.retCode = ResultCodes.success;
|
||||||
resp.retCode = ResultCodes.success;
|
c(req.args[0], callParams);
|
||||||
c(req.args[0], callParams); resp.result = {}
|
resp.result = {};
|
||||||
|
}
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
|
||||||
}
|
h.onEvent('callbackSrv', 'response', (args) => {});
|
||||||
next();
|
|
||||||
});
|
|
||||||
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
|
||||||
|
|
||||||
});
|
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -181,13 +185,12 @@ config = args[2];
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for iterateAndPrintParallel');
|
reject('Request timed out for iterateAndPrintParallel');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return Promise.race([promise, Promise.resolve()]);
|
return Promise.race([promise, Promise.resolve()]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* This file is auto-generated. Do not edit manually: changes may be erased.
|
* This file is auto-generated. Do not edit manually: changes may be erased.
|
||||||
* Generated by Aqua compiler: https://github.com/fluencelabs/aqua/.
|
* 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
|
* If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues
|
||||||
* Aqua version: 0.3.0-SNAPSHOT
|
* Aqua version: 0.3.0-SNAPSHOT
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence, FluencePeer } from '@fluencelabs/fluence';
|
||||||
import {
|
import {
|
||||||
ResultCodes,
|
ResultCodes,
|
||||||
RequestFlow,
|
RequestFlow,
|
||||||
@ -14,37 +14,40 @@ import {
|
|||||||
CallParams,
|
CallParams,
|
||||||
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
||||||
|
|
||||||
|
|
||||||
// Services
|
// Services
|
||||||
|
|
||||||
export interface Op2Def {
|
export interface Op2Def {
|
||||||
identity: (s: number, callParams: CallParams<'s'>) => void;
|
identity: (s: number, callParams: CallParams<'s'>) => void;
|
||||||
}
|
}
|
||||||
|
|
||||||
export function registerOp2(service: Op2Def): void;
|
export function registerOp2(service: Op2Def): void;
|
||||||
export function registerOp2(serviceId: string, service: Op2Def): void;
|
export function registerOp2(serviceId: string, service: Op2Def): void;
|
||||||
export function registerOp2(peer: FluencePeer, service: Op2Def): void;
|
export function registerOp2(peer: FluencePeer, service: Op2Def): void;
|
||||||
export function registerOp2(peer: FluencePeer, serviceId: string, service: Op2Def): void;
|
export function registerOp2(peer: FluencePeer, serviceId: string, service: Op2Def): void;
|
||||||
export function registerOp2(...args: any) {
|
export function registerOp2(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let serviceId: any;
|
let serviceId: any;
|
||||||
let service: any;
|
let service: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof args[0] === 'string') {
|
if (typeof args[0] === 'string') {
|
||||||
serviceId = args[0];
|
serviceId = args[0];
|
||||||
} else if (typeof args[1] === 'string') {
|
} else if (typeof args[1] === 'string') {
|
||||||
serviceId = args[1];
|
serviceId = args[1];
|
||||||
}
|
} else {
|
||||||
else {
|
serviceId = 'op';
|
||||||
serviceId = "op"
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (!(args[0] instanceof FluencePeer) && typeof args[0] === 'object') {
|
// Figuring out which overload is the service.
|
||||||
|
// If the first argument is not Fluence Peer and it is an object, then it can only be the service def
|
||||||
|
// If the first argument is peer, we are checking further. The second argument might either be
|
||||||
|
// an object, that it must be the service object
|
||||||
|
// or a string, which is the service id. In that case the service is the third argument
|
||||||
|
if (!FluencePeer.isInstance(args[0]) && typeof args[0] === 'object') {
|
||||||
service = args[0];
|
service = args[0];
|
||||||
} else if (typeof args[1] === 'object') {
|
} else if (typeof args[1] === 'object') {
|
||||||
service = args[1];
|
service = args[1];
|
||||||
@ -52,56 +55,52 @@ export function registerOp2(peer: FluencePeer, serviceId: string, service: Op2De
|
|||||||
service = args[2];
|
service = args[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
peer.internals.callServiceHandler.use((req, resp, next) => {
|
peer.internals.callServiceHandler.use((req, resp, next) => {
|
||||||
if (req.serviceId !== serviceId) {
|
if (req.serviceId !== serviceId) {
|
||||||
next();
|
next();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'identity') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
s: req.tetraplets[0]
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
service.identity(req.args[0], callParams); resp.result = {}
|
|
||||||
|
|
||||||
}
|
if (req.fnName === 'identity') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
next();
|
tetraplets: {
|
||||||
});
|
s: req.tetraplets[0],
|
||||||
}
|
},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
service.identity(req.args[0], callParams);
|
||||||
|
resp.result = {};
|
||||||
|
}
|
||||||
|
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
// Functions
|
// Functions
|
||||||
|
|
||||||
export function getTwoResults(relay: string, config?: {ttl?: number}) : Promise<number[]>;
|
export function getTwoResults(relay: string, config?: { ttl?: number }): Promise<number[]>;
|
||||||
export function getTwoResults(peer: FluencePeer, relay: string, config?: {ttl?: number}) : Promise<number[]>;
|
export function getTwoResults(peer: FluencePeer, relay: string, config?: { ttl?: number }): Promise<number[]>;
|
||||||
export function getTwoResults(...args: any) {
|
export function getTwoResults(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let relay: any;
|
let relay: any;
|
||||||
let config: any;
|
let config: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
relay = args[1];
|
relay = args[1];
|
||||||
config = args[2];
|
config = args[2];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
relay = args[0];
|
relay = args[0];
|
||||||
config = args[1];
|
config = args[1];
|
||||||
}
|
}
|
||||||
|
|
||||||
let request: RequestFlow;
|
let request: RequestFlow;
|
||||||
const promise = new Promise<number[]>((resolve, reject) => {
|
const promise = new Promise<number[]>((resolve, reject) => {
|
||||||
const r = new RequestFlowBuilder()
|
const r = new RequestFlowBuilder()
|
||||||
.disableInjections()
|
.disableInjections()
|
||||||
.withRawScript(
|
.withRawScript(
|
||||||
`
|
`
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -158,16 +157,18 @@ config = args[1];
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'relay', () => {
|
||||||
|
return relay;
|
||||||
});
|
});
|
||||||
h.on('getDataSrv', 'relay', () => {return relay;});
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
const [res] = args;
|
const [res] = args;
|
||||||
resolve(res);
|
resolve(res);
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -177,13 +178,12 @@ config = args[1];
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for getTwoResults');
|
reject('Request timed out for getTwoResults');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* This file is auto-generated. Do not edit manually: changes may be erased.
|
* This file is auto-generated. Do not edit manually: changes may be erased.
|
||||||
* Generated by Aqua compiler: https://github.com/fluencelabs/aqua/.
|
* 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
|
* If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues
|
||||||
* Aqua version: 0.3.0-SNAPSHOT
|
* Aqua version: 0.3.0-SNAPSHOT
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence, FluencePeer } from '@fluencelabs/fluence';
|
||||||
import {
|
import {
|
||||||
ResultCodes,
|
ResultCodes,
|
||||||
RequestFlow,
|
RequestFlow,
|
||||||
@ -14,37 +14,40 @@ import {
|
|||||||
CallParams,
|
CallParams,
|
||||||
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
||||||
|
|
||||||
|
|
||||||
// Services
|
// Services
|
||||||
|
|
||||||
export interface TestSrvDef {
|
export interface TestSrvDef {
|
||||||
str: (callParams: CallParams<null>) => string;
|
str: (callParams: CallParams<null>) => string;
|
||||||
}
|
}
|
||||||
|
|
||||||
export function registerTestSrv(service: TestSrvDef): void;
|
export function registerTestSrv(service: TestSrvDef): void;
|
||||||
export function registerTestSrv(serviceId: string, service: TestSrvDef): void;
|
export function registerTestSrv(serviceId: string, service: TestSrvDef): void;
|
||||||
export function registerTestSrv(peer: FluencePeer, service: TestSrvDef): void;
|
export function registerTestSrv(peer: FluencePeer, service: TestSrvDef): void;
|
||||||
export function registerTestSrv(peer: FluencePeer, serviceId: string, service: TestSrvDef): void;
|
export function registerTestSrv(peer: FluencePeer, serviceId: string, service: TestSrvDef): void;
|
||||||
export function registerTestSrv(...args: any) {
|
export function registerTestSrv(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let serviceId: any;
|
let serviceId: any;
|
||||||
let service: any;
|
let service: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof args[0] === 'string') {
|
if (typeof args[0] === 'string') {
|
||||||
serviceId = args[0];
|
serviceId = args[0];
|
||||||
} else if (typeof args[1] === 'string') {
|
} else if (typeof args[1] === 'string') {
|
||||||
serviceId = args[1];
|
serviceId = args[1];
|
||||||
}
|
} else {
|
||||||
else {
|
serviceId = 'test-service-id';
|
||||||
serviceId = "test-service-id"
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (!(args[0] instanceof FluencePeer) && typeof args[0] === 'object') {
|
// Figuring out which overload is the service.
|
||||||
|
// If the first argument is not Fluence Peer and it is an object, then it can only be the service def
|
||||||
|
// If the first argument is peer, we are checking further. The second argument might either be
|
||||||
|
// an object, that it must be the service object
|
||||||
|
// or a string, which is the service id. In that case the service is the third argument
|
||||||
|
if (!FluencePeer.isInstance(args[0]) && typeof args[0] === 'object') {
|
||||||
service = args[0];
|
service = args[0];
|
||||||
} else if (typeof args[1] === 'object') {
|
} else if (typeof args[1] === 'object') {
|
||||||
service = args[1];
|
service = args[1];
|
||||||
@ -52,54 +55,47 @@ export function registerTestSrv(peer: FluencePeer, serviceId: string, service: T
|
|||||||
service = args[2];
|
service = args[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
peer.internals.callServiceHandler.use((req, resp, next) => {
|
peer.internals.callServiceHandler.use((req, resp, next) => {
|
||||||
if (req.serviceId !== serviceId) {
|
if (req.serviceId !== serviceId) {
|
||||||
next();
|
next();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'str') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
resp.result = service.str(callParams)
|
|
||||||
|
|
||||||
}
|
if (req.fnName === 'str') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
next();
|
tetraplets: {},
|
||||||
});
|
};
|
||||||
}
|
resp.retCode = ResultCodes.success;
|
||||||
|
resp.result = service.str(callParams);
|
||||||
|
}
|
||||||
|
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
// Functions
|
// Functions
|
||||||
|
|
||||||
export function testFunc(config?: {ttl?: number}) : Promise<string>;
|
export function testFunc(config?: { ttl?: number }): Promise<string>;
|
||||||
export function testFunc(peer: FluencePeer, config?: {ttl?: number}) : Promise<string>;
|
export function testFunc(peer: FluencePeer, config?: { ttl?: number }): Promise<string>;
|
||||||
export function testFunc(...args: any) {
|
export function testFunc(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
|
|
||||||
let config: any;
|
let config: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
config = args[1];
|
config = args[1];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
config = args[0];
|
config = args[0];
|
||||||
}
|
}
|
||||||
|
|
||||||
let request: RequestFlow;
|
let request: RequestFlow;
|
||||||
const promise = new Promise<string>((resolve, reject) => {
|
const promise = new Promise<string>((resolve, reject) => {
|
||||||
const r = new RequestFlowBuilder()
|
const r = new RequestFlowBuilder()
|
||||||
.disableInjections()
|
.disableInjections()
|
||||||
.withRawScript(
|
.withRawScript(
|
||||||
`
|
`
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -115,16 +111,16 @@ export function registerTestSrv(peer: FluencePeer, serviceId: string, service: T
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
const [res] = args;
|
const [res] = args;
|
||||||
resolve(res);
|
resolve(res);
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -134,13 +130,12 @@ export function registerTestSrv(peer: FluencePeer, serviceId: string, service: T
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for testFunc');
|
reject('Request timed out for testFunc');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* This file is auto-generated. Do not edit manually: changes may be erased.
|
* This file is auto-generated. Do not edit manually: changes may be erased.
|
||||||
* Generated by Aqua compiler: https://github.com/fluencelabs/aqua/.
|
* 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
|
* If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues
|
||||||
* Aqua version: 0.3.0-SNAPSHOT
|
* Aqua version: 0.3.0-SNAPSHOT
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence, FluencePeer } from '@fluencelabs/fluence';
|
||||||
import {
|
import {
|
||||||
ResultCodes,
|
ResultCodes,
|
||||||
RequestFlow,
|
RequestFlow,
|
||||||
@ -14,37 +14,40 @@ import {
|
|||||||
CallParams,
|
CallParams,
|
||||||
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
||||||
|
|
||||||
|
|
||||||
// Services
|
// Services
|
||||||
|
|
||||||
export interface StringExtraDef {
|
export interface StringExtraDef {
|
||||||
addNameToHello: (arg0: string, callParams: CallParams<'arg0'>) => string;
|
addNameToHello: (arg0: string, callParams: CallParams<'arg0'>) => string;
|
||||||
}
|
}
|
||||||
|
|
||||||
export function registerStringExtra(service: StringExtraDef): void;
|
export function registerStringExtra(service: StringExtraDef): void;
|
||||||
export function registerStringExtra(serviceId: string, service: StringExtraDef): void;
|
export function registerStringExtra(serviceId: string, service: StringExtraDef): void;
|
||||||
export function registerStringExtra(peer: FluencePeer, service: StringExtraDef): void;
|
export function registerStringExtra(peer: FluencePeer, service: StringExtraDef): void;
|
||||||
export function registerStringExtra(peer: FluencePeer, serviceId: string, service: StringExtraDef): void;
|
export function registerStringExtra(peer: FluencePeer, serviceId: string, service: StringExtraDef): void;
|
||||||
export function registerStringExtra(...args: any) {
|
export function registerStringExtra(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let serviceId: any;
|
let serviceId: any;
|
||||||
let service: any;
|
let service: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof args[0] === 'string') {
|
if (typeof args[0] === 'string') {
|
||||||
serviceId = args[0];
|
serviceId = args[0];
|
||||||
} else if (typeof args[1] === 'string') {
|
} else if (typeof args[1] === 'string') {
|
||||||
serviceId = args[1];
|
serviceId = args[1];
|
||||||
}
|
} else {
|
||||||
else {
|
serviceId = 'service-id';
|
||||||
serviceId = "service-id"
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (!(args[0] instanceof FluencePeer) && typeof args[0] === 'object') {
|
// Figuring out which overload is the service.
|
||||||
|
// If the first argument is not Fluence Peer and it is an object, then it can only be the service def
|
||||||
|
// If the first argument is peer, we are checking further. The second argument might either be
|
||||||
|
// an object, that it must be the service object
|
||||||
|
// or a string, which is the service id. In that case the service is the third argument
|
||||||
|
if (!FluencePeer.isInstance(args[0]) && typeof args[0] === 'object') {
|
||||||
service = args[0];
|
service = args[0];
|
||||||
} else if (typeof args[1] === 'object') {
|
} else if (typeof args[1] === 'object') {
|
||||||
service = args[1];
|
service = args[1];
|
||||||
@ -52,56 +55,51 @@ export function registerStringExtra(peer: FluencePeer, serviceId: string, servic
|
|||||||
service = args[2];
|
service = args[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
peer.internals.callServiceHandler.use((req, resp, next) => {
|
peer.internals.callServiceHandler.use((req, resp, next) => {
|
||||||
if (req.serviceId !== serviceId) {
|
if (req.serviceId !== serviceId) {
|
||||||
next();
|
next();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'addNameToHello') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
arg0: req.tetraplets[0]
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
resp.result = service.addNameToHello(req.args[0], callParams)
|
|
||||||
|
|
||||||
}
|
if (req.fnName === 'addNameToHello') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
next();
|
tetraplets: {
|
||||||
});
|
arg0: req.tetraplets[0],
|
||||||
}
|
},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
resp.result = service.addNameToHello(req.args[0], callParams);
|
||||||
|
}
|
||||||
|
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
// Functions
|
// Functions
|
||||||
|
|
||||||
export function helloWorld(name: string, config?: {ttl?: number}) : Promise<string>;
|
export function helloWorld(name: string, config?: { ttl?: number }): Promise<string>;
|
||||||
export function helloWorld(peer: FluencePeer, name: string, config?: {ttl?: number}) : Promise<string>;
|
export function helloWorld(peer: FluencePeer, name: string, config?: { ttl?: number }): Promise<string>;
|
||||||
export function helloWorld(...args: any) {
|
export function helloWorld(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let name: any;
|
let name: any;
|
||||||
let config: any;
|
let config: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
name = args[1];
|
name = args[1];
|
||||||
config = args[2];
|
config = args[2];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
name = args[0];
|
name = args[0];
|
||||||
config = args[1];
|
config = args[1];
|
||||||
}
|
}
|
||||||
|
|
||||||
let request: RequestFlow;
|
let request: RequestFlow;
|
||||||
const promise = new Promise<string>((resolve, reject) => {
|
const promise = new Promise<string>((resolve, reject) => {
|
||||||
const r = new RequestFlowBuilder()
|
const r = new RequestFlowBuilder()
|
||||||
.disableInjections()
|
.disableInjections()
|
||||||
.withRawScript(
|
.withRawScript(
|
||||||
`
|
`
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -120,16 +118,18 @@ config = args[1];
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'name', () => {
|
||||||
|
return name;
|
||||||
});
|
});
|
||||||
h.on('getDataSrv', 'name', () => {return name;});
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
const [res] = args;
|
const [res] = args;
|
||||||
resolve(res);
|
resolve(res);
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -139,13 +139,12 @@ config = args[1];
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for helloWorld');
|
reject('Request timed out for helloWorld');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* This file is auto-generated. Do not edit manually: changes may be erased.
|
* This file is auto-generated. Do not edit manually: changes may be erased.
|
||||||
* Generated by Aqua compiler: https://github.com/fluencelabs/aqua/.
|
* 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
|
* If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues
|
||||||
* Aqua version: 0.3.0-SNAPSHOT
|
* Aqua version: 0.3.0-SNAPSHOT
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence, FluencePeer } from '@fluencelabs/fluence';
|
||||||
import {
|
import {
|
||||||
ResultCodes,
|
ResultCodes,
|
||||||
RequestFlow,
|
RequestFlow,
|
||||||
@ -14,34 +14,32 @@ import {
|
|||||||
CallParams,
|
CallParams,
|
||||||
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
||||||
|
|
||||||
|
|
||||||
// Services
|
// Services
|
||||||
|
|
||||||
|
|
||||||
// Functions
|
// Functions
|
||||||
|
|
||||||
export function ifElseCall(condition: boolean, config?: {ttl?: number}) : Promise<void>;
|
export function ifElseCall(condition: boolean, config?: { ttl?: number }): Promise<void>;
|
||||||
export function ifElseCall(peer: FluencePeer, condition: boolean, config?: {ttl?: number}) : Promise<void>;
|
export function ifElseCall(peer: FluencePeer, condition: boolean, config?: { ttl?: number }): Promise<void>;
|
||||||
export function ifElseCall(...args: any) {
|
export function ifElseCall(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let condition: any;
|
let condition: any;
|
||||||
let config: any;
|
let config: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
condition = args[1];
|
condition = args[1];
|
||||||
config = args[2];
|
config = args[2];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
condition = args[0];
|
condition = args[0];
|
||||||
config = args[1];
|
config = args[1];
|
||||||
}
|
}
|
||||||
|
|
||||||
let request: RequestFlow;
|
let request: RequestFlow;
|
||||||
const promise = new Promise<void>((resolve, reject) => {
|
const promise = new Promise<void>((resolve, reject) => {
|
||||||
const r = new RequestFlowBuilder()
|
const r = new RequestFlowBuilder()
|
||||||
.disableInjections()
|
.disableInjections()
|
||||||
.withRawScript(
|
.withRawScript(
|
||||||
`
|
`
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -62,15 +60,15 @@ config = args[1];
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
});
|
});
|
||||||
h.on('getDataSrv', 'condition', () => {return condition;});
|
h.on('getDataSrv', 'condition', () => {
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
return condition;
|
||||||
|
});
|
||||||
});
|
h.onEvent('callbackSrv', 'response', (args) => {});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -80,40 +78,38 @@ config = args[1];
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for ifElseCall');
|
reject('Request timed out for ifElseCall');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return Promise.race([promise, Promise.resolve()]);
|
return Promise.race([promise, Promise.resolve()]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
export function ifElseNumCall(condition: number, config?: { ttl?: number }): Promise<void>;
|
||||||
|
export function ifElseNumCall(peer: FluencePeer, condition: number, config?: { ttl?: number }): Promise<void>;
|
||||||
|
export function ifElseNumCall(...args: any) {
|
||||||
|
let peer: FluencePeer;
|
||||||
|
let condition: any;
|
||||||
|
let config: any;
|
||||||
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
|
peer = args[0];
|
||||||
|
condition = args[1];
|
||||||
|
config = args[2];
|
||||||
|
} else {
|
||||||
|
peer = Fluence.getPeer();
|
||||||
|
condition = args[0];
|
||||||
|
config = args[1];
|
||||||
|
}
|
||||||
|
|
||||||
export function ifElseNumCall(condition: number, config?: {ttl?: number}) : Promise<void>;
|
let request: RequestFlow;
|
||||||
export function ifElseNumCall(peer: FluencePeer, condition: number, config?: {ttl?: number}) : Promise<void>;
|
const promise = new Promise<void>((resolve, reject) => {
|
||||||
export function ifElseNumCall(...args: any) {
|
const r = new RequestFlowBuilder()
|
||||||
let peer: FluencePeer;
|
.disableInjections()
|
||||||
let condition: any;
|
.withRawScript(
|
||||||
let config: any;
|
`
|
||||||
if (args[0] instanceof FluencePeer) {
|
|
||||||
peer = args[0];
|
|
||||||
condition = args[1];
|
|
||||||
config = args[2];
|
|
||||||
} else {
|
|
||||||
peer = FluencePeer.default;
|
|
||||||
condition = args[0];
|
|
||||||
config = args[1];
|
|
||||||
}
|
|
||||||
|
|
||||||
let request: RequestFlow;
|
|
||||||
const promise = new Promise<void>((resolve, reject) => {
|
|
||||||
const r = new RequestFlowBuilder()
|
|
||||||
.disableInjections()
|
|
||||||
.withRawScript(
|
|
||||||
`
|
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -134,15 +130,15 @@ config = args[1];
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
});
|
});
|
||||||
h.on('getDataSrv', 'condition', () => {return condition;});
|
h.on('getDataSrv', 'condition', () => {
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
return condition;
|
||||||
|
});
|
||||||
});
|
h.onEvent('callbackSrv', 'response', (args) => {});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -152,13 +148,12 @@ config = args[1];
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for ifElseNumCall');
|
reject('Request timed out for ifElseNumCall');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return Promise.race([promise, Promise.resolve()]);
|
return Promise.race([promise, Promise.resolve()]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* This file is auto-generated. Do not edit manually: changes may be erased.
|
* This file is auto-generated. Do not edit manually: changes may be erased.
|
||||||
* Generated by Aqua compiler: https://github.com/fluencelabs/aqua/.
|
* 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
|
* If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues
|
||||||
* Aqua version: 0.3.0-SNAPSHOT
|
* Aqua version: 0.3.0-SNAPSHOT
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence, FluencePeer } from '@fluencelabs/fluence';
|
||||||
import {
|
import {
|
||||||
ResultCodes,
|
ResultCodes,
|
||||||
RequestFlow,
|
RequestFlow,
|
||||||
@ -14,37 +14,40 @@ import {
|
|||||||
CallParams,
|
CallParams,
|
||||||
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
||||||
|
|
||||||
|
|
||||||
// Services
|
// Services
|
||||||
|
|
||||||
export interface SuperFooDef {
|
export interface SuperFooDef {
|
||||||
small_foo: (callParams: CallParams<null>) => string;
|
small_foo: (callParams: CallParams<null>) => string;
|
||||||
}
|
}
|
||||||
|
|
||||||
export function registerSuperFoo(service: SuperFooDef): void;
|
export function registerSuperFoo(service: SuperFooDef): void;
|
||||||
export function registerSuperFoo(serviceId: string, service: SuperFooDef): void;
|
export function registerSuperFoo(serviceId: string, service: SuperFooDef): void;
|
||||||
export function registerSuperFoo(peer: FluencePeer, service: SuperFooDef): void;
|
export function registerSuperFoo(peer: FluencePeer, service: SuperFooDef): void;
|
||||||
export function registerSuperFoo(peer: FluencePeer, serviceId: string, service: SuperFooDef): void;
|
export function registerSuperFoo(peer: FluencePeer, serviceId: string, service: SuperFooDef): void;
|
||||||
export function registerSuperFoo(...args: any) {
|
export function registerSuperFoo(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let serviceId: any;
|
let serviceId: any;
|
||||||
let service: any;
|
let service: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof args[0] === 'string') {
|
if (typeof args[0] === 'string') {
|
||||||
serviceId = args[0];
|
serviceId = args[0];
|
||||||
} else if (typeof args[1] === 'string') {
|
} else if (typeof args[1] === 'string') {
|
||||||
serviceId = args[1];
|
serviceId = args[1];
|
||||||
}
|
} else {
|
||||||
else {
|
serviceId = 'super_foo';
|
||||||
serviceId = "super_foo"
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (!(args[0] instanceof FluencePeer) && typeof args[0] === 'object') {
|
// Figuring out which overload is the service.
|
||||||
|
// If the first argument is not Fluence Peer and it is an object, then it can only be the service def
|
||||||
|
// If the first argument is peer, we are checking further. The second argument might either be
|
||||||
|
// an object, that it must be the service object
|
||||||
|
// or a string, which is the service id. In that case the service is the third argument
|
||||||
|
if (!FluencePeer.isInstance(args[0]) && typeof args[0] === 'object') {
|
||||||
service = args[0];
|
service = args[0];
|
||||||
} else if (typeof args[1] === 'object') {
|
} else if (typeof args[1] === 'object') {
|
||||||
service = args[1];
|
service = args[1];
|
||||||
@ -52,31 +55,23 @@ export function registerSuperFoo(peer: FluencePeer, serviceId: string, service:
|
|||||||
service = args[2];
|
service = args[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
peer.internals.callServiceHandler.use((req, resp, next) => {
|
peer.internals.callServiceHandler.use((req, resp, next) => {
|
||||||
if (req.serviceId !== serviceId) {
|
if (req.serviceId !== serviceId) {
|
||||||
next();
|
next();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'small_foo') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
resp.result = service.small_foo(callParams)
|
|
||||||
|
|
||||||
}
|
if (req.fnName === 'small_foo') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
next();
|
tetraplets: {},
|
||||||
});
|
};
|
||||||
}
|
resp.retCode = ResultCodes.success;
|
||||||
|
resp.result = service.small_foo(callParams);
|
||||||
|
}
|
||||||
|
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
// Functions
|
// Functions
|
||||||
|
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* This file is auto-generated. Do not edit manually: changes may be erased.
|
* This file is auto-generated. Do not edit manually: changes may be erased.
|
||||||
* Generated by Aqua compiler: https://github.com/fluencelabs/aqua/.
|
* 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
|
* If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues
|
||||||
* Aqua version: 0.3.0-SNAPSHOT
|
* Aqua version: 0.3.0-SNAPSHOT
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence, FluencePeer } from '@fluencelabs/fluence';
|
||||||
import {
|
import {
|
||||||
ResultCodes,
|
ResultCodes,
|
||||||
RequestFlow,
|
RequestFlow,
|
||||||
@ -14,37 +14,40 @@ import {
|
|||||||
CallParams,
|
CallParams,
|
||||||
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
||||||
|
|
||||||
|
|
||||||
// Services
|
// Services
|
||||||
|
|
||||||
export interface MyExportSrvDef {
|
export interface MyExportSrvDef {
|
||||||
another_str: (callParams: CallParams<null>) => string;
|
another_str: (callParams: CallParams<null>) => string;
|
||||||
}
|
}
|
||||||
|
|
||||||
export function registerMyExportSrv(service: MyExportSrvDef): void;
|
export function registerMyExportSrv(service: MyExportSrvDef): void;
|
||||||
export function registerMyExportSrv(serviceId: string, service: MyExportSrvDef): void;
|
export function registerMyExportSrv(serviceId: string, service: MyExportSrvDef): void;
|
||||||
export function registerMyExportSrv(peer: FluencePeer, service: MyExportSrvDef): void;
|
export function registerMyExportSrv(peer: FluencePeer, service: MyExportSrvDef): void;
|
||||||
export function registerMyExportSrv(peer: FluencePeer, serviceId: string, service: MyExportSrvDef): void;
|
export function registerMyExportSrv(peer: FluencePeer, serviceId: string, service: MyExportSrvDef): void;
|
||||||
export function registerMyExportSrv(...args: any) {
|
export function registerMyExportSrv(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let serviceId: any;
|
let serviceId: any;
|
||||||
let service: any;
|
let service: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof args[0] === 'string') {
|
if (typeof args[0] === 'string') {
|
||||||
serviceId = args[0];
|
serviceId = args[0];
|
||||||
} else if (typeof args[1] === 'string') {
|
} else if (typeof args[1] === 'string') {
|
||||||
serviceId = args[1];
|
serviceId = args[1];
|
||||||
}
|
} else {
|
||||||
else {
|
serviceId = 'my_export_srv';
|
||||||
serviceId = "my_export_srv"
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (!(args[0] instanceof FluencePeer) && typeof args[0] === 'object') {
|
// Figuring out which overload is the service.
|
||||||
|
// If the first argument is not Fluence Peer and it is an object, then it can only be the service def
|
||||||
|
// If the first argument is peer, we are checking further. The second argument might either be
|
||||||
|
// an object, that it must be the service object
|
||||||
|
// or a string, which is the service id. In that case the service is the third argument
|
||||||
|
if (!FluencePeer.isInstance(args[0]) && typeof args[0] === 'object') {
|
||||||
service = args[0];
|
service = args[0];
|
||||||
} else if (typeof args[1] === 'object') {
|
} else if (typeof args[1] === 'object') {
|
||||||
service = args[1];
|
service = args[1];
|
||||||
@ -52,54 +55,47 @@ export function registerMyExportSrv(peer: FluencePeer, serviceId: string, servic
|
|||||||
service = args[2];
|
service = args[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
peer.internals.callServiceHandler.use((req, resp, next) => {
|
peer.internals.callServiceHandler.use((req, resp, next) => {
|
||||||
if (req.serviceId !== serviceId) {
|
if (req.serviceId !== serviceId) {
|
||||||
next();
|
next();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'another_str') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
resp.result = service.another_str(callParams)
|
|
||||||
|
|
||||||
}
|
if (req.fnName === 'another_str') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
next();
|
tetraplets: {},
|
||||||
});
|
};
|
||||||
}
|
resp.retCode = ResultCodes.success;
|
||||||
|
resp.result = service.another_str(callParams);
|
||||||
|
}
|
||||||
|
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
// Functions
|
// Functions
|
||||||
|
|
||||||
export function string_from_lib(config?: {ttl?: number}) : Promise<string>;
|
export function string_from_lib(config?: { ttl?: number }): Promise<string>;
|
||||||
export function string_from_lib(peer: FluencePeer, config?: {ttl?: number}) : Promise<string>;
|
export function string_from_lib(peer: FluencePeer, config?: { ttl?: number }): Promise<string>;
|
||||||
export function string_from_lib(...args: any) {
|
export function string_from_lib(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
|
|
||||||
let config: any;
|
let config: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
config = args[1];
|
config = args[1];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
config = args[0];
|
config = args[0];
|
||||||
}
|
}
|
||||||
|
|
||||||
let request: RequestFlow;
|
let request: RequestFlow;
|
||||||
const promise = new Promise<string>((resolve, reject) => {
|
const promise = new Promise<string>((resolve, reject) => {
|
||||||
const r = new RequestFlowBuilder()
|
const r = new RequestFlowBuilder()
|
||||||
.disableInjections()
|
.disableInjections()
|
||||||
.withRawScript(
|
.withRawScript(
|
||||||
`
|
`
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(call %init_peer_id% ("getDataSrv" "-relay-") [] -relay-)
|
(call %init_peer_id% ("getDataSrv" "-relay-") [] -relay-)
|
||||||
@ -112,16 +108,16 @@ export function registerMyExportSrv(peer: FluencePeer, serviceId: string, servic
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
const [res] = args;
|
const [res] = args;
|
||||||
resolve(res);
|
resolve(res);
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -131,13 +127,12 @@ export function registerMyExportSrv(peer: FluencePeer, serviceId: string, servic
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for string_from_lib');
|
reject('Request timed out for string_from_lib');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* This file is auto-generated. Do not edit manually: changes may be erased.
|
* This file is auto-generated. Do not edit manually: changes may be erased.
|
||||||
* Generated by Aqua compiler: https://github.com/fluencelabs/aqua/.
|
* 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
|
* If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues
|
||||||
* Aqua version: 0.3.0-SNAPSHOT
|
* Aqua version: 0.3.0-SNAPSHOT
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence, FluencePeer } from '@fluencelabs/fluence';
|
||||||
import {
|
import {
|
||||||
ResultCodes,
|
ResultCodes,
|
||||||
RequestFlow,
|
RequestFlow,
|
||||||
@ -14,32 +14,36 @@ import {
|
|||||||
CallParams,
|
CallParams,
|
||||||
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
||||||
|
|
||||||
|
|
||||||
// Services
|
// Services
|
||||||
|
|
||||||
export interface OneMoreDef {
|
export interface OneMoreDef {
|
||||||
more_call: (callParams: CallParams<null>) => void;
|
more_call: (callParams: CallParams<null>) => void;
|
||||||
}
|
}
|
||||||
|
|
||||||
export function registerOneMore(serviceId: string, service: OneMoreDef): void;
|
export function registerOneMore(serviceId: string, service: OneMoreDef): void;
|
||||||
export function registerOneMore(peer: FluencePeer, serviceId: string, service: OneMoreDef): void;
|
export function registerOneMore(peer: FluencePeer, serviceId: string, service: OneMoreDef): void;
|
||||||
export function registerOneMore(...args: any) {
|
export function registerOneMore(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let serviceId: any;
|
let serviceId: any;
|
||||||
let service: any;
|
let service: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof args[0] === 'string') {
|
if (typeof args[0] === 'string') {
|
||||||
serviceId = args[0];
|
serviceId = args[0];
|
||||||
} else if (typeof args[1] === 'string') {
|
} else if (typeof args[1] === 'string') {
|
||||||
serviceId = args[1];
|
serviceId = args[1];
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!(args[0] instanceof FluencePeer) && typeof args[0] === 'object') {
|
// Figuring out which overload is the service.
|
||||||
|
// If the first argument is not Fluence Peer and it is an object, then it can only be the service def
|
||||||
|
// If the first argument is peer, we are checking further. The second argument might either be
|
||||||
|
// an object, that it must be the service object
|
||||||
|
// or a string, which is the service id. In that case the service is the third argument
|
||||||
|
if (!FluencePeer.isInstance(args[0]) && typeof args[0] === 'object') {
|
||||||
service = args[0];
|
service = args[0];
|
||||||
} else if (typeof args[1] === 'object') {
|
} else if (typeof args[1] === 'object') {
|
||||||
service = args[1];
|
service = args[1];
|
||||||
@ -47,31 +51,24 @@ export function registerOneMore(peer: FluencePeer, serviceId: string, service: O
|
|||||||
service = args[2];
|
service = args[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
peer.internals.callServiceHandler.use((req, resp, next) => {
|
peer.internals.callServiceHandler.use((req, resp, next) => {
|
||||||
if (req.serviceId !== serviceId) {
|
if (req.serviceId !== serviceId) {
|
||||||
next();
|
next();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'more_call') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
service.more_call(callParams); resp.result = {}
|
|
||||||
|
|
||||||
}
|
if (req.fnName === 'more_call') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
next();
|
tetraplets: {},
|
||||||
});
|
};
|
||||||
}
|
resp.retCode = ResultCodes.success;
|
||||||
|
service.more_call(callParams);
|
||||||
|
resp.result = {};
|
||||||
|
}
|
||||||
|
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
// Functions
|
// Functions
|
||||||
|
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* This file is auto-generated. Do not edit manually: changes may be erased.
|
* This file is auto-generated. Do not edit manually: changes may be erased.
|
||||||
* Generated by Aqua compiler: https://github.com/fluencelabs/aqua/.
|
* 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
|
* If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues
|
||||||
* Aqua version: 0.3.0-SNAPSHOT
|
* Aqua version: 0.3.0-SNAPSHOT
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence, FluencePeer } from '@fluencelabs/fluence';
|
||||||
import {
|
import {
|
||||||
ResultCodes,
|
ResultCodes,
|
||||||
RequestFlow,
|
RequestFlow,
|
||||||
@ -14,32 +14,30 @@ import {
|
|||||||
CallParams,
|
CallParams,
|
||||||
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
||||||
|
|
||||||
|
|
||||||
// Services
|
// Services
|
||||||
|
|
||||||
|
|
||||||
// Functions
|
// Functions
|
||||||
|
|
||||||
export function wrap(config?: {ttl?: number}) : Promise<string>;
|
export function wrap(config?: { ttl?: number }): Promise<string>;
|
||||||
export function wrap(peer: FluencePeer, config?: {ttl?: number}) : Promise<string>;
|
export function wrap(peer: FluencePeer, config?: { ttl?: number }): Promise<string>;
|
||||||
export function wrap(...args: any) {
|
export function wrap(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
|
|
||||||
let config: any;
|
let config: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
config = args[1];
|
config = args[1];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
config = args[0];
|
config = args[0];
|
||||||
}
|
}
|
||||||
|
|
||||||
let request: RequestFlow;
|
let request: RequestFlow;
|
||||||
const promise = new Promise<string>((resolve, reject) => {
|
const promise = new Promise<string>((resolve, reject) => {
|
||||||
const r = new RequestFlowBuilder()
|
const r = new RequestFlowBuilder()
|
||||||
.disableInjections()
|
.disableInjections()
|
||||||
.withRawScript(
|
.withRawScript(
|
||||||
`
|
`
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -58,16 +56,16 @@ import {
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
const [res] = args;
|
const [res] = args;
|
||||||
resolve(res);
|
resolve(res);
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -77,38 +75,36 @@ import {
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for wrap');
|
reject('Request timed out for wrap');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
export function barfoo(config?: { ttl?: number }): Promise<string[]>;
|
||||||
|
export function barfoo(peer: FluencePeer, config?: { ttl?: number }): Promise<string[]>;
|
||||||
|
export function barfoo(...args: any) {
|
||||||
|
let peer: FluencePeer;
|
||||||
|
|
||||||
export function barfoo(config?: {ttl?: number}) : Promise<string[]>;
|
let config: any;
|
||||||
export function barfoo(peer: FluencePeer, config?: {ttl?: number}) : Promise<string[]>;
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
export function barfoo(...args: any) {
|
peer = args[0];
|
||||||
let peer: FluencePeer;
|
config = args[1];
|
||||||
|
} else {
|
||||||
let config: any;
|
peer = Fluence.getPeer();
|
||||||
if (args[0] instanceof FluencePeer) {
|
config = args[0];
|
||||||
peer = args[0];
|
}
|
||||||
config = args[1];
|
|
||||||
} else {
|
let request: RequestFlow;
|
||||||
peer = FluencePeer.default;
|
const promise = new Promise<string[]>((resolve, reject) => {
|
||||||
config = args[0];
|
const r = new RequestFlowBuilder()
|
||||||
}
|
.disableInjections()
|
||||||
|
.withRawScript(
|
||||||
let request: RequestFlow;
|
`
|
||||||
const promise = new Promise<string[]>((resolve, reject) => {
|
|
||||||
const r = new RequestFlowBuilder()
|
|
||||||
.disableInjections()
|
|
||||||
.withRawScript(
|
|
||||||
`
|
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -127,16 +123,16 @@ import {
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
const [res] = args;
|
const [res] = args;
|
||||||
resolve(res);
|
resolve(res);
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -146,13 +142,12 @@ import {
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for barfoo');
|
reject('Request timed out for barfoo');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
80
src/compiled/examples/imports_exports/import3.ts
Normal file
80
src/compiled/examples/imports_exports/import3.ts
Normal file
@ -0,0 +1,80 @@
|
|||||||
|
/**
|
||||||
|
*
|
||||||
|
* 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-SNAPSHOT
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
import { Fluence, FluencePeer } from '@fluencelabs/fluence';
|
||||||
|
import {
|
||||||
|
ResultCodes,
|
||||||
|
RequestFlow,
|
||||||
|
RequestFlowBuilder,
|
||||||
|
CallParams,
|
||||||
|
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
||||||
|
|
||||||
|
// Services
|
||||||
|
|
||||||
|
// Functions
|
||||||
|
|
||||||
|
export function foo_wrapper(config?: { ttl?: number }): Promise<string>;
|
||||||
|
export function foo_wrapper(peer: FluencePeer, config?: { ttl?: number }): Promise<string>;
|
||||||
|
export function foo_wrapper(...args: any) {
|
||||||
|
let peer: FluencePeer;
|
||||||
|
|
||||||
|
let config: any;
|
||||||
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
|
peer = args[0];
|
||||||
|
config = args[1];
|
||||||
|
} else {
|
||||||
|
peer = Fluence.getPeer();
|
||||||
|
config = args[0];
|
||||||
|
}
|
||||||
|
|
||||||
|
let request: RequestFlow;
|
||||||
|
const promise = new Promise<string>((resolve, reject) => {
|
||||||
|
const r = new RequestFlowBuilder()
|
||||||
|
.disableInjections()
|
||||||
|
.withRawScript(
|
||||||
|
`
|
||||||
|
(xor
|
||||||
|
(seq
|
||||||
|
(call %init_peer_id% ("getDataSrv" "-relay-") [] -relay-)
|
||||||
|
(xor
|
||||||
|
(call %init_peer_id% ("callbackSrv" "response") ["I am MyFooBar foo"])
|
||||||
|
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 1])
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 2])
|
||||||
|
)
|
||||||
|
|
||||||
|
`,
|
||||||
|
)
|
||||||
|
.configHandler((h) => {
|
||||||
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
|
return peer.getStatus().relayPeerId;
|
||||||
|
});
|
||||||
|
|
||||||
|
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 foo_wrapper');
|
||||||
|
});
|
||||||
|
if (config && config.ttl) {
|
||||||
|
r.withTTL(config.ttl);
|
||||||
|
}
|
||||||
|
request = r.build();
|
||||||
|
});
|
||||||
|
peer.internals.initiateFlow(request!);
|
||||||
|
return promise;
|
||||||
|
}
|
@ -1,12 +1,12 @@
|
|||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* This file is auto-generated. Do not edit manually: changes may be erased.
|
* This file is auto-generated. Do not edit manually: changes may be erased.
|
||||||
* Generated by Aqua compiler: https://github.com/fluencelabs/aqua/.
|
* 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
|
* If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues
|
||||||
* Aqua version: 0.3.0-SNAPSHOT
|
* Aqua version: 0.3.0-SNAPSHOT
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence, FluencePeer } from '@fluencelabs/fluence';
|
||||||
import {
|
import {
|
||||||
ResultCodes,
|
ResultCodes,
|
||||||
RequestFlow,
|
RequestFlow,
|
||||||
@ -14,47 +14,62 @@ import {
|
|||||||
CallParams,
|
CallParams,
|
||||||
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
||||||
|
|
||||||
|
|
||||||
// Services
|
// Services
|
||||||
|
|
||||||
export interface NoopDef {
|
export interface NoopDef {
|
||||||
array: (a: string, b: string | null, c: string | null, d: string | null, callParams: CallParams<'a' | 'b' | 'c' | 'd'>) => string[];
|
array: (
|
||||||
array_length: (array: string[], callParams: CallParams<'array'>) => number;
|
a: string,
|
||||||
bytes_from_b58: (b: string, callParams: CallParams<'b'>) => number[];
|
b: string | null,
|
||||||
bytes_to_b58: (bs: number[], callParams: CallParams<'bs'>) => string;
|
c: string | null,
|
||||||
concat: (a: string[], b: string[] | null, c: string[] | null, d: string[] | null, callParams: CallParams<'a' | 'b' | 'c' | 'd'>) => string[];
|
d: string | null,
|
||||||
concat_strings: (a: string, b: string, callParams: CallParams<'a' | 'b'>) => string;
|
callParams: CallParams<'a' | 'b' | 'c' | 'd'>,
|
||||||
identity: (s: string | null, callParams: CallParams<'s'>) => string | null;
|
) => string[];
|
||||||
noop: (callParams: CallParams<null>) => void;
|
array_length: (array: string[], callParams: CallParams<'array'>) => number;
|
||||||
sha256_string: (s: string, callParams: CallParams<'s'>) => string;
|
bytes_from_b58: (b: string, callParams: CallParams<'b'>) => number[];
|
||||||
string_from_b58: (b: string, callParams: CallParams<'b'>) => string;
|
bytes_to_b58: (bs: number[], callParams: CallParams<'bs'>) => string;
|
||||||
string_to_b58: (s: string, callParams: CallParams<'s'>) => string;
|
concat: (
|
||||||
}
|
a: string[],
|
||||||
|
b: string[] | null,
|
||||||
|
c: string[] | null,
|
||||||
|
d: string[] | null,
|
||||||
|
callParams: CallParams<'a' | 'b' | 'c' | 'd'>,
|
||||||
|
) => string[];
|
||||||
|
concat_strings: (a: string, b: string, callParams: CallParams<'a' | 'b'>) => string;
|
||||||
|
identity: (s: string | null, callParams: CallParams<'s'>) => string | null;
|
||||||
|
noop: (callParams: CallParams<null>) => void;
|
||||||
|
sha256_string: (s: string, callParams: CallParams<'s'>) => string;
|
||||||
|
string_from_b58: (b: string, callParams: CallParams<'b'>) => string;
|
||||||
|
string_to_b58: (s: string, callParams: CallParams<'s'>) => string;
|
||||||
|
}
|
||||||
|
|
||||||
export function registerNoop(service: NoopDef): void;
|
export function registerNoop(service: NoopDef): void;
|
||||||
export function registerNoop(serviceId: string, service: NoopDef): void;
|
export function registerNoop(serviceId: string, service: NoopDef): void;
|
||||||
export function registerNoop(peer: FluencePeer, service: NoopDef): void;
|
export function registerNoop(peer: FluencePeer, service: NoopDef): void;
|
||||||
export function registerNoop(peer: FluencePeer, serviceId: string, service: NoopDef): void;
|
export function registerNoop(peer: FluencePeer, serviceId: string, service: NoopDef): void;
|
||||||
export function registerNoop(...args: any) {
|
export function registerNoop(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let serviceId: any;
|
let serviceId: any;
|
||||||
let service: any;
|
let service: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof args[0] === 'string') {
|
if (typeof args[0] === 'string') {
|
||||||
serviceId = args[0];
|
serviceId = args[0];
|
||||||
} else if (typeof args[1] === 'string') {
|
} else if (typeof args[1] === 'string') {
|
||||||
serviceId = args[1];
|
serviceId = args[1];
|
||||||
}
|
} else {
|
||||||
else {
|
serviceId = 'op';
|
||||||
serviceId = "op"
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (!(args[0] instanceof FluencePeer) && typeof args[0] === 'object') {
|
// Figuring out which overload is the service.
|
||||||
|
// If the first argument is not Fluence Peer and it is an object, then it can only be the service def
|
||||||
|
// If the first argument is peer, we are checking further. The second argument might either be
|
||||||
|
// an object, that it must be the service object
|
||||||
|
// or a string, which is the service id. In that case the service is the third argument
|
||||||
|
if (!FluencePeer.isInstance(args[0]) && typeof args[0] === 'object') {
|
||||||
service = args[0];
|
service = args[0];
|
||||||
} else if (typeof args[1] === 'object') {
|
} else if (typeof args[1] === 'object') {
|
||||||
service = args[1];
|
service = args[1];
|
||||||
@ -62,214 +77,189 @@ export function registerNoop(peer: FluencePeer, serviceId: string, service: Noop
|
|||||||
service = args[2];
|
service = args[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
peer.internals.callServiceHandler.use((req, resp, next) => {
|
peer.internals.callServiceHandler.use((req, resp, next) => {
|
||||||
if (req.serviceId !== serviceId) {
|
if (req.serviceId !== serviceId) {
|
||||||
next();
|
next();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'array') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
a: req.tetraplets[0],b: req.tetraplets[1],c: req.tetraplets[2],d: req.tetraplets[3]
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
resp.result = service.array(req.args[0], req.args[1].length === 0 ? null : req.args[1][0], req.args[2].length === 0 ? null : req.args[2][0], req.args[3].length === 0 ? null : req.args[3][0], callParams)
|
|
||||||
|
|
||||||
}
|
if (req.fnName === 'array') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
|
tetraplets: {
|
||||||
|
a: req.tetraplets[0],
|
||||||
|
b: req.tetraplets[1],
|
||||||
|
c: req.tetraplets[2],
|
||||||
|
d: req.tetraplets[3],
|
||||||
|
},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
resp.result = service.array(
|
||||||
|
req.args[0],
|
||||||
|
req.args[1].length === 0 ? null : req.args[1][0],
|
||||||
|
req.args[2].length === 0 ? null : req.args[2][0],
|
||||||
|
req.args[3].length === 0 ? null : req.args[3][0],
|
||||||
|
callParams,
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (req.fnName === 'array_length') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
|
tetraplets: {
|
||||||
|
array: req.tetraplets[0],
|
||||||
|
},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
resp.result = service.array_length(req.args[0], callParams);
|
||||||
|
}
|
||||||
|
|
||||||
if (req.fnName === 'array_length') {
|
if (req.fnName === 'bytes_from_b58') {
|
||||||
|
const callParams = {
|
||||||
const callParams = {
|
...req.particleContext,
|
||||||
...req.particleContext,
|
tetraplets: {
|
||||||
tetraplets: {
|
b: req.tetraplets[0],
|
||||||
array: req.tetraplets[0]
|
},
|
||||||
},
|
};
|
||||||
};
|
resp.retCode = ResultCodes.success;
|
||||||
resp.retCode = ResultCodes.success;
|
resp.result = service.bytes_from_b58(req.args[0], callParams);
|
||||||
resp.result = service.array_length(req.args[0], callParams)
|
}
|
||||||
|
|
||||||
}
|
if (req.fnName === 'bytes_to_b58') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
|
tetraplets: {
|
||||||
|
bs: req.tetraplets[0],
|
||||||
|
},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
resp.result = service.bytes_to_b58(req.args[0], callParams);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (req.fnName === 'concat') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
|
tetraplets: {
|
||||||
|
a: req.tetraplets[0],
|
||||||
|
b: req.tetraplets[1],
|
||||||
|
c: req.tetraplets[2],
|
||||||
|
d: req.tetraplets[3],
|
||||||
|
},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
resp.result = service.concat(
|
||||||
|
req.args[0],
|
||||||
|
req.args[1].length === 0 ? null : req.args[1][0],
|
||||||
|
req.args[2].length === 0 ? null : req.args[2][0],
|
||||||
|
req.args[3].length === 0 ? null : req.args[3][0],
|
||||||
|
callParams,
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
if (req.fnName === 'bytes_from_b58') {
|
if (req.fnName === 'concat_strings') {
|
||||||
|
const callParams = {
|
||||||
const callParams = {
|
...req.particleContext,
|
||||||
...req.particleContext,
|
tetraplets: {
|
||||||
tetraplets: {
|
a: req.tetraplets[0],
|
||||||
b: req.tetraplets[0]
|
b: req.tetraplets[1],
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
resp.retCode = ResultCodes.success;
|
resp.retCode = ResultCodes.success;
|
||||||
resp.result = service.bytes_from_b58(req.args[0], callParams)
|
resp.result = service.concat_strings(req.args[0], req.args[1], callParams);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
if (req.fnName === 'identity') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
|
tetraplets: {
|
||||||
|
s: req.tetraplets[0],
|
||||||
|
},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
|
||||||
|
var respResult = service.identity(req.args[0].length === 0 ? null : req.args[0][0], callParams);
|
||||||
|
resp.result = respResult === null ? [] : [respResult];
|
||||||
|
}
|
||||||
|
|
||||||
if (req.fnName === 'bytes_to_b58') {
|
if (req.fnName === 'noop') {
|
||||||
|
const callParams = {
|
||||||
const callParams = {
|
...req.particleContext,
|
||||||
...req.particleContext,
|
tetraplets: {},
|
||||||
tetraplets: {
|
};
|
||||||
bs: req.tetraplets[0]
|
resp.retCode = ResultCodes.success;
|
||||||
},
|
service.noop(callParams);
|
||||||
};
|
resp.result = {};
|
||||||
resp.retCode = ResultCodes.success;
|
}
|
||||||
resp.result = service.bytes_to_b58(req.args[0], callParams)
|
|
||||||
|
|
||||||
}
|
if (req.fnName === 'sha256_string') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
|
tetraplets: {
|
||||||
|
s: req.tetraplets[0],
|
||||||
|
},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
resp.result = service.sha256_string(req.args[0], callParams);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (req.fnName === 'string_from_b58') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
|
tetraplets: {
|
||||||
|
b: req.tetraplets[0],
|
||||||
|
},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
resp.result = service.string_from_b58(req.args[0], callParams);
|
||||||
|
}
|
||||||
|
|
||||||
if (req.fnName === 'concat') {
|
if (req.fnName === 'string_to_b58') {
|
||||||
|
const callParams = {
|
||||||
const callParams = {
|
...req.particleContext,
|
||||||
...req.particleContext,
|
tetraplets: {
|
||||||
tetraplets: {
|
s: req.tetraplets[0],
|
||||||
a: req.tetraplets[0],b: req.tetraplets[1],c: req.tetraplets[2],d: req.tetraplets[3]
|
},
|
||||||
},
|
};
|
||||||
};
|
resp.retCode = ResultCodes.success;
|
||||||
resp.retCode = ResultCodes.success;
|
resp.result = service.string_to_b58(req.args[0], callParams);
|
||||||
resp.result = service.concat(req.args[0], req.args[1].length === 0 ? null : req.args[1][0], req.args[2].length === 0 ? null : req.args[2][0], req.args[3].length === 0 ? null : req.args[3][0], callParams)
|
}
|
||||||
|
|
||||||
}
|
next();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface MyExportSrvDef {
|
||||||
|
another_str: (callParams: CallParams<null>) => string;
|
||||||
|
}
|
||||||
|
|
||||||
if (req.fnName === 'concat_strings') {
|
export function registerMyExportSrv(service: MyExportSrvDef): void;
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
a: req.tetraplets[0],b: req.tetraplets[1]
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
resp.result = service.concat_strings(req.args[0], req.args[1], callParams)
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'identity') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
s: req.tetraplets[0]
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
|
|
||||||
var respResult = service.identity(req.args[0].length === 0 ? null : req.args[0][0], callParams);
|
|
||||||
resp.result = respResult === null ? [] : [respResult]
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'noop') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
service.noop(callParams); resp.result = {}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'sha256_string') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
s: req.tetraplets[0]
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
resp.result = service.sha256_string(req.args[0], callParams)
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'string_from_b58') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
b: req.tetraplets[0]
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
resp.result = service.string_from_b58(req.args[0], callParams)
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'string_to_b58') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
s: req.tetraplets[0]
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
resp.result = service.string_to_b58(req.args[0], callParams)
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
next();
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
export interface MyExportSrvDef {
|
|
||||||
another_str: (callParams: CallParams<null>) => string;
|
|
||||||
}
|
|
||||||
|
|
||||||
export function registerMyExportSrv(service: MyExportSrvDef): void;
|
|
||||||
export function registerMyExportSrv(serviceId: string, service: MyExportSrvDef): void;
|
export function registerMyExportSrv(serviceId: string, service: MyExportSrvDef): void;
|
||||||
export function registerMyExportSrv(peer: FluencePeer, service: MyExportSrvDef): void;
|
export function registerMyExportSrv(peer: FluencePeer, service: MyExportSrvDef): void;
|
||||||
export function registerMyExportSrv(peer: FluencePeer, serviceId: string, service: MyExportSrvDef): void;
|
export function registerMyExportSrv(peer: FluencePeer, serviceId: string, service: MyExportSrvDef): void;
|
||||||
export function registerMyExportSrv(...args: any) {
|
export function registerMyExportSrv(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let serviceId: any;
|
let serviceId: any;
|
||||||
let service: any;
|
let service: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof args[0] === 'string') {
|
if (typeof args[0] === 'string') {
|
||||||
serviceId = args[0];
|
serviceId = args[0];
|
||||||
} else if (typeof args[1] === 'string') {
|
} else if (typeof args[1] === 'string') {
|
||||||
serviceId = args[1];
|
serviceId = args[1];
|
||||||
}
|
} else {
|
||||||
else {
|
serviceId = 'my_export_srv';
|
||||||
serviceId = "my_export_srv"
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (!(args[0] instanceof FluencePeer) && typeof args[0] === 'object') {
|
// Figuring out which overload is the service.
|
||||||
|
// If the first argument is not Fluence Peer and it is an object, then it can only be the service def
|
||||||
|
// If the first argument is peer, we are checking further. The second argument might either be
|
||||||
|
// an object, that it must be the service object
|
||||||
|
// or a string, which is the service id. In that case the service is the third argument
|
||||||
|
if (!FluencePeer.isInstance(args[0]) && typeof args[0] === 'object') {
|
||||||
service = args[0];
|
service = args[0];
|
||||||
} else if (typeof args[1] === 'object') {
|
} else if (typeof args[1] === 'object') {
|
||||||
service = args[1];
|
service = args[1];
|
||||||
@ -277,54 +267,47 @@ export function registerMyExportSrv(peer: FluencePeer, serviceId: string, servic
|
|||||||
service = args[2];
|
service = args[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
peer.internals.callServiceHandler.use((req, resp, next) => {
|
peer.internals.callServiceHandler.use((req, resp, next) => {
|
||||||
if (req.serviceId !== serviceId) {
|
if (req.serviceId !== serviceId) {
|
||||||
next();
|
next();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'another_str') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
resp.result = service.another_str(callParams)
|
|
||||||
|
|
||||||
}
|
if (req.fnName === 'another_str') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
next();
|
tetraplets: {},
|
||||||
});
|
};
|
||||||
}
|
resp.retCode = ResultCodes.success;
|
||||||
|
resp.result = service.another_str(callParams);
|
||||||
|
}
|
||||||
|
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
// Functions
|
// Functions
|
||||||
|
|
||||||
export function some_str(config?: {ttl?: number}) : Promise<string>;
|
export function some_str(config?: { ttl?: number }): Promise<string>;
|
||||||
export function some_str(peer: FluencePeer, config?: {ttl?: number}) : Promise<string>;
|
export function some_str(peer: FluencePeer, config?: { ttl?: number }): Promise<string>;
|
||||||
export function some_str(...args: any) {
|
export function some_str(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
|
|
||||||
let config: any;
|
let config: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
config = args[1];
|
config = args[1];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
config = args[0];
|
config = args[0];
|
||||||
}
|
}
|
||||||
|
|
||||||
let request: RequestFlow;
|
let request: RequestFlow;
|
||||||
const promise = new Promise<string>((resolve, reject) => {
|
const promise = new Promise<string>((resolve, reject) => {
|
||||||
const r = new RequestFlowBuilder()
|
const r = new RequestFlowBuilder()
|
||||||
.disableInjections()
|
.disableInjections()
|
||||||
.withRawScript(
|
.withRawScript(
|
||||||
`
|
`
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(call %init_peer_id% ("getDataSrv" "-relay-") [] -relay-)
|
(call %init_peer_id% ("getDataSrv" "-relay-") [] -relay-)
|
||||||
@ -337,16 +320,16 @@ export function registerMyExportSrv(peer: FluencePeer, serviceId: string, servic
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
const [res] = args;
|
const [res] = args;
|
||||||
resolve(res);
|
resolve(res);
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -356,38 +339,36 @@ export function registerMyExportSrv(peer: FluencePeer, serviceId: string, servic
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for some_str');
|
reject('Request timed out for some_str');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
export function some_string(config?: { ttl?: number }): Promise<string>;
|
||||||
|
export function some_string(peer: FluencePeer, config?: { ttl?: number }): Promise<string>;
|
||||||
|
export function some_string(...args: any) {
|
||||||
|
let peer: FluencePeer;
|
||||||
|
|
||||||
export function some_string(config?: {ttl?: number}) : Promise<string>;
|
let config: any;
|
||||||
export function some_string(peer: FluencePeer, config?: {ttl?: number}) : Promise<string>;
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
export function some_string(...args: any) {
|
peer = args[0];
|
||||||
let peer: FluencePeer;
|
config = args[1];
|
||||||
|
} else {
|
||||||
let config: any;
|
peer = Fluence.getPeer();
|
||||||
if (args[0] instanceof FluencePeer) {
|
config = args[0];
|
||||||
peer = args[0];
|
}
|
||||||
config = args[1];
|
|
||||||
} else {
|
let request: RequestFlow;
|
||||||
peer = FluencePeer.default;
|
const promise = new Promise<string>((resolve, reject) => {
|
||||||
config = args[0];
|
const r = new RequestFlowBuilder()
|
||||||
}
|
.disableInjections()
|
||||||
|
.withRawScript(
|
||||||
let request: RequestFlow;
|
`
|
||||||
const promise = new Promise<string>((resolve, reject) => {
|
|
||||||
const r = new RequestFlowBuilder()
|
|
||||||
.disableInjections()
|
|
||||||
.withRawScript(
|
|
||||||
`
|
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(call %init_peer_id% ("getDataSrv" "-relay-") [] -relay-)
|
(call %init_peer_id% ("getDataSrv" "-relay-") [] -relay-)
|
||||||
@ -400,16 +381,16 @@ export function registerMyExportSrv(peer: FluencePeer, serviceId: string, servic
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
const [res] = args;
|
const [res] = args;
|
||||||
resolve(res);
|
resolve(res);
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -419,38 +400,36 @@ export function registerMyExportSrv(peer: FluencePeer, serviceId: string, servic
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for some_string');
|
reject('Request timed out for some_string');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
export function decl_foo(config?: { ttl?: number }): Promise<string>;
|
||||||
|
export function decl_foo(peer: FluencePeer, config?: { ttl?: number }): Promise<string>;
|
||||||
|
export function decl_foo(...args: any) {
|
||||||
|
let peer: FluencePeer;
|
||||||
|
|
||||||
export function decl_foo(config?: {ttl?: number}) : Promise<string>;
|
let config: any;
|
||||||
export function decl_foo(peer: FluencePeer, config?: {ttl?: number}) : Promise<string>;
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
export function decl_foo(...args: any) {
|
peer = args[0];
|
||||||
let peer: FluencePeer;
|
config = args[1];
|
||||||
|
} else {
|
||||||
let config: any;
|
peer = Fluence.getPeer();
|
||||||
if (args[0] instanceof FluencePeer) {
|
config = args[0];
|
||||||
peer = args[0];
|
}
|
||||||
config = args[1];
|
|
||||||
} else {
|
let request: RequestFlow;
|
||||||
peer = FluencePeer.default;
|
const promise = new Promise<string>((resolve, reject) => {
|
||||||
config = args[0];
|
const r = new RequestFlowBuilder()
|
||||||
}
|
.disableInjections()
|
||||||
|
.withRawScript(
|
||||||
let request: RequestFlow;
|
`
|
||||||
const promise = new Promise<string>((resolve, reject) => {
|
|
||||||
const r = new RequestFlowBuilder()
|
|
||||||
.disableInjections()
|
|
||||||
.withRawScript(
|
|
||||||
`
|
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -466,16 +445,16 @@ export function registerMyExportSrv(peer: FluencePeer, serviceId: string, servic
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
const [res] = args;
|
const [res] = args;
|
||||||
resolve(res);
|
resolve(res);
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -485,38 +464,36 @@ export function registerMyExportSrv(peer: FluencePeer, serviceId: string, servic
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for decl_foo');
|
reject('Request timed out for decl_foo');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
export function decl_bar(config?: { ttl?: number }): Promise<string>;
|
||||||
|
export function decl_bar(peer: FluencePeer, config?: { ttl?: number }): Promise<string>;
|
||||||
|
export function decl_bar(...args: any) {
|
||||||
|
let peer: FluencePeer;
|
||||||
|
|
||||||
export function decl_bar(config?: {ttl?: number}) : Promise<string>;
|
let config: any;
|
||||||
export function decl_bar(peer: FluencePeer, config?: {ttl?: number}) : Promise<string>;
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
export function decl_bar(...args: any) {
|
peer = args[0];
|
||||||
let peer: FluencePeer;
|
config = args[1];
|
||||||
|
} else {
|
||||||
let config: any;
|
peer = Fluence.getPeer();
|
||||||
if (args[0] instanceof FluencePeer) {
|
config = args[0];
|
||||||
peer = args[0];
|
}
|
||||||
config = args[1];
|
|
||||||
} else {
|
let request: RequestFlow;
|
||||||
peer = FluencePeer.default;
|
const promise = new Promise<string>((resolve, reject) => {
|
||||||
config = args[0];
|
const r = new RequestFlowBuilder()
|
||||||
}
|
.disableInjections()
|
||||||
|
.withRawScript(
|
||||||
let request: RequestFlow;
|
`
|
||||||
const promise = new Promise<string>((resolve, reject) => {
|
|
||||||
const r = new RequestFlowBuilder()
|
|
||||||
.disableInjections()
|
|
||||||
.withRawScript(
|
|
||||||
`
|
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(call %init_peer_id% ("getDataSrv" "-relay-") [] -relay-)
|
(call %init_peer_id% ("getDataSrv" "-relay-") [] -relay-)
|
||||||
@ -529,16 +506,16 @@ export function registerMyExportSrv(peer: FluencePeer, serviceId: string, servic
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
const [res] = args;
|
const [res] = args;
|
||||||
resolve(res);
|
resolve(res);
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -548,38 +525,36 @@ export function registerMyExportSrv(peer: FluencePeer, serviceId: string, servic
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for decl_bar');
|
reject('Request timed out for decl_bar');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
export function some_random_func(config?: { ttl?: number }): Promise<string>;
|
||||||
|
export function some_random_func(peer: FluencePeer, config?: { ttl?: number }): Promise<string>;
|
||||||
|
export function some_random_func(...args: any) {
|
||||||
|
let peer: FluencePeer;
|
||||||
|
|
||||||
export function some_random_func(config?: {ttl?: number}) : Promise<string>;
|
let config: any;
|
||||||
export function some_random_func(peer: FluencePeer, config?: {ttl?: number}) : Promise<string>;
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
export function some_random_func(...args: any) {
|
peer = args[0];
|
||||||
let peer: FluencePeer;
|
config = args[1];
|
||||||
|
} else {
|
||||||
let config: any;
|
peer = Fluence.getPeer();
|
||||||
if (args[0] instanceof FluencePeer) {
|
config = args[0];
|
||||||
peer = args[0];
|
}
|
||||||
config = args[1];
|
|
||||||
} else {
|
let request: RequestFlow;
|
||||||
peer = FluencePeer.default;
|
const promise = new Promise<string>((resolve, reject) => {
|
||||||
config = args[0];
|
const r = new RequestFlowBuilder()
|
||||||
}
|
.disableInjections()
|
||||||
|
.withRawScript(
|
||||||
let request: RequestFlow;
|
`
|
||||||
const promise = new Promise<string>((resolve, reject) => {
|
|
||||||
const r = new RequestFlowBuilder()
|
|
||||||
.disableInjections()
|
|
||||||
.withRawScript(
|
|
||||||
`
|
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(call %init_peer_id% ("getDataSrv" "-relay-") [] -relay-)
|
(call %init_peer_id% ("getDataSrv" "-relay-") [] -relay-)
|
||||||
@ -592,16 +567,16 @@ export function registerMyExportSrv(peer: FluencePeer, serviceId: string, servic
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
const [res] = args;
|
const [res] = args;
|
||||||
resolve(res);
|
resolve(res);
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -611,13 +586,12 @@ export function registerMyExportSrv(peer: FluencePeer, serviceId: string, servic
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for some_random_func');
|
reject('Request timed out for some_random_func');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* This file is auto-generated. Do not edit manually: changes may be erased.
|
* This file is auto-generated. Do not edit manually: changes may be erased.
|
||||||
* Generated by Aqua compiler: https://github.com/fluencelabs/aqua/.
|
* 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
|
* If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues
|
||||||
* Aqua version: 0.3.0-SNAPSHOT
|
* Aqua version: 0.3.0-SNAPSHOT
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence, FluencePeer } from '@fluencelabs/fluence';
|
||||||
import {
|
import {
|
||||||
ResultCodes,
|
ResultCodes,
|
||||||
RequestFlow,
|
RequestFlow,
|
||||||
@ -14,37 +14,40 @@ import {
|
|||||||
CallParams,
|
CallParams,
|
||||||
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
||||||
|
|
||||||
|
|
||||||
// Services
|
// Services
|
||||||
|
|
||||||
export interface StringServiceDef {
|
export interface StringServiceDef {
|
||||||
concat: (a: string, b: string, callParams: CallParams<'a' | 'b'>) => string;
|
concat: (a: string, b: string, callParams: CallParams<'a' | 'b'>) => string;
|
||||||
}
|
}
|
||||||
|
|
||||||
export function registerStringService(service: StringServiceDef): void;
|
export function registerStringService(service: StringServiceDef): void;
|
||||||
export function registerStringService(serviceId: string, service: StringServiceDef): void;
|
export function registerStringService(serviceId: string, service: StringServiceDef): void;
|
||||||
export function registerStringService(peer: FluencePeer, service: StringServiceDef): void;
|
export function registerStringService(peer: FluencePeer, service: StringServiceDef): void;
|
||||||
export function registerStringService(peer: FluencePeer, serviceId: string, service: StringServiceDef): void;
|
export function registerStringService(peer: FluencePeer, serviceId: string, service: StringServiceDef): void;
|
||||||
export function registerStringService(...args: any) {
|
export function registerStringService(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let serviceId: any;
|
let serviceId: any;
|
||||||
let service: any;
|
let service: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof args[0] === 'string') {
|
if (typeof args[0] === 'string') {
|
||||||
serviceId = args[0];
|
serviceId = args[0];
|
||||||
} else if (typeof args[1] === 'string') {
|
} else if (typeof args[1] === 'string') {
|
||||||
serviceId = args[1];
|
serviceId = args[1];
|
||||||
}
|
} else {
|
||||||
else {
|
serviceId = 'string_service';
|
||||||
serviceId = "string_service"
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (!(args[0] instanceof FluencePeer) && typeof args[0] === 'object') {
|
// Figuring out which overload is the service.
|
||||||
|
// If the first argument is not Fluence Peer and it is an object, then it can only be the service def
|
||||||
|
// If the first argument is peer, we are checking further. The second argument might either be
|
||||||
|
// an object, that it must be the service object
|
||||||
|
// or a string, which is the service id. In that case the service is the third argument
|
||||||
|
if (!FluencePeer.isInstance(args[0]) && typeof args[0] === 'object') {
|
||||||
service = args[0];
|
service = args[0];
|
||||||
} else if (typeof args[1] === 'object') {
|
} else if (typeof args[1] === 'object') {
|
||||||
service = args[1];
|
service = args[1];
|
||||||
@ -52,54 +55,50 @@ export function registerStringService(peer: FluencePeer, serviceId: string, serv
|
|||||||
service = args[2];
|
service = args[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
peer.internals.callServiceHandler.use((req, resp, next) => {
|
peer.internals.callServiceHandler.use((req, resp, next) => {
|
||||||
if (req.serviceId !== serviceId) {
|
if (req.serviceId !== serviceId) {
|
||||||
next();
|
next();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'concat') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
a: req.tetraplets[0],b: req.tetraplets[1]
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
resp.result = service.concat(req.args[0], req.args[1], callParams)
|
|
||||||
|
|
||||||
}
|
if (req.fnName === 'concat') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
next();
|
tetraplets: {
|
||||||
});
|
a: req.tetraplets[0],
|
||||||
}
|
b: req.tetraplets[1],
|
||||||
|
},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
resp.result = service.concat(req.args[0], req.args[1], callParams);
|
||||||
|
}
|
||||||
|
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
// Functions
|
// Functions
|
||||||
|
|
||||||
export function concat_foobars(config?: {ttl?: number}) : Promise<string>;
|
export function concat_foobars(config?: { ttl?: number }): Promise<string>;
|
||||||
export function concat_foobars(peer: FluencePeer, config?: {ttl?: number}) : Promise<string>;
|
export function concat_foobars(peer: FluencePeer, config?: { ttl?: number }): Promise<string>;
|
||||||
export function concat_foobars(...args: any) {
|
export function concat_foobars(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
|
|
||||||
let config: any;
|
let config: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
config = args[1];
|
config = args[1];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
config = args[0];
|
config = args[0];
|
||||||
}
|
}
|
||||||
|
|
||||||
let request: RequestFlow;
|
let request: RequestFlow;
|
||||||
const promise = new Promise<string>((resolve, reject) => {
|
const promise = new Promise<string>((resolve, reject) => {
|
||||||
const r = new RequestFlowBuilder()
|
const r = new RequestFlowBuilder()
|
||||||
.disableInjections()
|
.disableInjections()
|
||||||
.withRawScript(
|
.withRawScript(
|
||||||
`
|
`
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -133,16 +132,16 @@ export function registerStringService(peer: FluencePeer, serviceId: string, serv
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
const [res] = args;
|
const [res] = args;
|
||||||
resolve(res);
|
resolve(res);
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -152,13 +151,12 @@ export function registerStringService(peer: FluencePeer, serviceId: string, serv
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for concat_foobars');
|
reject('Request timed out for concat_foobars');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* This file is auto-generated. Do not edit manually: changes may be erased.
|
* This file is auto-generated. Do not edit manually: changes may be erased.
|
||||||
* Generated by Aqua compiler: https://github.com/fluencelabs/aqua/.
|
* 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
|
* If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues
|
||||||
* Aqua version: 0.3.0-SNAPSHOT
|
* Aqua version: 0.3.0-SNAPSHOT
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence, FluencePeer } from '@fluencelabs/fluence';
|
||||||
import {
|
import {
|
||||||
ResultCodes,
|
ResultCodes,
|
||||||
RequestFlow,
|
RequestFlow,
|
||||||
@ -14,37 +14,40 @@ import {
|
|||||||
CallParams,
|
CallParams,
|
||||||
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
||||||
|
|
||||||
|
|
||||||
// Services
|
// Services
|
||||||
|
|
||||||
export interface SubServiceDef {
|
export interface SubServiceDef {
|
||||||
sub: (s: string, callParams: CallParams<'s'>) => {one:string;two:number};
|
sub: (s: string, callParams: CallParams<'s'>) => { one: string; two: number };
|
||||||
}
|
}
|
||||||
|
|
||||||
export function registerSubService(service: SubServiceDef): void;
|
export function registerSubService(service: SubServiceDef): void;
|
||||||
export function registerSubService(serviceId: string, service: SubServiceDef): void;
|
export function registerSubService(serviceId: string, service: SubServiceDef): void;
|
||||||
export function registerSubService(peer: FluencePeer, service: SubServiceDef): void;
|
export function registerSubService(peer: FluencePeer, service: SubServiceDef): void;
|
||||||
export function registerSubService(peer: FluencePeer, serviceId: string, service: SubServiceDef): void;
|
export function registerSubService(peer: FluencePeer, serviceId: string, service: SubServiceDef): void;
|
||||||
export function registerSubService(...args: any) {
|
export function registerSubService(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let serviceId: any;
|
let serviceId: any;
|
||||||
let service: any;
|
let service: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof args[0] === 'string') {
|
if (typeof args[0] === 'string') {
|
||||||
serviceId = args[0];
|
serviceId = args[0];
|
||||||
} else if (typeof args[1] === 'string') {
|
} else if (typeof args[1] === 'string') {
|
||||||
serviceId = args[1];
|
serviceId = args[1];
|
||||||
}
|
} else {
|
||||||
else {
|
serviceId = 'sub_service';
|
||||||
serviceId = "sub_service"
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (!(args[0] instanceof FluencePeer) && typeof args[0] === 'object') {
|
// Figuring out which overload is the service.
|
||||||
|
// If the first argument is not Fluence Peer and it is an object, then it can only be the service def
|
||||||
|
// If the first argument is peer, we are checking further. The second argument might either be
|
||||||
|
// an object, that it must be the service object
|
||||||
|
// or a string, which is the service id. In that case the service is the third argument
|
||||||
|
if (!FluencePeer.isInstance(args[0]) && typeof args[0] === 'object') {
|
||||||
service = args[0];
|
service = args[0];
|
||||||
} else if (typeof args[1] === 'object') {
|
} else if (typeof args[1] === 'object') {
|
||||||
service = args[1];
|
service = args[1];
|
||||||
@ -52,54 +55,49 @@ export function registerSubService(peer: FluencePeer, serviceId: string, service
|
|||||||
service = args[2];
|
service = args[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
peer.internals.callServiceHandler.use((req, resp, next) => {
|
peer.internals.callServiceHandler.use((req, resp, next) => {
|
||||||
if (req.serviceId !== serviceId) {
|
if (req.serviceId !== serviceId) {
|
||||||
next();
|
next();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'sub') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
s: req.tetraplets[0]
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
resp.result = service.sub(req.args[0], callParams)
|
|
||||||
|
|
||||||
}
|
if (req.fnName === 'sub') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
next();
|
tetraplets: {
|
||||||
});
|
s: req.tetraplets[0],
|
||||||
}
|
},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
resp.result = service.sub(req.args[0], callParams);
|
||||||
|
}
|
||||||
|
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
// Functions
|
// Functions
|
||||||
|
|
||||||
export function subImport(config?: {ttl?: number}) : Promise<{one:string;two:number}>;
|
export function subImport(config?: { ttl?: number }): Promise<{ one: string; two: number }>;
|
||||||
export function subImport(peer: FluencePeer, config?: {ttl?: number}) : Promise<{one:string;two:number}>;
|
export function subImport(peer: FluencePeer, config?: { ttl?: number }): Promise<{ one: string; two: number }>;
|
||||||
export function subImport(...args: any) {
|
export function subImport(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
|
|
||||||
let config: any;
|
let config: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
config = args[1];
|
config = args[1];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
config = args[0];
|
config = args[0];
|
||||||
}
|
}
|
||||||
|
|
||||||
let request: RequestFlow;
|
let request: RequestFlow;
|
||||||
const promise = new Promise<{one:string;two:number}>((resolve, reject) => {
|
const promise = new Promise<{ one: string; two: number }>((resolve, reject) => {
|
||||||
const r = new RequestFlowBuilder()
|
const r = new RequestFlowBuilder()
|
||||||
.disableInjections()
|
.disableInjections()
|
||||||
.withRawScript(
|
.withRawScript(
|
||||||
`
|
`
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -115,16 +113,16 @@ export function registerSubService(peer: FluencePeer, serviceId: string, service
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
const [res] = args;
|
const [res] = args;
|
||||||
resolve(res);
|
resolve(res);
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -134,13 +132,12 @@ export function registerSubService(peer: FluencePeer, serviceId: string, service
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for subImport');
|
reject('Request timed out for subImport');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* This file is auto-generated. Do not edit manually: changes may be erased.
|
* This file is auto-generated. Do not edit manually: changes may be erased.
|
||||||
* Generated by Aqua compiler: https://github.com/fluencelabs/aqua/.
|
* 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
|
* If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues
|
||||||
* Aqua version: 0.3.0-SNAPSHOT
|
* Aqua version: 0.3.0-SNAPSHOT
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence, FluencePeer } from '@fluencelabs/fluence';
|
||||||
import {
|
import {
|
||||||
ResultCodes,
|
ResultCodes,
|
||||||
RequestFlow,
|
RequestFlow,
|
||||||
@ -14,37 +14,40 @@ import {
|
|||||||
CallParams,
|
CallParams,
|
||||||
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
||||||
|
|
||||||
|
|
||||||
// Services
|
// Services
|
||||||
|
|
||||||
export interface GetStrDef {
|
export interface GetStrDef {
|
||||||
retStr: (arg0: string, callParams: CallParams<'arg0'>) => string;
|
retStr: (arg0: string, callParams: CallParams<'arg0'>) => string;
|
||||||
}
|
}
|
||||||
|
|
||||||
export function registerGetStr(service: GetStrDef): void;
|
export function registerGetStr(service: GetStrDef): void;
|
||||||
export function registerGetStr(serviceId: string, service: GetStrDef): void;
|
export function registerGetStr(serviceId: string, service: GetStrDef): void;
|
||||||
export function registerGetStr(peer: FluencePeer, service: GetStrDef): void;
|
export function registerGetStr(peer: FluencePeer, service: GetStrDef): void;
|
||||||
export function registerGetStr(peer: FluencePeer, serviceId: string, service: GetStrDef): void;
|
export function registerGetStr(peer: FluencePeer, serviceId: string, service: GetStrDef): void;
|
||||||
export function registerGetStr(...args: any) {
|
export function registerGetStr(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let serviceId: any;
|
let serviceId: any;
|
||||||
let service: any;
|
let service: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof args[0] === 'string') {
|
if (typeof args[0] === 'string') {
|
||||||
serviceId = args[0];
|
serviceId = args[0];
|
||||||
} else if (typeof args[1] === 'string') {
|
} else if (typeof args[1] === 'string') {
|
||||||
serviceId = args[1];
|
serviceId = args[1];
|
||||||
}
|
} else {
|
||||||
else {
|
serviceId = 'multiret-test';
|
||||||
serviceId = "multiret-test"
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (!(args[0] instanceof FluencePeer) && typeof args[0] === 'object') {
|
// Figuring out which overload is the service.
|
||||||
|
// If the first argument is not Fluence Peer and it is an object, then it can only be the service def
|
||||||
|
// If the first argument is peer, we are checking further. The second argument might either be
|
||||||
|
// an object, that it must be the service object
|
||||||
|
// or a string, which is the service id. In that case the service is the third argument
|
||||||
|
if (!FluencePeer.isInstance(args[0]) && typeof args[0] === 'object') {
|
||||||
service = args[0];
|
service = args[0];
|
||||||
} else if (typeof args[1] === 'object') {
|
} else if (typeof args[1] === 'object') {
|
||||||
service = args[1];
|
service = args[1];
|
||||||
@ -52,61 +55,59 @@ export function registerGetStr(peer: FluencePeer, serviceId: string, service: Ge
|
|||||||
service = args[2];
|
service = args[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
peer.internals.callServiceHandler.use((req, resp, next) => {
|
peer.internals.callServiceHandler.use((req, resp, next) => {
|
||||||
if (req.serviceId !== serviceId) {
|
if (req.serviceId !== serviceId) {
|
||||||
next();
|
next();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'retStr') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
arg0: req.tetraplets[0]
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
resp.result = service.retStr(req.args[0], callParams)
|
|
||||||
|
|
||||||
}
|
if (req.fnName === 'retStr') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
next();
|
tetraplets: {
|
||||||
});
|
arg0: req.tetraplets[0],
|
||||||
}
|
},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
resp.result = service.retStr(req.args[0], callParams);
|
||||||
|
}
|
||||||
|
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
export interface GetNumDef {
|
export interface GetNumDef {
|
||||||
retNum: (callParams: CallParams<null>) => number;
|
retNum: (callParams: CallParams<null>) => number;
|
||||||
}
|
}
|
||||||
|
|
||||||
export function registerGetNum(service: GetNumDef): void;
|
export function registerGetNum(service: GetNumDef): void;
|
||||||
export function registerGetNum(serviceId: string, service: GetNumDef): void;
|
export function registerGetNum(serviceId: string, service: GetNumDef): void;
|
||||||
export function registerGetNum(peer: FluencePeer, service: GetNumDef): void;
|
export function registerGetNum(peer: FluencePeer, service: GetNumDef): void;
|
||||||
export function registerGetNum(peer: FluencePeer, serviceId: string, service: GetNumDef): void;
|
export function registerGetNum(peer: FluencePeer, serviceId: string, service: GetNumDef): void;
|
||||||
export function registerGetNum(...args: any) {
|
export function registerGetNum(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let serviceId: any;
|
let serviceId: any;
|
||||||
let service: any;
|
let service: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof args[0] === 'string') {
|
if (typeof args[0] === 'string') {
|
||||||
serviceId = args[0];
|
serviceId = args[0];
|
||||||
} else if (typeof args[1] === 'string') {
|
} else if (typeof args[1] === 'string') {
|
||||||
serviceId = args[1];
|
serviceId = args[1];
|
||||||
}
|
} else {
|
||||||
else {
|
serviceId = 'multiret-num';
|
||||||
serviceId = "multiret-num"
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (!(args[0] instanceof FluencePeer) && typeof args[0] === 'object') {
|
// Figuring out which overload is the service.
|
||||||
|
// If the first argument is not Fluence Peer and it is an object, then it can only be the service def
|
||||||
|
// If the first argument is peer, we are checking further. The second argument might either be
|
||||||
|
// an object, that it must be the service object
|
||||||
|
// or a string, which is the service id. In that case the service is the third argument
|
||||||
|
if (!FluencePeer.isInstance(args[0]) && typeof args[0] === 'object') {
|
||||||
service = args[0];
|
service = args[0];
|
||||||
} else if (typeof args[1] === 'object') {
|
} else if (typeof args[1] === 'object') {
|
||||||
service = args[1];
|
service = args[1];
|
||||||
@ -114,54 +115,47 @@ export function registerGetNum(peer: FluencePeer, serviceId: string, service: Ge
|
|||||||
service = args[2];
|
service = args[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
peer.internals.callServiceHandler.use((req, resp, next) => {
|
peer.internals.callServiceHandler.use((req, resp, next) => {
|
||||||
if (req.serviceId !== serviceId) {
|
if (req.serviceId !== serviceId) {
|
||||||
next();
|
next();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'retNum') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
resp.result = service.retNum(callParams)
|
|
||||||
|
|
||||||
}
|
if (req.fnName === 'retNum') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
next();
|
tetraplets: {},
|
||||||
});
|
};
|
||||||
}
|
resp.retCode = ResultCodes.success;
|
||||||
|
resp.result = service.retNum(callParams);
|
||||||
|
}
|
||||||
|
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
// Functions
|
// Functions
|
||||||
|
|
||||||
export function tupleFunc(config?: {ttl?: number}) : Promise<[string, number]>;
|
export function tupleFunc(config?: { ttl?: number }): Promise<[string, number]>;
|
||||||
export function tupleFunc(peer: FluencePeer, config?: {ttl?: number}) : Promise<[string, number]>;
|
export function tupleFunc(peer: FluencePeer, config?: { ttl?: number }): Promise<[string, number]>;
|
||||||
export function tupleFunc(...args: any) {
|
export function tupleFunc(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
|
|
||||||
let config: any;
|
let config: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
config = args[1];
|
config = args[1];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
config = args[0];
|
config = args[0];
|
||||||
}
|
}
|
||||||
|
|
||||||
let request: RequestFlow;
|
let request: RequestFlow;
|
||||||
const promise = new Promise<[string, number]>((resolve, reject) => {
|
const promise = new Promise<[string, number]>((resolve, reject) => {
|
||||||
const r = new RequestFlowBuilder()
|
const r = new RequestFlowBuilder()
|
||||||
.disableInjections()
|
.disableInjections()
|
||||||
.withRawScript(
|
.withRawScript(
|
||||||
`
|
`
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -180,17 +174,17 @@ export function registerGetNum(peer: FluencePeer, serviceId: string, service: Ge
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
|
||||||
let opt: any = args;
|
|
||||||
|
|
||||||
return resolve(opt);
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
});
|
let opt: any = args;
|
||||||
|
|
||||||
|
return resolve(opt);
|
||||||
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -200,43 +194,50 @@ export function registerGetNum(peer: FluencePeer, serviceId: string, service: Ge
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for tupleFunc');
|
reject('Request timed out for tupleFunc');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
export function multiReturnFunc(
|
||||||
|
somethingToReturn: number[],
|
||||||
|
smthOption: string | null,
|
||||||
|
config?: { ttl?: number },
|
||||||
|
): Promise<[string[], number, string, number[], string | null, number]>;
|
||||||
|
export function multiReturnFunc(
|
||||||
|
peer: FluencePeer,
|
||||||
|
somethingToReturn: number[],
|
||||||
|
smthOption: string | null,
|
||||||
|
config?: { ttl?: number },
|
||||||
|
): Promise<[string[], number, string, number[], string | null, number]>;
|
||||||
|
export function multiReturnFunc(...args: any) {
|
||||||
|
let peer: FluencePeer;
|
||||||
|
let somethingToReturn: any;
|
||||||
|
let smthOption: any;
|
||||||
|
let config: any;
|
||||||
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
|
peer = args[0];
|
||||||
|
somethingToReturn = args[1];
|
||||||
|
smthOption = args[2];
|
||||||
|
config = args[3];
|
||||||
|
} else {
|
||||||
|
peer = Fluence.getPeer();
|
||||||
|
somethingToReturn = args[0];
|
||||||
|
smthOption = args[1];
|
||||||
|
config = args[2];
|
||||||
|
}
|
||||||
|
|
||||||
export function multiReturnFunc(somethingToReturn: number[], smthOption: string | null, config?: {ttl?: number}) : Promise<[string[], number, string, number[], string | null, number]>;
|
let request: RequestFlow;
|
||||||
export function multiReturnFunc(peer: FluencePeer, somethingToReturn: number[], smthOption: string | null, config?: {ttl?: number}) : Promise<[string[], number, string, number[], string | null, number]>;
|
const promise = new Promise<[string[], number, string, number[], string | null, number]>((resolve, reject) => {
|
||||||
export function multiReturnFunc(...args: any) {
|
const r = new RequestFlowBuilder()
|
||||||
let peer: FluencePeer;
|
.disableInjections()
|
||||||
let somethingToReturn: any;
|
.withRawScript(
|
||||||
let smthOption: any;
|
`
|
||||||
let config: any;
|
|
||||||
if (args[0] instanceof FluencePeer) {
|
|
||||||
peer = args[0];
|
|
||||||
somethingToReturn = args[1];
|
|
||||||
smthOption = args[2];
|
|
||||||
config = args[3];
|
|
||||||
} else {
|
|
||||||
peer = FluencePeer.default;
|
|
||||||
somethingToReturn = args[0];
|
|
||||||
smthOption = args[1];
|
|
||||||
config = args[2];
|
|
||||||
}
|
|
||||||
|
|
||||||
let request: RequestFlow;
|
|
||||||
const promise = new Promise<[string[], number, string, number[], string | null, number]>((resolve, reject) => {
|
|
||||||
const r = new RequestFlowBuilder()
|
|
||||||
.disableInjections()
|
|
||||||
.withRawScript(
|
|
||||||
`
|
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -270,22 +271,29 @@ config = args[2];
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'somethingToReturn', () => {
|
||||||
|
return somethingToReturn;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'smthOption', () => {
|
||||||
|
return smthOption === null ? [] : [smthOption];
|
||||||
});
|
});
|
||||||
h.on('getDataSrv', 'somethingToReturn', () => {return somethingToReturn;});
|
|
||||||
h.on('getDataSrv', 'smthOption', () => {return smthOption === null ? [] : [smthOption];});
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
let opt: any = args;
|
let opt: any = args;
|
||||||
|
|
||||||
if(Array.isArray(opt[4])) {
|
if (Array.isArray(opt[4])) {
|
||||||
if (opt[4].length === 0) { opt[4] = null; }
|
if (opt[4].length === 0) {
|
||||||
else {opt[4] = opt[4][0]; }
|
opt[4] = null;
|
||||||
}
|
} else {
|
||||||
return resolve(opt);
|
opt[4] = opt[4][0];
|
||||||
});
|
}
|
||||||
|
}
|
||||||
|
return resolve(opt);
|
||||||
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -295,13 +303,12 @@ h.on('getDataSrv', 'smthOption', () => {return smthOption === null ? [] : [smthO
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for multiReturnFunc');
|
reject('Request timed out for multiReturnFunc');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* This file is auto-generated. Do not edit manually: changes may be erased.
|
* This file is auto-generated. Do not edit manually: changes may be erased.
|
||||||
* Generated by Aqua compiler: https://github.com/fluencelabs/aqua/.
|
* 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
|
* If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues
|
||||||
* Aqua version: 0.3.0-SNAPSHOT
|
* Aqua version: 0.3.0-SNAPSHOT
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence, FluencePeer } from '@fluencelabs/fluence';
|
||||||
import {
|
import {
|
||||||
ResultCodes,
|
ResultCodes,
|
||||||
RequestFlow,
|
RequestFlow,
|
||||||
@ -14,37 +14,40 @@ import {
|
|||||||
CallParams,
|
CallParams,
|
||||||
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
||||||
|
|
||||||
|
|
||||||
// Services
|
// Services
|
||||||
|
|
||||||
export interface OpHDef {
|
export interface OpHDef {
|
||||||
identity: (s: string, callParams: CallParams<'s'>) => string;
|
identity: (s: string, callParams: CallParams<'s'>) => string;
|
||||||
}
|
}
|
||||||
|
|
||||||
export function registerOpH(service: OpHDef): void;
|
export function registerOpH(service: OpHDef): void;
|
||||||
export function registerOpH(serviceId: string, service: OpHDef): void;
|
export function registerOpH(serviceId: string, service: OpHDef): void;
|
||||||
export function registerOpH(peer: FluencePeer, service: OpHDef): void;
|
export function registerOpH(peer: FluencePeer, service: OpHDef): void;
|
||||||
export function registerOpH(peer: FluencePeer, serviceId: string, service: OpHDef): void;
|
export function registerOpH(peer: FluencePeer, serviceId: string, service: OpHDef): void;
|
||||||
export function registerOpH(...args: any) {
|
export function registerOpH(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let serviceId: any;
|
let serviceId: any;
|
||||||
let service: any;
|
let service: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof args[0] === 'string') {
|
if (typeof args[0] === 'string') {
|
||||||
serviceId = args[0];
|
serviceId = args[0];
|
||||||
} else if (typeof args[1] === 'string') {
|
} else if (typeof args[1] === 'string') {
|
||||||
serviceId = args[1];
|
serviceId = args[1];
|
||||||
}
|
} else {
|
||||||
else {
|
serviceId = 'opa';
|
||||||
serviceId = "opa"
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (!(args[0] instanceof FluencePeer) && typeof args[0] === 'object') {
|
// Figuring out which overload is the service.
|
||||||
|
// If the first argument is not Fluence Peer and it is an object, then it can only be the service def
|
||||||
|
// If the first argument is peer, we are checking further. The second argument might either be
|
||||||
|
// an object, that it must be the service object
|
||||||
|
// or a string, which is the service id. In that case the service is the third argument
|
||||||
|
if (!FluencePeer.isInstance(args[0]) && typeof args[0] === 'object') {
|
||||||
service = args[0];
|
service = args[0];
|
||||||
} else if (typeof args[1] === 'object') {
|
} else if (typeof args[1] === 'object') {
|
||||||
service = args[1];
|
service = args[1];
|
||||||
@ -52,56 +55,51 @@ export function registerOpH(peer: FluencePeer, serviceId: string, service: OpHDe
|
|||||||
service = args[2];
|
service = args[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
peer.internals.callServiceHandler.use((req, resp, next) => {
|
peer.internals.callServiceHandler.use((req, resp, next) => {
|
||||||
if (req.serviceId !== serviceId) {
|
if (req.serviceId !== serviceId) {
|
||||||
next();
|
next();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'identity') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
s: req.tetraplets[0]
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
resp.result = service.identity(req.args[0], callParams)
|
|
||||||
|
|
||||||
}
|
if (req.fnName === 'identity') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
next();
|
tetraplets: {
|
||||||
});
|
s: req.tetraplets[0],
|
||||||
}
|
},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
resp.result = service.identity(req.args[0], callParams);
|
||||||
|
}
|
||||||
|
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
// Functions
|
// Functions
|
||||||
|
|
||||||
export function a(b: string, config?: {ttl?: number}) : Promise<string>;
|
export function a(b: string, config?: { ttl?: number }): Promise<string>;
|
||||||
export function a(peer: FluencePeer, b: string, config?: {ttl?: number}) : Promise<string>;
|
export function a(peer: FluencePeer, b: string, config?: { ttl?: number }): Promise<string>;
|
||||||
export function a(...args: any) {
|
export function a(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let b: any;
|
let b: any;
|
||||||
let config: any;
|
let config: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
b = args[1];
|
b = args[1];
|
||||||
config = args[2];
|
config = args[2];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
b = args[0];
|
b = args[0];
|
||||||
config = args[1];
|
config = args[1];
|
||||||
}
|
}
|
||||||
|
|
||||||
let request: RequestFlow;
|
let request: RequestFlow;
|
||||||
const promise = new Promise<string>((resolve, reject) => {
|
const promise = new Promise<string>((resolve, reject) => {
|
||||||
const r = new RequestFlowBuilder()
|
const r = new RequestFlowBuilder()
|
||||||
.disableInjections()
|
.disableInjections()
|
||||||
.withRawScript(
|
.withRawScript(
|
||||||
`
|
`
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -120,16 +118,18 @@ config = args[1];
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'b', () => {
|
||||||
|
return b;
|
||||||
});
|
});
|
||||||
h.on('getDataSrv', 'b', () => {return b;});
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
const [res] = args;
|
const [res] = args;
|
||||||
resolve(res);
|
resolve(res);
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -139,40 +139,38 @@ config = args[1];
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for a');
|
reject('Request timed out for a');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
export function d(e: string, config?: { ttl?: number }): Promise<string>;
|
||||||
|
export function d(peer: FluencePeer, e: string, config?: { ttl?: number }): Promise<string>;
|
||||||
|
export function d(...args: any) {
|
||||||
|
let peer: FluencePeer;
|
||||||
|
let e: any;
|
||||||
|
let config: any;
|
||||||
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
|
peer = args[0];
|
||||||
|
e = args[1];
|
||||||
|
config = args[2];
|
||||||
|
} else {
|
||||||
|
peer = Fluence.getPeer();
|
||||||
|
e = args[0];
|
||||||
|
config = args[1];
|
||||||
|
}
|
||||||
|
|
||||||
export function d(e: string, config?: {ttl?: number}) : Promise<string>;
|
let request: RequestFlow;
|
||||||
export function d(peer: FluencePeer, e: string, config?: {ttl?: number}) : Promise<string>;
|
const promise = new Promise<string>((resolve, reject) => {
|
||||||
export function d(...args: any) {
|
const r = new RequestFlowBuilder()
|
||||||
let peer: FluencePeer;
|
.disableInjections()
|
||||||
let e: any;
|
.withRawScript(
|
||||||
let config: any;
|
`
|
||||||
if (args[0] instanceof FluencePeer) {
|
|
||||||
peer = args[0];
|
|
||||||
e = args[1];
|
|
||||||
config = args[2];
|
|
||||||
} else {
|
|
||||||
peer = FluencePeer.default;
|
|
||||||
e = args[0];
|
|
||||||
config = args[1];
|
|
||||||
}
|
|
||||||
|
|
||||||
let request: RequestFlow;
|
|
||||||
const promise = new Promise<string>((resolve, reject) => {
|
|
||||||
const r = new RequestFlowBuilder()
|
|
||||||
.disableInjections()
|
|
||||||
.withRawScript(
|
|
||||||
`
|
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -191,16 +189,18 @@ config = args[1];
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'e', () => {
|
||||||
|
return e;
|
||||||
});
|
});
|
||||||
h.on('getDataSrv', 'e', () => {return e;});
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
const [res] = args;
|
const [res] = args;
|
||||||
resolve(res);
|
resolve(res);
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -210,13 +210,12 @@ config = args[1];
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for d');
|
reject('Request timed out for d');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* This file is auto-generated. Do not edit manually: changes may be erased.
|
* This file is auto-generated. Do not edit manually: changes may be erased.
|
||||||
* Generated by Aqua compiler: https://github.com/fluencelabs/aqua/.
|
* 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
|
* If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues
|
||||||
* Aqua version: 0.3.0-SNAPSHOT
|
* Aqua version: 0.3.0-SNAPSHOT
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence, FluencePeer } from '@fluencelabs/fluence';
|
||||||
import {
|
import {
|
||||||
ResultCodes,
|
ResultCodes,
|
||||||
RequestFlow,
|
RequestFlow,
|
||||||
@ -14,94 +14,44 @@ import {
|
|||||||
CallParams,
|
CallParams,
|
||||||
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
||||||
|
|
||||||
|
|
||||||
// Services
|
// Services
|
||||||
|
|
||||||
export interface ServiceWithDefaultIdDef {
|
export interface ServiceWithDefaultIdDef {
|
||||||
hello: (s: string, callParams: CallParams<'s'>) => void;
|
hello: (s: string, callParams: CallParams<'s'>) => void;
|
||||||
}
|
|
||||||
|
|
||||||
export function registerServiceWithDefaultId(service: ServiceWithDefaultIdDef): void;
|
|
||||||
export function registerServiceWithDefaultId(serviceId: string, service: ServiceWithDefaultIdDef): void;
|
|
||||||
export function registerServiceWithDefaultId(peer: FluencePeer, service: ServiceWithDefaultIdDef): void;
|
|
||||||
export function registerServiceWithDefaultId(peer: FluencePeer, serviceId: string, service: ServiceWithDefaultIdDef): void;
|
|
||||||
export function registerServiceWithDefaultId(...args: any) {
|
|
||||||
let peer: FluencePeer;
|
|
||||||
let serviceId: any;
|
|
||||||
let service: any;
|
|
||||||
if (args[0] instanceof FluencePeer) {
|
|
||||||
peer = args[0];
|
|
||||||
} else {
|
|
||||||
peer = FluencePeer.default;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (typeof args[0] === 'string') {
|
|
||||||
serviceId = args[0];
|
|
||||||
} else if (typeof args[1] === 'string') {
|
|
||||||
serviceId = args[1];
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
serviceId = "defaultId"
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!(args[0] instanceof FluencePeer) && typeof args[0] === 'object') {
|
export function registerServiceWithDefaultId(service: ServiceWithDefaultIdDef): void;
|
||||||
service = args[0];
|
export function registerServiceWithDefaultId(serviceId: string, service: ServiceWithDefaultIdDef): void;
|
||||||
} else if (typeof args[1] === 'object') {
|
export function registerServiceWithDefaultId(peer: FluencePeer, service: ServiceWithDefaultIdDef): void;
|
||||||
service = args[1];
|
export function registerServiceWithDefaultId(
|
||||||
} else {
|
peer: FluencePeer,
|
||||||
service = args[2];
|
serviceId: string,
|
||||||
}
|
service: ServiceWithDefaultIdDef,
|
||||||
|
): void;
|
||||||
peer.internals.callServiceHandler.use((req, resp, next) => {
|
export function registerServiceWithDefaultId(...args: any) {
|
||||||
if (req.serviceId !== serviceId) {
|
|
||||||
next();
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'hello') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
s: req.tetraplets[0]
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
service.hello(req.args[0], callParams); resp.result = {}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
next();
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
export interface ServiceWithOUTDefaultIdDef {
|
|
||||||
hello: (s: string, callParams: CallParams<'s'>) => void;
|
|
||||||
}
|
|
||||||
|
|
||||||
export function registerServiceWithOUTDefaultId(serviceId: string, service: ServiceWithOUTDefaultIdDef): void;
|
|
||||||
export function registerServiceWithOUTDefaultId(peer: FluencePeer, serviceId: string, service: ServiceWithOUTDefaultIdDef): void;
|
|
||||||
export function registerServiceWithOUTDefaultId(...args: any) {
|
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let serviceId: any;
|
let serviceId: any;
|
||||||
let service: any;
|
let service: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof args[0] === 'string') {
|
if (typeof args[0] === 'string') {
|
||||||
serviceId = args[0];
|
serviceId = args[0];
|
||||||
} else if (typeof args[1] === 'string') {
|
} else if (typeof args[1] === 'string') {
|
||||||
serviceId = args[1];
|
serviceId = args[1];
|
||||||
}
|
} else {
|
||||||
|
serviceId = 'defaultId';
|
||||||
|
}
|
||||||
|
|
||||||
if (!(args[0] instanceof FluencePeer) && typeof args[0] === 'object') {
|
// Figuring out which overload is the service.
|
||||||
|
// If the first argument is not Fluence Peer and it is an object, then it can only be the service def
|
||||||
|
// If the first argument is peer, we are checking further. The second argument might either be
|
||||||
|
// an object, that it must be the service object
|
||||||
|
// or a string, which is the service id. In that case the service is the third argument
|
||||||
|
if (!FluencePeer.isInstance(args[0]) && typeof args[0] === 'object') {
|
||||||
service = args[0];
|
service = args[0];
|
||||||
} else if (typeof args[1] === 'object') {
|
} else if (typeof args[1] === 'object') {
|
||||||
service = args[1];
|
service = args[1];
|
||||||
@ -109,60 +59,121 @@ export function registerServiceWithOUTDefaultId(peer: FluencePeer, serviceId: st
|
|||||||
service = args[2];
|
service = args[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
peer.internals.callServiceHandler.use((req, resp, next) => {
|
peer.internals.callServiceHandler.use((req, resp, next) => {
|
||||||
if (req.serviceId !== serviceId) {
|
if (req.serviceId !== serviceId) {
|
||||||
next();
|
next();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'hello') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
s: req.tetraplets[0]
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
service.hello(req.args[0], callParams); resp.result = {}
|
|
||||||
|
|
||||||
}
|
if (req.fnName === 'hello') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
next();
|
tetraplets: {
|
||||||
});
|
s: req.tetraplets[0],
|
||||||
}
|
},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
service.hello(req.args[0], callParams);
|
||||||
|
resp.result = {};
|
||||||
|
}
|
||||||
|
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
export interface MoreMembersDef {
|
export interface ServiceWithOUTDefaultIdDef {
|
||||||
member1: (callParams: CallParams<null>) => void;
|
hello: (s: string, callParams: CallParams<'s'>) => void;
|
||||||
member2: (s1: string, callParams: CallParams<'s1'>) => void;
|
}
|
||||||
member3: (s1: string, s2: string, callParams: CallParams<'s1' | 's2'>) => void;
|
|
||||||
member4: (s1: string, s2: string, i: number, callParams: CallParams<'s1' | 's2' | 'i'>) => number;
|
|
||||||
member5: (s1: string, s2: string, i: number, callParams: CallParams<'s1' | 's2' | 'i'>) => number;
|
|
||||||
}
|
|
||||||
|
|
||||||
export function registerMoreMembers(serviceId: string, service: MoreMembersDef): void;
|
export function registerServiceWithOUTDefaultId(serviceId: string, service: ServiceWithOUTDefaultIdDef): void;
|
||||||
|
export function registerServiceWithOUTDefaultId(
|
||||||
|
peer: FluencePeer,
|
||||||
|
serviceId: string,
|
||||||
|
service: ServiceWithOUTDefaultIdDef,
|
||||||
|
): void;
|
||||||
|
export function registerServiceWithOUTDefaultId(...args: any) {
|
||||||
|
let peer: FluencePeer;
|
||||||
|
let serviceId: any;
|
||||||
|
let service: any;
|
||||||
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
|
peer = args[0];
|
||||||
|
} else {
|
||||||
|
peer = Fluence.getPeer();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (typeof args[0] === 'string') {
|
||||||
|
serviceId = args[0];
|
||||||
|
} else if (typeof args[1] === 'string') {
|
||||||
|
serviceId = args[1];
|
||||||
|
}
|
||||||
|
|
||||||
|
// Figuring out which overload is the service.
|
||||||
|
// If the first argument is not Fluence Peer and it is an object, then it can only be the service def
|
||||||
|
// If the first argument is peer, we are checking further. The second argument might either be
|
||||||
|
// an object, that it must be the service object
|
||||||
|
// or a string, which is the service id. In that case the service is the third argument
|
||||||
|
if (!FluencePeer.isInstance(args[0]) && typeof args[0] === 'object') {
|
||||||
|
service = args[0];
|
||||||
|
} else if (typeof args[1] === 'object') {
|
||||||
|
service = args[1];
|
||||||
|
} else {
|
||||||
|
service = args[2];
|
||||||
|
}
|
||||||
|
|
||||||
|
peer.internals.callServiceHandler.use((req, resp, next) => {
|
||||||
|
if (req.serviceId !== serviceId) {
|
||||||
|
next();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (req.fnName === 'hello') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
|
tetraplets: {
|
||||||
|
s: req.tetraplets[0],
|
||||||
|
},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
service.hello(req.args[0], callParams);
|
||||||
|
resp.result = {};
|
||||||
|
}
|
||||||
|
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface MoreMembersDef {
|
||||||
|
member1: (callParams: CallParams<null>) => void;
|
||||||
|
member2: (s1: string, callParams: CallParams<'s1'>) => void;
|
||||||
|
member3: (s1: string, s2: string, callParams: CallParams<'s1' | 's2'>) => void;
|
||||||
|
member4: (s1: string, s2: string, i: number, callParams: CallParams<'s1' | 's2' | 'i'>) => number;
|
||||||
|
member5: (s1: string, s2: string, i: number, callParams: CallParams<'s1' | 's2' | 'i'>) => number;
|
||||||
|
}
|
||||||
|
|
||||||
|
export function registerMoreMembers(serviceId: string, service: MoreMembersDef): void;
|
||||||
export function registerMoreMembers(peer: FluencePeer, serviceId: string, service: MoreMembersDef): void;
|
export function registerMoreMembers(peer: FluencePeer, serviceId: string, service: MoreMembersDef): void;
|
||||||
export function registerMoreMembers(...args: any) {
|
export function registerMoreMembers(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let serviceId: any;
|
let serviceId: any;
|
||||||
let service: any;
|
let service: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof args[0] === 'string') {
|
if (typeof args[0] === 'string') {
|
||||||
serviceId = args[0];
|
serviceId = args[0];
|
||||||
} else if (typeof args[1] === 'string') {
|
} else if (typeof args[1] === 'string') {
|
||||||
serviceId = args[1];
|
serviceId = args[1];
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!(args[0] instanceof FluencePeer) && typeof args[0] === 'object') {
|
// Figuring out which overload is the service.
|
||||||
|
// If the first argument is not Fluence Peer and it is an object, then it can only be the service def
|
||||||
|
// If the first argument is peer, we are checking further. The second argument might either be
|
||||||
|
// an object, that it must be the service object
|
||||||
|
// or a string, which is the service id. In that case the service is the third argument
|
||||||
|
if (!FluencePeer.isInstance(args[0]) && typeof args[0] === 'object') {
|
||||||
service = args[0];
|
service = args[0];
|
||||||
} else if (typeof args[1] === 'object') {
|
} else if (typeof args[1] === 'object') {
|
||||||
service = args[1];
|
service = args[1];
|
||||||
@ -170,116 +181,108 @@ export function registerMoreMembers(peer: FluencePeer, serviceId: string, servic
|
|||||||
service = args[2];
|
service = args[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
peer.internals.callServiceHandler.use((req, resp, next) => {
|
peer.internals.callServiceHandler.use((req, resp, next) => {
|
||||||
if (req.serviceId !== serviceId) {
|
if (req.serviceId !== serviceId) {
|
||||||
next();
|
next();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'member1') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
service.member1(callParams); resp.result = {}
|
|
||||||
|
|
||||||
}
|
if (req.fnName === 'member1') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
|
tetraplets: {},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
service.member1(callParams);
|
||||||
|
resp.result = {};
|
||||||
|
}
|
||||||
|
|
||||||
|
if (req.fnName === 'member2') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
|
tetraplets: {
|
||||||
|
s1: req.tetraplets[0],
|
||||||
|
},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
service.member2(req.args[0], callParams);
|
||||||
|
resp.result = {};
|
||||||
|
}
|
||||||
|
|
||||||
if (req.fnName === 'member2') {
|
if (req.fnName === 'member3') {
|
||||||
|
const callParams = {
|
||||||
const callParams = {
|
...req.particleContext,
|
||||||
...req.particleContext,
|
tetraplets: {
|
||||||
tetraplets: {
|
s1: req.tetraplets[0],
|
||||||
s1: req.tetraplets[0]
|
s2: req.tetraplets[1],
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
resp.retCode = ResultCodes.success;
|
resp.retCode = ResultCodes.success;
|
||||||
service.member2(req.args[0], callParams); resp.result = {}
|
service.member3(req.args[0], req.args[1], callParams);
|
||||||
|
resp.result = {};
|
||||||
|
}
|
||||||
|
|
||||||
}
|
if (req.fnName === 'member4') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
|
tetraplets: {
|
||||||
|
s1: req.tetraplets[0],
|
||||||
|
s2: req.tetraplets[1],
|
||||||
|
i: req.tetraplets[2],
|
||||||
|
},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
resp.result = service.member4(req.args[0], req.args[1], req.args[2], callParams);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (req.fnName === 'member5') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
|
tetraplets: {
|
||||||
|
s1: req.tetraplets[0],
|
||||||
|
s2: req.tetraplets[1],
|
||||||
|
i: req.tetraplets[2],
|
||||||
|
},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
resp.result = service.member5(req.args[0], req.args[1], req.args[2], callParams);
|
||||||
|
}
|
||||||
|
|
||||||
if (req.fnName === 'member3') {
|
next();
|
||||||
|
});
|
||||||
const callParams = {
|
}
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
s1: req.tetraplets[0],s2: req.tetraplets[1]
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
service.member3(req.args[0], req.args[1], callParams); resp.result = {}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'member4') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
s1: req.tetraplets[0],s2: req.tetraplets[1],i: req.tetraplets[2]
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
resp.result = service.member4(req.args[0], req.args[1], req.args[2], callParams)
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'member5') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
s1: req.tetraplets[0],s2: req.tetraplets[1],i: req.tetraplets[2]
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
resp.result = service.member5(req.args[0], req.args[1], req.args[2], callParams)
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
next();
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// Functions
|
// Functions
|
||||||
|
|
||||||
export function f1(callback: (arg0: string, arg1: number, callParams: CallParams<'arg0' | 'arg1'>) => void, config?: {ttl?: number}) : Promise<void>;
|
export function f1(
|
||||||
export function f1(peer: FluencePeer, callback: (arg0: string, arg1: number, callParams: CallParams<'arg0' | 'arg1'>) => void, config?: {ttl?: number}) : Promise<void>;
|
callback: (arg0: string, arg1: number, callParams: CallParams<'arg0' | 'arg1'>) => void,
|
||||||
export function f1(...args: any) {
|
config?: { ttl?: number },
|
||||||
let peer: FluencePeer;
|
): Promise<void>;
|
||||||
let callback: any;
|
export function f1(
|
||||||
let config: any;
|
peer: FluencePeer,
|
||||||
if (args[0] instanceof FluencePeer) {
|
callback: (arg0: string, arg1: number, callParams: CallParams<'arg0' | 'arg1'>) => void,
|
||||||
peer = args[0];
|
config?: { ttl?: number },
|
||||||
callback = args[1];
|
): Promise<void>;
|
||||||
config = args[2];
|
export function f1(...args: any) {
|
||||||
} else {
|
let peer: FluencePeer;
|
||||||
peer = FluencePeer.default;
|
let callback: any;
|
||||||
callback = args[0];
|
let config: any;
|
||||||
config = args[1];
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
}
|
peer = args[0];
|
||||||
|
callback = args[1];
|
||||||
let request: RequestFlow;
|
config = args[2];
|
||||||
const promise = new Promise<void>((resolve, reject) => {
|
} else {
|
||||||
const r = new RequestFlowBuilder()
|
peer = Fluence.getPeer();
|
||||||
.disableInjections()
|
callback = args[0];
|
||||||
.withRawScript(
|
config = args[1];
|
||||||
`
|
}
|
||||||
|
|
||||||
|
let request: RequestFlow;
|
||||||
|
const promise = new Promise<void>((resolve, reject) => {
|
||||||
|
const r = new RequestFlowBuilder()
|
||||||
|
.disableInjections()
|
||||||
|
.withRawScript(
|
||||||
|
`
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(call %init_peer_id% ("getDataSrv" "-relay-") [] -relay-)
|
(call %init_peer_id% ("getDataSrv" "-relay-") [] -relay-)
|
||||||
@ -292,31 +295,29 @@ config = args[1];
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
});
|
});
|
||||||
|
|
||||||
h.use((req, resp, next) => {
|
|
||||||
if(req.serviceId === 'callbackSrv' && req.fnName === 'callback') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
arg0: req.tetraplets[0],arg1: req.tetraplets[1]
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
callback(req.args[0], req.args[1], callParams); resp.result = {}
|
|
||||||
|
|
||||||
}
|
h.use((req, resp, next) => {
|
||||||
next();
|
if (req.serviceId === 'callbackSrv' && req.fnName === 'callback') {
|
||||||
});
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
tetraplets: {
|
||||||
|
arg0: req.tetraplets[0],
|
||||||
});
|
arg1: req.tetraplets[1],
|
||||||
|
},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
callback(req.args[0], req.args[1], callParams);
|
||||||
|
resp.result = {};
|
||||||
|
}
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
|
||||||
|
h.onEvent('callbackSrv', 'response', (args) => {});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -326,43 +327,50 @@ config = args[1];
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for f1');
|
reject('Request timed out for f1');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return Promise.race([promise, Promise.resolve()]);
|
return Promise.race([promise, Promise.resolve()]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
export function f2(
|
||||||
|
num: number,
|
||||||
|
callback: (arg0: string, arg1: number, callParams: CallParams<'arg0' | 'arg1'>) => void,
|
||||||
|
config?: { ttl?: number },
|
||||||
|
): Promise<void>;
|
||||||
|
export function f2(
|
||||||
|
peer: FluencePeer,
|
||||||
|
num: number,
|
||||||
|
callback: (arg0: string, arg1: number, callParams: CallParams<'arg0' | 'arg1'>) => void,
|
||||||
|
config?: { ttl?: number },
|
||||||
|
): Promise<void>;
|
||||||
|
export function f2(...args: any) {
|
||||||
|
let peer: FluencePeer;
|
||||||
|
let num: any;
|
||||||
|
let callback: any;
|
||||||
|
let config: any;
|
||||||
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
|
peer = args[0];
|
||||||
|
num = args[1];
|
||||||
|
callback = args[2];
|
||||||
|
config = args[3];
|
||||||
|
} else {
|
||||||
|
peer = Fluence.getPeer();
|
||||||
|
num = args[0];
|
||||||
|
callback = args[1];
|
||||||
|
config = args[2];
|
||||||
|
}
|
||||||
|
|
||||||
export function f2(num: number, callback: (arg0: string, arg1: number, callParams: CallParams<'arg0' | 'arg1'>) => void, config?: {ttl?: number}) : Promise<void>;
|
let request: RequestFlow;
|
||||||
export function f2(peer: FluencePeer, num: number, callback: (arg0: string, arg1: number, callParams: CallParams<'arg0' | 'arg1'>) => void, config?: {ttl?: number}) : Promise<void>;
|
const promise = new Promise<void>((resolve, reject) => {
|
||||||
export function f2(...args: any) {
|
const r = new RequestFlowBuilder()
|
||||||
let peer: FluencePeer;
|
.disableInjections()
|
||||||
let num: any;
|
.withRawScript(
|
||||||
let callback: any;
|
`
|
||||||
let config: any;
|
|
||||||
if (args[0] instanceof FluencePeer) {
|
|
||||||
peer = args[0];
|
|
||||||
num = args[1];
|
|
||||||
callback = args[2];
|
|
||||||
config = args[3];
|
|
||||||
} else {
|
|
||||||
peer = FluencePeer.default;
|
|
||||||
num = args[0];
|
|
||||||
callback = args[1];
|
|
||||||
config = args[2];
|
|
||||||
}
|
|
||||||
|
|
||||||
let request: RequestFlow;
|
|
||||||
const promise = new Promise<void>((resolve, reject) => {
|
|
||||||
const r = new RequestFlowBuilder()
|
|
||||||
.disableInjections()
|
|
||||||
.withRawScript(
|
|
||||||
`
|
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -378,32 +386,32 @@ config = args[2];
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'num', () => {
|
||||||
|
return num;
|
||||||
});
|
});
|
||||||
h.on('getDataSrv', 'num', () => {return num;});
|
|
||||||
|
|
||||||
h.use((req, resp, next) => {
|
h.use((req, resp, next) => {
|
||||||
if(req.serviceId === 'callbackSrv' && req.fnName === 'callback') {
|
if (req.serviceId === 'callbackSrv' && req.fnName === 'callback') {
|
||||||
|
const callParams = {
|
||||||
const callParams = {
|
...req.particleContext,
|
||||||
...req.particleContext,
|
tetraplets: {
|
||||||
tetraplets: {
|
arg0: req.tetraplets[0],
|
||||||
arg0: req.tetraplets[0],arg1: req.tetraplets[1]
|
arg1: req.tetraplets[1],
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
resp.retCode = ResultCodes.success;
|
resp.retCode = ResultCodes.success;
|
||||||
callback(req.args[0], req.args[1], callParams); resp.result = {}
|
callback(req.args[0], req.args[1], callParams);
|
||||||
|
resp.result = {};
|
||||||
|
}
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
|
||||||
}
|
h.onEvent('callbackSrv', 'response', (args) => {});
|
||||||
next();
|
|
||||||
});
|
|
||||||
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
|
||||||
|
|
||||||
});
|
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -413,43 +421,50 @@ config = args[2];
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for f2');
|
reject('Request timed out for f2');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return Promise.race([promise, Promise.resolve()]);
|
return Promise.race([promise, Promise.resolve()]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
export function f3(
|
||||||
|
num: number,
|
||||||
|
callback: (arg0: string, arg1: number, callParams: CallParams<'arg0' | 'arg1'>) => void,
|
||||||
|
config?: { ttl?: number },
|
||||||
|
): Promise<string>;
|
||||||
|
export function f3(
|
||||||
|
peer: FluencePeer,
|
||||||
|
num: number,
|
||||||
|
callback: (arg0: string, arg1: number, callParams: CallParams<'arg0' | 'arg1'>) => void,
|
||||||
|
config?: { ttl?: number },
|
||||||
|
): Promise<string>;
|
||||||
|
export function f3(...args: any) {
|
||||||
|
let peer: FluencePeer;
|
||||||
|
let num: any;
|
||||||
|
let callback: any;
|
||||||
|
let config: any;
|
||||||
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
|
peer = args[0];
|
||||||
|
num = args[1];
|
||||||
|
callback = args[2];
|
||||||
|
config = args[3];
|
||||||
|
} else {
|
||||||
|
peer = Fluence.getPeer();
|
||||||
|
num = args[0];
|
||||||
|
callback = args[1];
|
||||||
|
config = args[2];
|
||||||
|
}
|
||||||
|
|
||||||
export function f3(num: number, callback: (arg0: string, arg1: number, callParams: CallParams<'arg0' | 'arg1'>) => void, config?: {ttl?: number}) : Promise<string>;
|
let request: RequestFlow;
|
||||||
export function f3(peer: FluencePeer, num: number, callback: (arg0: string, arg1: number, callParams: CallParams<'arg0' | 'arg1'>) => void, config?: {ttl?: number}) : Promise<string>;
|
const promise = new Promise<string>((resolve, reject) => {
|
||||||
export function f3(...args: any) {
|
const r = new RequestFlowBuilder()
|
||||||
let peer: FluencePeer;
|
.disableInjections()
|
||||||
let num: any;
|
.withRawScript(
|
||||||
let callback: any;
|
`
|
||||||
let config: any;
|
|
||||||
if (args[0] instanceof FluencePeer) {
|
|
||||||
peer = args[0];
|
|
||||||
num = args[1];
|
|
||||||
callback = args[2];
|
|
||||||
config = args[3];
|
|
||||||
} else {
|
|
||||||
peer = FluencePeer.default;
|
|
||||||
num = args[0];
|
|
||||||
callback = args[1];
|
|
||||||
config = args[2];
|
|
||||||
}
|
|
||||||
|
|
||||||
let request: RequestFlow;
|
|
||||||
const promise = new Promise<string>((resolve, reject) => {
|
|
||||||
const r = new RequestFlowBuilder()
|
|
||||||
.disableInjections()
|
|
||||||
.withRawScript(
|
|
||||||
`
|
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -471,33 +486,35 @@ config = args[2];
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'num', () => {
|
||||||
|
return num;
|
||||||
});
|
});
|
||||||
h.on('getDataSrv', 'num', () => {return num;});
|
|
||||||
|
|
||||||
h.use((req, resp, next) => {
|
h.use((req, resp, next) => {
|
||||||
if(req.serviceId === 'callbackSrv' && req.fnName === 'callback') {
|
if (req.serviceId === 'callbackSrv' && req.fnName === 'callback') {
|
||||||
|
const callParams = {
|
||||||
const callParams = {
|
...req.particleContext,
|
||||||
...req.particleContext,
|
tetraplets: {
|
||||||
tetraplets: {
|
arg0: req.tetraplets[0],
|
||||||
arg0: req.tetraplets[0],arg1: req.tetraplets[1]
|
arg1: req.tetraplets[1],
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
resp.retCode = ResultCodes.success;
|
resp.retCode = ResultCodes.success;
|
||||||
callback(req.args[0], req.args[1], callParams); resp.result = {}
|
callback(req.args[0], req.args[1], callParams);
|
||||||
|
resp.result = {};
|
||||||
|
}
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
|
||||||
}
|
|
||||||
next();
|
|
||||||
});
|
|
||||||
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
const [res] = args;
|
const [res] = args;
|
||||||
resolve(res);
|
resolve(res);
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -507,40 +524,45 @@ config = args[2];
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for f3');
|
reject('Request timed out for f3');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
export function callBackZeroArgs(
|
||||||
|
callback: (callParams: CallParams<null>) => void,
|
||||||
|
config?: { ttl?: number },
|
||||||
|
): Promise<void>;
|
||||||
|
export function callBackZeroArgs(
|
||||||
|
peer: FluencePeer,
|
||||||
|
callback: (callParams: CallParams<null>) => void,
|
||||||
|
config?: { ttl?: number },
|
||||||
|
): Promise<void>;
|
||||||
|
export function callBackZeroArgs(...args: any) {
|
||||||
|
let peer: FluencePeer;
|
||||||
|
let callback: any;
|
||||||
|
let config: any;
|
||||||
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
|
peer = args[0];
|
||||||
|
callback = args[1];
|
||||||
|
config = args[2];
|
||||||
|
} else {
|
||||||
|
peer = Fluence.getPeer();
|
||||||
|
callback = args[0];
|
||||||
|
config = args[1];
|
||||||
|
}
|
||||||
|
|
||||||
export function callBackZeroArgs(callback: (callParams: CallParams<null>) => void, config?: {ttl?: number}) : Promise<void>;
|
let request: RequestFlow;
|
||||||
export function callBackZeroArgs(peer: FluencePeer, callback: (callParams: CallParams<null>) => void, config?: {ttl?: number}) : Promise<void>;
|
const promise = new Promise<void>((resolve, reject) => {
|
||||||
export function callBackZeroArgs(...args: any) {
|
const r = new RequestFlowBuilder()
|
||||||
let peer: FluencePeer;
|
.disableInjections()
|
||||||
let callback: any;
|
.withRawScript(
|
||||||
let config: any;
|
`
|
||||||
if (args[0] instanceof FluencePeer) {
|
|
||||||
peer = args[0];
|
|
||||||
callback = args[1];
|
|
||||||
config = args[2];
|
|
||||||
} else {
|
|
||||||
peer = FluencePeer.default;
|
|
||||||
callback = args[0];
|
|
||||||
config = args[1];
|
|
||||||
}
|
|
||||||
|
|
||||||
let request: RequestFlow;
|
|
||||||
const promise = new Promise<void>((resolve, reject) => {
|
|
||||||
const r = new RequestFlowBuilder()
|
|
||||||
.disableInjections()
|
|
||||||
.withRawScript(
|
|
||||||
`
|
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(call %init_peer_id% ("getDataSrv" "-relay-") [] -relay-)
|
(call %init_peer_id% ("getDataSrv" "-relay-") [] -relay-)
|
||||||
@ -553,31 +575,26 @@ config = args[1];
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
});
|
});
|
||||||
|
|
||||||
h.use((req, resp, next) => {
|
|
||||||
if(req.serviceId === 'callbackSrv' && req.fnName === 'callback') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
callback(callParams); resp.result = {}
|
|
||||||
|
|
||||||
}
|
h.use((req, resp, next) => {
|
||||||
next();
|
if (req.serviceId === 'callbackSrv' && req.fnName === 'callback') {
|
||||||
});
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
tetraplets: {},
|
||||||
|
};
|
||||||
});
|
resp.retCode = ResultCodes.success;
|
||||||
|
callback(callParams);
|
||||||
|
resp.result = {};
|
||||||
|
}
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
|
||||||
|
h.onEvent('callbackSrv', 'response', (args) => {});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -587,13 +604,12 @@ config = args[1];
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for callBackZeroArgs');
|
reject('Request timed out for callBackZeroArgs');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return Promise.race([promise, Promise.resolve()]);
|
return Promise.race([promise, Promise.resolve()]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* This file is auto-generated. Do not edit manually: changes may be erased.
|
* This file is auto-generated. Do not edit manually: changes may be erased.
|
||||||
* Generated by Aqua compiler: https://github.com/fluencelabs/aqua/.
|
* 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
|
* If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues
|
||||||
* Aqua version: 0.3.0-SNAPSHOT
|
* Aqua version: 0.3.0-SNAPSHOT
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence, FluencePeer } from '@fluencelabs/fluence';
|
||||||
import {
|
import {
|
||||||
ResultCodes,
|
ResultCodes,
|
||||||
RequestFlow,
|
RequestFlow,
|
||||||
@ -14,38 +14,41 @@ import {
|
|||||||
CallParams,
|
CallParams,
|
||||||
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
||||||
|
|
||||||
|
|
||||||
// Services
|
// Services
|
||||||
|
|
||||||
export interface HelloWorldDef {
|
export interface HelloWorldDef {
|
||||||
getNumber: (callParams: CallParams<null>) => number;
|
getNumber: (callParams: CallParams<null>) => number;
|
||||||
sayHello: (s: string, callParams: CallParams<'s'>) => void;
|
sayHello: (s: string, callParams: CallParams<'s'>) => void;
|
||||||
}
|
}
|
||||||
|
|
||||||
export function registerHelloWorld(service: HelloWorldDef): void;
|
export function registerHelloWorld(service: HelloWorldDef): void;
|
||||||
export function registerHelloWorld(serviceId: string, service: HelloWorldDef): void;
|
export function registerHelloWorld(serviceId: string, service: HelloWorldDef): void;
|
||||||
export function registerHelloWorld(peer: FluencePeer, service: HelloWorldDef): void;
|
export function registerHelloWorld(peer: FluencePeer, service: HelloWorldDef): void;
|
||||||
export function registerHelloWorld(peer: FluencePeer, serviceId: string, service: HelloWorldDef): void;
|
export function registerHelloWorld(peer: FluencePeer, serviceId: string, service: HelloWorldDef): void;
|
||||||
export function registerHelloWorld(...args: any) {
|
export function registerHelloWorld(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let serviceId: any;
|
let serviceId: any;
|
||||||
let service: any;
|
let service: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof args[0] === 'string') {
|
if (typeof args[0] === 'string') {
|
||||||
serviceId = args[0];
|
serviceId = args[0];
|
||||||
} else if (typeof args[1] === 'string') {
|
} else if (typeof args[1] === 'string') {
|
||||||
serviceId = args[1];
|
serviceId = args[1];
|
||||||
}
|
} else {
|
||||||
else {
|
serviceId = 'default';
|
||||||
serviceId = "default"
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (!(args[0] instanceof FluencePeer) && typeof args[0] === 'object') {
|
// Figuring out which overload is the service.
|
||||||
|
// If the first argument is not Fluence Peer and it is an object, then it can only be the service def
|
||||||
|
// If the first argument is peer, we are checking further. The second argument might either be
|
||||||
|
// an object, that it must be the service object
|
||||||
|
// or a string, which is the service id. In that case the service is the third argument
|
||||||
|
if (!FluencePeer.isInstance(args[0]) && typeof args[0] === 'object') {
|
||||||
service = args[0];
|
service = args[0];
|
||||||
} else if (typeof args[1] === 'object') {
|
} else if (typeof args[1] === 'object') {
|
||||||
service = args[1];
|
service = args[1];
|
||||||
@ -53,71 +56,68 @@ export function registerHelloWorld(peer: FluencePeer, serviceId: string, service
|
|||||||
service = args[2];
|
service = args[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
peer.internals.callServiceHandler.use((req, resp, next) => {
|
peer.internals.callServiceHandler.use((req, resp, next) => {
|
||||||
if (req.serviceId !== serviceId) {
|
if (req.serviceId !== serviceId) {
|
||||||
next();
|
next();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'getNumber') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
resp.result = service.getNumber(callParams)
|
|
||||||
|
|
||||||
}
|
if (req.fnName === 'getNumber') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
|
tetraplets: {},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
resp.result = service.getNumber(callParams);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (req.fnName === 'sayHello') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
|
tetraplets: {
|
||||||
|
s: req.tetraplets[0],
|
||||||
|
},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
service.sayHello(req.args[0], callParams);
|
||||||
|
resp.result = {};
|
||||||
|
}
|
||||||
|
|
||||||
if (req.fnName === 'sayHello') {
|
next();
|
||||||
|
});
|
||||||
const callParams = {
|
}
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
s: req.tetraplets[0]
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
service.sayHello(req.args[0], callParams); resp.result = {}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
next();
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// Functions
|
// Functions
|
||||||
|
|
||||||
export function callMeBack(callback: (arg0: string, arg1: number, callParams: CallParams<'arg0' | 'arg1'>) => void, config?: {ttl?: number}) : Promise<void>;
|
export function callMeBack(
|
||||||
export function callMeBack(peer: FluencePeer, callback: (arg0: string, arg1: number, callParams: CallParams<'arg0' | 'arg1'>) => void, config?: {ttl?: number}) : Promise<void>;
|
callback: (arg0: string, arg1: number, callParams: CallParams<'arg0' | 'arg1'>) => void,
|
||||||
export function callMeBack(...args: any) {
|
config?: { ttl?: number },
|
||||||
let peer: FluencePeer;
|
): Promise<void>;
|
||||||
let callback: any;
|
export function callMeBack(
|
||||||
let config: any;
|
peer: FluencePeer,
|
||||||
if (args[0] instanceof FluencePeer) {
|
callback: (arg0: string, arg1: number, callParams: CallParams<'arg0' | 'arg1'>) => void,
|
||||||
peer = args[0];
|
config?: { ttl?: number },
|
||||||
callback = args[1];
|
): Promise<void>;
|
||||||
config = args[2];
|
export function callMeBack(...args: any) {
|
||||||
} else {
|
let peer: FluencePeer;
|
||||||
peer = FluencePeer.default;
|
let callback: any;
|
||||||
callback = args[0];
|
let config: any;
|
||||||
config = args[1];
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
}
|
peer = args[0];
|
||||||
|
callback = args[1];
|
||||||
let request: RequestFlow;
|
config = args[2];
|
||||||
const promise = new Promise<void>((resolve, reject) => {
|
} else {
|
||||||
const r = new RequestFlowBuilder()
|
peer = Fluence.getPeer();
|
||||||
.disableInjections()
|
callback = args[0];
|
||||||
.withRawScript(
|
config = args[1];
|
||||||
`
|
}
|
||||||
|
|
||||||
|
let request: RequestFlow;
|
||||||
|
const promise = new Promise<void>((resolve, reject) => {
|
||||||
|
const r = new RequestFlowBuilder()
|
||||||
|
.disableInjections()
|
||||||
|
.withRawScript(
|
||||||
|
`
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(call %init_peer_id% ("getDataSrv" "-relay-") [] -relay-)
|
(call %init_peer_id% ("getDataSrv" "-relay-") [] -relay-)
|
||||||
@ -130,31 +130,29 @@ config = args[1];
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
});
|
});
|
||||||
|
|
||||||
h.use((req, resp, next) => {
|
|
||||||
if(req.serviceId === 'callbackSrv' && req.fnName === 'callback') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
arg0: req.tetraplets[0],arg1: req.tetraplets[1]
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
callback(req.args[0], req.args[1], callParams); resp.result = {}
|
|
||||||
|
|
||||||
}
|
h.use((req, resp, next) => {
|
||||||
next();
|
if (req.serviceId === 'callbackSrv' && req.fnName === 'callback') {
|
||||||
});
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
tetraplets: {
|
||||||
|
arg0: req.tetraplets[0],
|
||||||
});
|
arg1: req.tetraplets[1],
|
||||||
|
},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
callback(req.args[0], req.args[1], callParams);
|
||||||
|
resp.result = {};
|
||||||
|
}
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
|
||||||
|
h.onEvent('callbackSrv', 'response', (args) => {});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -164,13 +162,12 @@ config = args[1];
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for callMeBack');
|
reject('Request timed out for callMeBack');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return Promise.race([promise, Promise.resolve()]);
|
return Promise.race([promise, Promise.resolve()]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* This file is auto-generated. Do not edit manually: changes may be erased.
|
* This file is auto-generated. Do not edit manually: changes may be erased.
|
||||||
* Generated by Aqua compiler: https://github.com/fluencelabs/aqua/.
|
* 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
|
* If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues
|
||||||
* Aqua version: 0.3.0-SNAPSHOT
|
* Aqua version: 0.3.0-SNAPSHOT
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence, FluencePeer } from '@fluencelabs/fluence';
|
||||||
import {
|
import {
|
||||||
ResultCodes,
|
ResultCodes,
|
||||||
RequestFlow,
|
RequestFlow,
|
||||||
@ -14,34 +14,36 @@ import {
|
|||||||
CallParams,
|
CallParams,
|
||||||
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
||||||
|
|
||||||
|
|
||||||
// Services
|
// Services
|
||||||
|
|
||||||
|
|
||||||
// Functions
|
// Functions
|
||||||
|
|
||||||
export function getPeerExternalAddresses(otherNodePeerId: string, config?: {ttl?: number}) : Promise<string[]>;
|
export function getPeerExternalAddresses(otherNodePeerId: string, config?: { ttl?: number }): Promise<string[]>;
|
||||||
export function getPeerExternalAddresses(peer: FluencePeer, otherNodePeerId: string, config?: {ttl?: number}) : Promise<string[]>;
|
export function getPeerExternalAddresses(
|
||||||
export function getPeerExternalAddresses(...args: any) {
|
peer: FluencePeer,
|
||||||
let peer: FluencePeer;
|
otherNodePeerId: string,
|
||||||
let otherNodePeerId: any;
|
config?: { ttl?: number },
|
||||||
let config: any;
|
): Promise<string[]>;
|
||||||
if (args[0] instanceof FluencePeer) {
|
export function getPeerExternalAddresses(...args: any) {
|
||||||
peer = args[0];
|
let peer: FluencePeer;
|
||||||
otherNodePeerId = args[1];
|
let otherNodePeerId: any;
|
||||||
config = args[2];
|
let config: any;
|
||||||
} else {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = FluencePeer.default;
|
peer = args[0];
|
||||||
otherNodePeerId = args[0];
|
otherNodePeerId = args[1];
|
||||||
config = args[1];
|
config = args[2];
|
||||||
}
|
} else {
|
||||||
|
peer = Fluence.getPeer();
|
||||||
let request: RequestFlow;
|
otherNodePeerId = args[0];
|
||||||
const promise = new Promise<string[]>((resolve, reject) => {
|
config = args[1];
|
||||||
const r = new RequestFlowBuilder()
|
}
|
||||||
.disableInjections()
|
|
||||||
.withRawScript(
|
let request: RequestFlow;
|
||||||
`
|
const promise = new Promise<string[]>((resolve, reject) => {
|
||||||
|
const r = new RequestFlowBuilder()
|
||||||
|
.disableInjections()
|
||||||
|
.withRawScript(
|
||||||
|
`
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -72,16 +74,18 @@ config = args[1];
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'otherNodePeerId', () => {
|
||||||
|
return otherNodePeerId;
|
||||||
});
|
});
|
||||||
h.on('getDataSrv', 'otherNodePeerId', () => {return otherNodePeerId;});
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
const [res] = args;
|
const [res] = args;
|
||||||
resolve(res);
|
resolve(res);
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -91,43 +95,46 @@ config = args[1];
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for getPeerExternalAddresses');
|
reject('Request timed out for getPeerExternalAddresses');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
export function getDistantAddresses(target: string, viaNode: string, config?: { ttl?: number }): Promise<string[]>;
|
||||||
|
export function getDistantAddresses(
|
||||||
|
peer: FluencePeer,
|
||||||
|
target: string,
|
||||||
|
viaNode: string,
|
||||||
|
config?: { ttl?: number },
|
||||||
|
): Promise<string[]>;
|
||||||
|
export function getDistantAddresses(...args: any) {
|
||||||
|
let peer: FluencePeer;
|
||||||
|
let target: any;
|
||||||
|
let viaNode: any;
|
||||||
|
let config: any;
|
||||||
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
|
peer = args[0];
|
||||||
|
target = args[1];
|
||||||
|
viaNode = args[2];
|
||||||
|
config = args[3];
|
||||||
|
} else {
|
||||||
|
peer = Fluence.getPeer();
|
||||||
|
target = args[0];
|
||||||
|
viaNode = args[1];
|
||||||
|
config = args[2];
|
||||||
|
}
|
||||||
|
|
||||||
export function getDistantAddresses(target: string, viaNode: string, config?: {ttl?: number}) : Promise<string[]>;
|
let request: RequestFlow;
|
||||||
export function getDistantAddresses(peer: FluencePeer, target: string, viaNode: string, config?: {ttl?: number}) : Promise<string[]>;
|
const promise = new Promise<string[]>((resolve, reject) => {
|
||||||
export function getDistantAddresses(...args: any) {
|
const r = new RequestFlowBuilder()
|
||||||
let peer: FluencePeer;
|
.disableInjections()
|
||||||
let target: any;
|
.withRawScript(
|
||||||
let viaNode: any;
|
`
|
||||||
let config: any;
|
|
||||||
if (args[0] instanceof FluencePeer) {
|
|
||||||
peer = args[0];
|
|
||||||
target = args[1];
|
|
||||||
viaNode = args[2];
|
|
||||||
config = args[3];
|
|
||||||
} else {
|
|
||||||
peer = FluencePeer.default;
|
|
||||||
target = args[0];
|
|
||||||
viaNode = args[1];
|
|
||||||
config = args[2];
|
|
||||||
}
|
|
||||||
|
|
||||||
let request: RequestFlow;
|
|
||||||
const promise = new Promise<string[]>((resolve, reject) => {
|
|
||||||
const r = new RequestFlowBuilder()
|
|
||||||
.disableInjections()
|
|
||||||
.withRawScript(
|
|
||||||
`
|
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -173,17 +180,21 @@ config = args[2];
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'target', () => {
|
||||||
|
return target;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'viaNode', () => {
|
||||||
|
return viaNode;
|
||||||
});
|
});
|
||||||
h.on('getDataSrv', 'target', () => {return target;});
|
|
||||||
h.on('getDataSrv', 'viaNode', () => {return viaNode;});
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
const [res] = args;
|
const [res] = args;
|
||||||
resolve(res);
|
resolve(res);
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -193,13 +204,12 @@ h.on('getDataSrv', 'viaNode', () => {return viaNode;});
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for getDistantAddresses');
|
reject('Request timed out for getDistantAddresses');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* This file is auto-generated. Do not edit manually: changes may be erased.
|
* This file is auto-generated. Do not edit manually: changes may be erased.
|
||||||
* Generated by Aqua compiler: https://github.com/fluencelabs/aqua/.
|
* 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
|
* If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues
|
||||||
* Aqua version: 0.3.0-SNAPSHOT
|
* Aqua version: 0.3.0-SNAPSHOT
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence, FluencePeer } from '@fluencelabs/fluence';
|
||||||
import {
|
import {
|
||||||
ResultCodes,
|
ResultCodes,
|
||||||
RequestFlow,
|
RequestFlow,
|
||||||
@ -14,39 +14,42 @@ import {
|
|||||||
CallParams,
|
CallParams,
|
||||||
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
||||||
|
|
||||||
|
|
||||||
// Services
|
// Services
|
||||||
|
|
||||||
export interface SomeSDef {
|
export interface SomeSDef {
|
||||||
getStr: (arg0: string | null, callParams: CallParams<'arg0'>) => string | null;
|
getStr: (arg0: string | null, callParams: CallParams<'arg0'>) => string | null;
|
||||||
getStr1: (callParams: CallParams<null>) => string | null;
|
getStr1: (callParams: CallParams<null>) => string | null;
|
||||||
getStr2: (arg0: string, callParams: CallParams<'arg0'>) => string;
|
getStr2: (arg0: string, callParams: CallParams<'arg0'>) => string;
|
||||||
}
|
}
|
||||||
|
|
||||||
export function registerSomeS(service: SomeSDef): void;
|
export function registerSomeS(service: SomeSDef): void;
|
||||||
export function registerSomeS(serviceId: string, service: SomeSDef): void;
|
export function registerSomeS(serviceId: string, service: SomeSDef): void;
|
||||||
export function registerSomeS(peer: FluencePeer, service: SomeSDef): void;
|
export function registerSomeS(peer: FluencePeer, service: SomeSDef): void;
|
||||||
export function registerSomeS(peer: FluencePeer, serviceId: string, service: SomeSDef): void;
|
export function registerSomeS(peer: FluencePeer, serviceId: string, service: SomeSDef): void;
|
||||||
export function registerSomeS(...args: any) {
|
export function registerSomeS(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let serviceId: any;
|
let serviceId: any;
|
||||||
let service: any;
|
let service: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof args[0] === 'string') {
|
if (typeof args[0] === 'string') {
|
||||||
serviceId = args[0];
|
serviceId = args[0];
|
||||||
} else if (typeof args[1] === 'string') {
|
} else if (typeof args[1] === 'string') {
|
||||||
serviceId = args[1];
|
serviceId = args[1];
|
||||||
}
|
} else {
|
||||||
else {
|
serviceId = 'test2';
|
||||||
serviceId = "test2"
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (!(args[0] instanceof FluencePeer) && typeof args[0] === 'object') {
|
// Figuring out which overload is the service.
|
||||||
|
// If the first argument is not Fluence Peer and it is an object, then it can only be the service def
|
||||||
|
// If the first argument is peer, we are checking further. The second argument might either be
|
||||||
|
// an object, that it must be the service object
|
||||||
|
// or a string, which is the service id. In that case the service is the third argument
|
||||||
|
if (!FluencePeer.isInstance(args[0]) && typeof args[0] === 'object') {
|
||||||
service = args[0];
|
service = args[0];
|
||||||
} else if (typeof args[1] === 'object') {
|
} else if (typeof args[1] === 'object') {
|
||||||
service = args[1];
|
service = args[1];
|
||||||
@ -54,92 +57,75 @@ export function registerSomeS(peer: FluencePeer, serviceId: string, service: Som
|
|||||||
service = args[2];
|
service = args[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
peer.internals.callServiceHandler.use((req, resp, next) => {
|
peer.internals.callServiceHandler.use((req, resp, next) => {
|
||||||
if (req.serviceId !== serviceId) {
|
if (req.serviceId !== serviceId) {
|
||||||
next();
|
next();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'getStr') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
arg0: req.tetraplets[0]
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
|
|
||||||
var respResult = service.getStr(req.args[0].length === 0 ? null : req.args[0][0], callParams);
|
|
||||||
resp.result = respResult === null ? [] : [respResult]
|
|
||||||
|
|
||||||
|
if (req.fnName === 'getStr') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
|
tetraplets: {
|
||||||
|
arg0: req.tetraplets[0],
|
||||||
|
},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
|
||||||
}
|
var respResult = service.getStr(req.args[0].length === 0 ? null : req.args[0][0], callParams);
|
||||||
|
resp.result = respResult === null ? [] : [respResult];
|
||||||
|
}
|
||||||
|
|
||||||
|
if (req.fnName === 'getStr1') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
|
tetraplets: {},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
|
||||||
if (req.fnName === 'getStr1') {
|
var respResult = service.getStr1(callParams);
|
||||||
|
resp.result = respResult === null ? [] : [respResult];
|
||||||
const callParams = {
|
}
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
|
|
||||||
var respResult = service.getStr1(callParams);
|
|
||||||
resp.result = respResult === null ? [] : [respResult]
|
|
||||||
|
|
||||||
|
if (req.fnName === 'getStr2') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
|
tetraplets: {
|
||||||
|
arg0: req.tetraplets[0],
|
||||||
|
},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
resp.result = service.getStr2(req.args[0], callParams);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
next();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
if (req.fnName === 'getStr2') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
arg0: req.tetraplets[0]
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
resp.result = service.getStr2(req.args[0], callParams)
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
next();
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// Functions
|
// Functions
|
||||||
|
|
||||||
export function useOptional(opt: string | null, config?: {ttl?: number}) : Promise<string>;
|
export function useOptional(opt: string | null, config?: { ttl?: number }): Promise<string>;
|
||||||
export function useOptional(peer: FluencePeer, opt: string | null, config?: {ttl?: number}) : Promise<string>;
|
export function useOptional(peer: FluencePeer, opt: string | null, config?: { ttl?: number }): Promise<string>;
|
||||||
export function useOptional(...args: any) {
|
export function useOptional(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let opt: any;
|
let opt: any;
|
||||||
let config: any;
|
let config: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
opt = args[1];
|
opt = args[1];
|
||||||
config = args[2];
|
config = args[2];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
opt = args[0];
|
opt = args[0];
|
||||||
config = args[1];
|
config = args[1];
|
||||||
}
|
}
|
||||||
|
|
||||||
let request: RequestFlow;
|
let request: RequestFlow;
|
||||||
const promise = new Promise<string>((resolve, reject) => {
|
const promise = new Promise<string>((resolve, reject) => {
|
||||||
const r = new RequestFlowBuilder()
|
const r = new RequestFlowBuilder()
|
||||||
.disableInjections()
|
.disableInjections()
|
||||||
.withRawScript(
|
.withRawScript(
|
||||||
`
|
`
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -166,16 +152,18 @@ config = args[1];
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'opt', () => {
|
||||||
|
return opt === null ? [] : [opt];
|
||||||
});
|
});
|
||||||
h.on('getDataSrv', 'opt', () => {return opt === null ? [] : [opt];});
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
const [res] = args;
|
const [res] = args;
|
||||||
resolve(res);
|
resolve(res);
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -185,38 +173,36 @@ config = args[1];
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for useOptional');
|
reject('Request timed out for useOptional');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
export function returnOptional(config?: { ttl?: number }): Promise<string | null>;
|
||||||
|
export function returnOptional(peer: FluencePeer, config?: { ttl?: number }): Promise<string | null>;
|
||||||
|
export function returnOptional(...args: any) {
|
||||||
|
let peer: FluencePeer;
|
||||||
|
|
||||||
export function returnOptional(config?: {ttl?: number}) : Promise<string | null>;
|
let config: any;
|
||||||
export function returnOptional(peer: FluencePeer, config?: {ttl?: number}) : Promise<string | null>;
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
export function returnOptional(...args: any) {
|
peer = args[0];
|
||||||
let peer: FluencePeer;
|
config = args[1];
|
||||||
|
} else {
|
||||||
let config: any;
|
peer = Fluence.getPeer();
|
||||||
if (args[0] instanceof FluencePeer) {
|
config = args[0];
|
||||||
peer = args[0];
|
}
|
||||||
config = args[1];
|
|
||||||
} else {
|
let request: RequestFlow;
|
||||||
peer = FluencePeer.default;
|
const promise = new Promise<string | null>((resolve, reject) => {
|
||||||
config = args[0];
|
const r = new RequestFlowBuilder()
|
||||||
}
|
.disableInjections()
|
||||||
|
.withRawScript(
|
||||||
let request: RequestFlow;
|
`
|
||||||
const promise = new Promise<string | null>((resolve, reject) => {
|
|
||||||
const r = new RequestFlowBuilder()
|
|
||||||
.disableInjections()
|
|
||||||
.withRawScript(
|
|
||||||
`
|
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -232,20 +218,22 @@ config = args[1];
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
let [opt] = args;
|
let [opt] = args;
|
||||||
if (Array.isArray(opt)) {
|
if (Array.isArray(opt)) {
|
||||||
if (opt.length === 0) { resolve(null); }
|
if (opt.length === 0) {
|
||||||
opt = opt[0];
|
resolve(null);
|
||||||
}
|
}
|
||||||
return resolve(opt);
|
opt = opt[0];
|
||||||
});
|
}
|
||||||
|
return resolve(opt);
|
||||||
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -255,38 +243,36 @@ config = args[1];
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for returnOptional');
|
reject('Request timed out for returnOptional');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
export function returnNone(config?: { ttl?: number }): Promise<string | null>;
|
||||||
|
export function returnNone(peer: FluencePeer, config?: { ttl?: number }): Promise<string | null>;
|
||||||
|
export function returnNone(...args: any) {
|
||||||
|
let peer: FluencePeer;
|
||||||
|
|
||||||
export function returnNone(config?: {ttl?: number}) : Promise<string | null>;
|
let config: any;
|
||||||
export function returnNone(peer: FluencePeer, config?: {ttl?: number}) : Promise<string | null>;
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
export function returnNone(...args: any) {
|
peer = args[0];
|
||||||
let peer: FluencePeer;
|
config = args[1];
|
||||||
|
} else {
|
||||||
let config: any;
|
peer = Fluence.getPeer();
|
||||||
if (args[0] instanceof FluencePeer) {
|
config = args[0];
|
||||||
peer = args[0];
|
}
|
||||||
config = args[1];
|
|
||||||
} else {
|
let request: RequestFlow;
|
||||||
peer = FluencePeer.default;
|
const promise = new Promise<string | null>((resolve, reject) => {
|
||||||
config = args[0];
|
const r = new RequestFlowBuilder()
|
||||||
}
|
.disableInjections()
|
||||||
|
.withRawScript(
|
||||||
let request: RequestFlow;
|
`
|
||||||
const promise = new Promise<string | null>((resolve, reject) => {
|
|
||||||
const r = new RequestFlowBuilder()
|
|
||||||
.disableInjections()
|
|
||||||
.withRawScript(
|
|
||||||
`
|
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -302,20 +288,22 @@ config = args[1];
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
let [opt] = args;
|
let [opt] = args;
|
||||||
if (Array.isArray(opt)) {
|
if (Array.isArray(opt)) {
|
||||||
if (opt.length === 0) { resolve(null); }
|
if (opt.length === 0) {
|
||||||
opt = opt[0];
|
resolve(null);
|
||||||
}
|
}
|
||||||
return resolve(opt);
|
opt = opt[0];
|
||||||
});
|
}
|
||||||
|
return resolve(opt);
|
||||||
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -325,13 +313,12 @@ config = args[1];
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for returnNone');
|
reject('Request timed out for returnNone');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* This file is auto-generated. Do not edit manually: changes may be erased.
|
* This file is auto-generated. Do not edit manually: changes may be erased.
|
||||||
* Generated by Aqua compiler: https://github.com/fluencelabs/aqua/.
|
* 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
|
* If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues
|
||||||
* Aqua version: 0.3.0-SNAPSHOT
|
* Aqua version: 0.3.0-SNAPSHOT
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence, FluencePeer } from '@fluencelabs/fluence';
|
||||||
import {
|
import {
|
||||||
ResultCodes,
|
ResultCodes,
|
||||||
RequestFlow,
|
RequestFlow,
|
||||||
@ -14,37 +14,40 @@ import {
|
|||||||
CallParams,
|
CallParams,
|
||||||
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
||||||
|
|
||||||
|
|
||||||
// Services
|
// Services
|
||||||
|
|
||||||
export interface OptionStringDef {
|
export interface OptionStringDef {
|
||||||
checkOption: (str: string | null, callParams: CallParams<'str'>) => string;
|
checkOption: (str: string | null, callParams: CallParams<'str'>) => string;
|
||||||
}
|
}
|
||||||
|
|
||||||
export function registerOptionString(service: OptionStringDef): void;
|
export function registerOptionString(service: OptionStringDef): void;
|
||||||
export function registerOptionString(serviceId: string, service: OptionStringDef): void;
|
export function registerOptionString(serviceId: string, service: OptionStringDef): void;
|
||||||
export function registerOptionString(peer: FluencePeer, service: OptionStringDef): void;
|
export function registerOptionString(peer: FluencePeer, service: OptionStringDef): void;
|
||||||
export function registerOptionString(peer: FluencePeer, serviceId: string, service: OptionStringDef): void;
|
export function registerOptionString(peer: FluencePeer, serviceId: string, service: OptionStringDef): void;
|
||||||
export function registerOptionString(...args: any) {
|
export function registerOptionString(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let serviceId: any;
|
let serviceId: any;
|
||||||
let service: any;
|
let service: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof args[0] === 'string') {
|
if (typeof args[0] === 'string') {
|
||||||
serviceId = args[0];
|
serviceId = args[0];
|
||||||
} else if (typeof args[1] === 'string') {
|
} else if (typeof args[1] === 'string') {
|
||||||
serviceId = args[1];
|
serviceId = args[1];
|
||||||
}
|
} else {
|
||||||
else {
|
serviceId = 'opt_str';
|
||||||
serviceId = "opt_str"
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (!(args[0] instanceof FluencePeer) && typeof args[0] === 'object') {
|
// Figuring out which overload is the service.
|
||||||
|
// If the first argument is not Fluence Peer and it is an object, then it can only be the service def
|
||||||
|
// If the first argument is peer, we are checking further. The second argument might either be
|
||||||
|
// an object, that it must be the service object
|
||||||
|
// or a string, which is the service id. In that case the service is the third argument
|
||||||
|
if (!FluencePeer.isInstance(args[0]) && typeof args[0] === 'object') {
|
||||||
service = args[0];
|
service = args[0];
|
||||||
} else if (typeof args[1] === 'object') {
|
} else if (typeof args[1] === 'object') {
|
||||||
service = args[1];
|
service = args[1];
|
||||||
@ -52,54 +55,49 @@ export function registerOptionString(peer: FluencePeer, serviceId: string, servi
|
|||||||
service = args[2];
|
service = args[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
peer.internals.callServiceHandler.use((req, resp, next) => {
|
peer.internals.callServiceHandler.use((req, resp, next) => {
|
||||||
if (req.serviceId !== serviceId) {
|
if (req.serviceId !== serviceId) {
|
||||||
next();
|
next();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'checkOption') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
str: req.tetraplets[0]
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
resp.result = service.checkOption(req.args[0].length === 0 ? null : req.args[0][0], callParams)
|
|
||||||
|
|
||||||
}
|
if (req.fnName === 'checkOption') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
next();
|
tetraplets: {
|
||||||
});
|
str: req.tetraplets[0],
|
||||||
}
|
},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
resp.result = service.checkOption(req.args[0].length === 0 ? null : req.args[0][0], callParams);
|
||||||
|
}
|
||||||
|
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
// Functions
|
// Functions
|
||||||
|
|
||||||
export function emptyString(config?: {ttl?: number}) : Promise<string | null>;
|
export function emptyString(config?: { ttl?: number }): Promise<string | null>;
|
||||||
export function emptyString(peer: FluencePeer, config?: {ttl?: number}) : Promise<string | null>;
|
export function emptyString(peer: FluencePeer, config?: { ttl?: number }): Promise<string | null>;
|
||||||
export function emptyString(...args: any) {
|
export function emptyString(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
|
|
||||||
let config: any;
|
let config: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
config = args[1];
|
config = args[1];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
config = args[0];
|
config = args[0];
|
||||||
}
|
}
|
||||||
|
|
||||||
let request: RequestFlow;
|
let request: RequestFlow;
|
||||||
const promise = new Promise<string | null>((resolve, reject) => {
|
const promise = new Promise<string | null>((resolve, reject) => {
|
||||||
const r = new RequestFlowBuilder()
|
const r = new RequestFlowBuilder()
|
||||||
.disableInjections()
|
.disableInjections()
|
||||||
.withRawScript(
|
.withRawScript(
|
||||||
`
|
`
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(call %init_peer_id% ("getDataSrv" "-relay-") [] -relay-)
|
(call %init_peer_id% ("getDataSrv" "-relay-") [] -relay-)
|
||||||
@ -112,20 +110,22 @@ export function registerOptionString(peer: FluencePeer, serviceId: string, servi
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
let [opt] = args;
|
let [opt] = args;
|
||||||
if (Array.isArray(opt)) {
|
if (Array.isArray(opt)) {
|
||||||
if (opt.length === 0) { resolve(null); }
|
if (opt.length === 0) {
|
||||||
opt = opt[0];
|
resolve(null);
|
||||||
}
|
}
|
||||||
return resolve(opt);
|
opt = opt[0];
|
||||||
});
|
}
|
||||||
|
return resolve(opt);
|
||||||
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -135,38 +135,36 @@ export function registerOptionString(peer: FluencePeer, serviceId: string, servi
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for emptyString');
|
reject('Request timed out for emptyString');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
export function checkEmpty(config?: { ttl?: number }): Promise<string>;
|
||||||
|
export function checkEmpty(peer: FluencePeer, config?: { ttl?: number }): Promise<string>;
|
||||||
|
export function checkEmpty(...args: any) {
|
||||||
|
let peer: FluencePeer;
|
||||||
|
|
||||||
export function checkEmpty(config?: {ttl?: number}) : Promise<string>;
|
let config: any;
|
||||||
export function checkEmpty(peer: FluencePeer, config?: {ttl?: number}) : Promise<string>;
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
export function checkEmpty(...args: any) {
|
peer = args[0];
|
||||||
let peer: FluencePeer;
|
config = args[1];
|
||||||
|
} else {
|
||||||
let config: any;
|
peer = Fluence.getPeer();
|
||||||
if (args[0] instanceof FluencePeer) {
|
config = args[0];
|
||||||
peer = args[0];
|
}
|
||||||
config = args[1];
|
|
||||||
} else {
|
let request: RequestFlow;
|
||||||
peer = FluencePeer.default;
|
const promise = new Promise<string>((resolve, reject) => {
|
||||||
config = args[0];
|
const r = new RequestFlowBuilder()
|
||||||
}
|
.disableInjections()
|
||||||
|
.withRawScript(
|
||||||
let request: RequestFlow;
|
`
|
||||||
const promise = new Promise<string>((resolve, reject) => {
|
|
||||||
const r = new RequestFlowBuilder()
|
|
||||||
.disableInjections()
|
|
||||||
.withRawScript(
|
|
||||||
`
|
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -182,16 +180,16 @@ export function registerOptionString(peer: FluencePeer, serviceId: string, servi
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
const [res] = args;
|
const [res] = args;
|
||||||
resolve(res);
|
resolve(res);
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -201,40 +199,38 @@ export function registerOptionString(peer: FluencePeer, serviceId: string, servi
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for checkEmpty');
|
reject('Request timed out for checkEmpty');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
export function stringAsOption(str: string, config?: { ttl?: number }): Promise<string | null>;
|
||||||
|
export function stringAsOption(peer: FluencePeer, str: string, config?: { ttl?: number }): Promise<string | null>;
|
||||||
|
export function stringAsOption(...args: any) {
|
||||||
|
let peer: FluencePeer;
|
||||||
|
let str: any;
|
||||||
|
let config: any;
|
||||||
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
|
peer = args[0];
|
||||||
|
str = args[1];
|
||||||
|
config = args[2];
|
||||||
|
} else {
|
||||||
|
peer = Fluence.getPeer();
|
||||||
|
str = args[0];
|
||||||
|
config = args[1];
|
||||||
|
}
|
||||||
|
|
||||||
export function stringAsOption(str: string, config?: {ttl?: number}) : Promise<string | null>;
|
let request: RequestFlow;
|
||||||
export function stringAsOption(peer: FluencePeer, str: string, config?: {ttl?: number}) : Promise<string | null>;
|
const promise = new Promise<string | null>((resolve, reject) => {
|
||||||
export function stringAsOption(...args: any) {
|
const r = new RequestFlowBuilder()
|
||||||
let peer: FluencePeer;
|
.disableInjections()
|
||||||
let str: any;
|
.withRawScript(
|
||||||
let config: any;
|
`
|
||||||
if (args[0] instanceof FluencePeer) {
|
|
||||||
peer = args[0];
|
|
||||||
str = args[1];
|
|
||||||
config = args[2];
|
|
||||||
} else {
|
|
||||||
peer = FluencePeer.default;
|
|
||||||
str = args[0];
|
|
||||||
config = args[1];
|
|
||||||
}
|
|
||||||
|
|
||||||
let request: RequestFlow;
|
|
||||||
const promise = new Promise<string | null>((resolve, reject) => {
|
|
||||||
const r = new RequestFlowBuilder()
|
|
||||||
.disableInjections()
|
|
||||||
.withRawScript(
|
|
||||||
`
|
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -253,20 +249,24 @@ config = args[1];
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'str', () => {
|
||||||
|
return str;
|
||||||
});
|
});
|
||||||
h.on('getDataSrv', 'str', () => {return str;});
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
let [opt] = args;
|
let [opt] = args;
|
||||||
if (Array.isArray(opt)) {
|
if (Array.isArray(opt)) {
|
||||||
if (opt.length === 0) { resolve(null); }
|
if (opt.length === 0) {
|
||||||
opt = opt[0];
|
resolve(null);
|
||||||
}
|
}
|
||||||
return resolve(opt);
|
opt = opt[0];
|
||||||
});
|
}
|
||||||
|
return resolve(opt);
|
||||||
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -276,40 +276,38 @@ config = args[1];
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for stringAsOption');
|
reject('Request timed out for stringAsOption');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
export function checkNoneEmpty(str: string, config?: { ttl?: number }): Promise<string>;
|
||||||
|
export function checkNoneEmpty(peer: FluencePeer, str: string, config?: { ttl?: number }): Promise<string>;
|
||||||
|
export function checkNoneEmpty(...args: any) {
|
||||||
|
let peer: FluencePeer;
|
||||||
|
let str: any;
|
||||||
|
let config: any;
|
||||||
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
|
peer = args[0];
|
||||||
|
str = args[1];
|
||||||
|
config = args[2];
|
||||||
|
} else {
|
||||||
|
peer = Fluence.getPeer();
|
||||||
|
str = args[0];
|
||||||
|
config = args[1];
|
||||||
|
}
|
||||||
|
|
||||||
export function checkNoneEmpty(str: string, config?: {ttl?: number}) : Promise<string>;
|
let request: RequestFlow;
|
||||||
export function checkNoneEmpty(peer: FluencePeer, str: string, config?: {ttl?: number}) : Promise<string>;
|
const promise = new Promise<string>((resolve, reject) => {
|
||||||
export function checkNoneEmpty(...args: any) {
|
const r = new RequestFlowBuilder()
|
||||||
let peer: FluencePeer;
|
.disableInjections()
|
||||||
let str: any;
|
.withRawScript(
|
||||||
let config: any;
|
`
|
||||||
if (args[0] instanceof FluencePeer) {
|
|
||||||
peer = args[0];
|
|
||||||
str = args[1];
|
|
||||||
config = args[2];
|
|
||||||
} else {
|
|
||||||
peer = FluencePeer.default;
|
|
||||||
str = args[0];
|
|
||||||
config = args[1];
|
|
||||||
}
|
|
||||||
|
|
||||||
let request: RequestFlow;
|
|
||||||
const promise = new Promise<string>((resolve, reject) => {
|
|
||||||
const r = new RequestFlowBuilder()
|
|
||||||
.disableInjections()
|
|
||||||
.withRawScript(
|
|
||||||
`
|
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -331,16 +329,18 @@ config = args[1];
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'str', () => {
|
||||||
|
return str;
|
||||||
});
|
});
|
||||||
h.on('getDataSrv', 'str', () => {return str;});
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
const [res] = args;
|
const [res] = args;
|
||||||
resolve(res);
|
resolve(res);
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -350,13 +350,12 @@ config = args[1];
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for checkNoneEmpty');
|
reject('Request timed out for checkNoneEmpty');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* This file is auto-generated. Do not edit manually: changes may be erased.
|
* This file is auto-generated. Do not edit manually: changes may be erased.
|
||||||
* Generated by Aqua compiler: https://github.com/fluencelabs/aqua/.
|
* 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
|
* If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues
|
||||||
* Aqua version: 0.3.0-SNAPSHOT
|
* Aqua version: 0.3.0-SNAPSHOT
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence, FluencePeer } from '@fluencelabs/fluence';
|
||||||
import {
|
import {
|
||||||
ResultCodes,
|
ResultCodes,
|
||||||
RequestFlow,
|
RequestFlow,
|
||||||
@ -14,37 +14,40 @@ import {
|
|||||||
CallParams,
|
CallParams,
|
||||||
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
||||||
|
|
||||||
|
|
||||||
// Services
|
// Services
|
||||||
|
|
||||||
export interface ParServiceDef {
|
export interface ParServiceDef {
|
||||||
call: (callParams: CallParams<null>) => string;
|
call: (callParams: CallParams<null>) => string;
|
||||||
}
|
}
|
||||||
|
|
||||||
export function registerParService(service: ParServiceDef): void;
|
export function registerParService(service: ParServiceDef): void;
|
||||||
export function registerParService(serviceId: string, service: ParServiceDef): void;
|
export function registerParService(serviceId: string, service: ParServiceDef): void;
|
||||||
export function registerParService(peer: FluencePeer, service: ParServiceDef): void;
|
export function registerParService(peer: FluencePeer, service: ParServiceDef): void;
|
||||||
export function registerParService(peer: FluencePeer, serviceId: string, service: ParServiceDef): void;
|
export function registerParService(peer: FluencePeer, serviceId: string, service: ParServiceDef): void;
|
||||||
export function registerParService(...args: any) {
|
export function registerParService(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let serviceId: any;
|
let serviceId: any;
|
||||||
let service: any;
|
let service: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof args[0] === 'string') {
|
if (typeof args[0] === 'string') {
|
||||||
serviceId = args[0];
|
serviceId = args[0];
|
||||||
} else if (typeof args[1] === 'string') {
|
} else if (typeof args[1] === 'string') {
|
||||||
serviceId = args[1];
|
serviceId = args[1];
|
||||||
}
|
} else {
|
||||||
else {
|
serviceId = 'parservice-id';
|
||||||
serviceId = "parservice-id"
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (!(args[0] instanceof FluencePeer) && typeof args[0] === 'object') {
|
// Figuring out which overload is the service.
|
||||||
|
// If the first argument is not Fluence Peer and it is an object, then it can only be the service def
|
||||||
|
// If the first argument is peer, we are checking further. The second argument might either be
|
||||||
|
// an object, that it must be the service object
|
||||||
|
// or a string, which is the service id. In that case the service is the third argument
|
||||||
|
if (!FluencePeer.isInstance(args[0]) && typeof args[0] === 'object') {
|
||||||
service = args[0];
|
service = args[0];
|
||||||
} else if (typeof args[1] === 'object') {
|
} else if (typeof args[1] === 'object') {
|
||||||
service = args[1];
|
service = args[1];
|
||||||
@ -52,59 +55,61 @@ export function registerParService(peer: FluencePeer, serviceId: string, service
|
|||||||
service = args[2];
|
service = args[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
peer.internals.callServiceHandler.use((req, resp, next) => {
|
peer.internals.callServiceHandler.use((req, resp, next) => {
|
||||||
if (req.serviceId !== serviceId) {
|
if (req.serviceId !== serviceId) {
|
||||||
next();
|
next();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'call') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
resp.result = service.call(callParams)
|
|
||||||
|
|
||||||
}
|
if (req.fnName === 'call') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
next();
|
tetraplets: {},
|
||||||
});
|
};
|
||||||
}
|
resp.retCode = ResultCodes.success;
|
||||||
|
resp.result = service.call(callParams);
|
||||||
|
}
|
||||||
|
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
// Functions
|
// Functions
|
||||||
|
|
||||||
export function parFunc(node: string, c: (arg0: {external_addresses:string[]}, callParams: CallParams<'arg0'>) => void, config?: {ttl?: number}) : Promise<void>;
|
export function parFunc(
|
||||||
export function parFunc(peer: FluencePeer, node: string, c: (arg0: {external_addresses:string[]}, callParams: CallParams<'arg0'>) => void, config?: {ttl?: number}) : Promise<void>;
|
node: string,
|
||||||
export function parFunc(...args: any) {
|
c: (arg0: { external_addresses: string[] }, callParams: CallParams<'arg0'>) => void,
|
||||||
let peer: FluencePeer;
|
config?: { ttl?: number },
|
||||||
let node: any;
|
): Promise<void>;
|
||||||
let c: any;
|
export function parFunc(
|
||||||
let config: any;
|
peer: FluencePeer,
|
||||||
if (args[0] instanceof FluencePeer) {
|
node: string,
|
||||||
peer = args[0];
|
c: (arg0: { external_addresses: string[] }, callParams: CallParams<'arg0'>) => void,
|
||||||
node = args[1];
|
config?: { ttl?: number },
|
||||||
c = args[2];
|
): Promise<void>;
|
||||||
config = args[3];
|
export function parFunc(...args: any) {
|
||||||
} else {
|
let peer: FluencePeer;
|
||||||
peer = FluencePeer.default;
|
let node: any;
|
||||||
node = args[0];
|
let c: any;
|
||||||
c = args[1];
|
let config: any;
|
||||||
config = args[2];
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
}
|
peer = args[0];
|
||||||
|
node = args[1];
|
||||||
let request: RequestFlow;
|
c = args[2];
|
||||||
const promise = new Promise<void>((resolve, reject) => {
|
config = args[3];
|
||||||
const r = new RequestFlowBuilder()
|
} else {
|
||||||
.disableInjections()
|
peer = Fluence.getPeer();
|
||||||
.withRawScript(
|
node = args[0];
|
||||||
`
|
c = args[1];
|
||||||
|
config = args[2];
|
||||||
|
}
|
||||||
|
|
||||||
|
let request: RequestFlow;
|
||||||
|
const promise = new Promise<void>((resolve, reject) => {
|
||||||
|
const r = new RequestFlowBuilder()
|
||||||
|
.disableInjections()
|
||||||
|
.withRawScript(
|
||||||
|
`
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -138,32 +143,31 @@ config = args[2];
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'node', () => {
|
||||||
|
return node;
|
||||||
});
|
});
|
||||||
h.on('getDataSrv', 'node', () => {return node;});
|
|
||||||
|
|
||||||
h.use((req, resp, next) => {
|
h.use((req, resp, next) => {
|
||||||
if(req.serviceId === 'callbackSrv' && req.fnName === 'c') {
|
if (req.serviceId === 'callbackSrv' && req.fnName === 'c') {
|
||||||
|
const callParams = {
|
||||||
const callParams = {
|
...req.particleContext,
|
||||||
...req.particleContext,
|
tetraplets: {
|
||||||
tetraplets: {
|
arg0: req.tetraplets[0],
|
||||||
arg0: req.tetraplets[0]
|
},
|
||||||
},
|
};
|
||||||
};
|
resp.retCode = ResultCodes.success;
|
||||||
resp.retCode = ResultCodes.success;
|
c(req.args[0], callParams);
|
||||||
c(req.args[0], callParams); resp.result = {}
|
resp.result = {};
|
||||||
|
}
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
|
||||||
}
|
h.onEvent('callbackSrv', 'response', (args) => {});
|
||||||
next();
|
|
||||||
});
|
|
||||||
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
|
||||||
|
|
||||||
});
|
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -173,13 +177,12 @@ config = args[2];
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for parFunc');
|
reject('Request timed out for parFunc');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return Promise.race([promise, Promise.resolve()]);
|
return Promise.race([promise, Promise.resolve()]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* This file is auto-generated. Do not edit manually: changes may be erased.
|
* This file is auto-generated. Do not edit manually: changes may be erased.
|
||||||
* Generated by Aqua compiler: https://github.com/fluencelabs/aqua/.
|
* 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
|
* If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues
|
||||||
* Aqua version: 0.3.0-SNAPSHOT
|
* Aqua version: 0.3.0-SNAPSHOT
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence, FluencePeer } from '@fluencelabs/fluence';
|
||||||
import {
|
import {
|
||||||
ResultCodes,
|
ResultCodes,
|
||||||
RequestFlow,
|
RequestFlow,
|
||||||
@ -14,37 +14,45 @@ import {
|
|||||||
CallParams,
|
CallParams,
|
||||||
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
||||||
|
|
||||||
|
|
||||||
// Services
|
// Services
|
||||||
|
|
||||||
export interface AquaDHTDef {
|
export interface AquaDHTDef {
|
||||||
put_host_value: (key: string, value: string, service_id: string[], callParams: CallParams<'key' | 'value' | 'service_id'>) => string;
|
put_host_value: (
|
||||||
}
|
key: string,
|
||||||
|
value: string,
|
||||||
|
service_id: string[],
|
||||||
|
callParams: CallParams<'key' | 'value' | 'service_id'>,
|
||||||
|
) => string;
|
||||||
|
}
|
||||||
|
|
||||||
export function registerAquaDHT(service: AquaDHTDef): void;
|
export function registerAquaDHT(service: AquaDHTDef): void;
|
||||||
export function registerAquaDHT(serviceId: string, service: AquaDHTDef): void;
|
export function registerAquaDHT(serviceId: string, service: AquaDHTDef): void;
|
||||||
export function registerAquaDHT(peer: FluencePeer, service: AquaDHTDef): void;
|
export function registerAquaDHT(peer: FluencePeer, service: AquaDHTDef): void;
|
||||||
export function registerAquaDHT(peer: FluencePeer, serviceId: string, service: AquaDHTDef): void;
|
export function registerAquaDHT(peer: FluencePeer, serviceId: string, service: AquaDHTDef): void;
|
||||||
export function registerAquaDHT(...args: any) {
|
export function registerAquaDHT(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let serviceId: any;
|
let serviceId: any;
|
||||||
let service: any;
|
let service: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof args[0] === 'string') {
|
if (typeof args[0] === 'string') {
|
||||||
serviceId = args[0];
|
serviceId = args[0];
|
||||||
} else if (typeof args[1] === 'string') {
|
} else if (typeof args[1] === 'string') {
|
||||||
serviceId = args[1];
|
serviceId = args[1];
|
||||||
}
|
} else {
|
||||||
else {
|
serviceId = 'test-dht';
|
||||||
serviceId = "test-dht"
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (!(args[0] instanceof FluencePeer) && typeof args[0] === 'object') {
|
// Figuring out which overload is the service.
|
||||||
|
// If the first argument is not Fluence Peer and it is an object, then it can only be the service def
|
||||||
|
// If the first argument is peer, we are checking further. The second argument might either be
|
||||||
|
// an object, that it must be the service object
|
||||||
|
// or a string, which is the service id. In that case the service is the third argument
|
||||||
|
if (!FluencePeer.isInstance(args[0]) && typeof args[0] === 'object') {
|
||||||
service = args[0];
|
service = args[0];
|
||||||
} else if (typeof args[1] === 'object') {
|
} else if (typeof args[1] === 'object') {
|
||||||
service = args[1];
|
service = args[1];
|
||||||
@ -52,62 +60,70 @@ export function registerAquaDHT(peer: FluencePeer, serviceId: string, service: A
|
|||||||
service = args[2];
|
service = args[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
peer.internals.callServiceHandler.use((req, resp, next) => {
|
peer.internals.callServiceHandler.use((req, resp, next) => {
|
||||||
if (req.serviceId !== serviceId) {
|
if (req.serviceId !== serviceId) {
|
||||||
next();
|
next();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'put_host_value') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
key: req.tetraplets[0],value: req.tetraplets[1],service_id: req.tetraplets[2]
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
resp.result = service.put_host_value(req.args[0], req.args[1], req.args[2], callParams)
|
|
||||||
|
|
||||||
}
|
if (req.fnName === 'put_host_value') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
next();
|
tetraplets: {
|
||||||
});
|
key: req.tetraplets[0],
|
||||||
}
|
value: req.tetraplets[1],
|
||||||
|
service_id: req.tetraplets[2],
|
||||||
|
},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
resp.result = service.put_host_value(req.args[0], req.args[1], req.args[2], callParams);
|
||||||
|
}
|
||||||
|
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
// Functions
|
// Functions
|
||||||
|
|
||||||
export function putHostValue(key: string, value: string, service_id: string | null, config?: {ttl?: number}) : Promise<string>;
|
export function putHostValue(
|
||||||
export function putHostValue(peer: FluencePeer, key: string, value: string, service_id: string | null, config?: {ttl?: number}) : Promise<string>;
|
key: string,
|
||||||
export function putHostValue(...args: any) {
|
value: string,
|
||||||
let peer: FluencePeer;
|
service_id: string | null,
|
||||||
let key: any;
|
config?: { ttl?: number },
|
||||||
let value: any;
|
): Promise<string>;
|
||||||
let service_id: any;
|
export function putHostValue(
|
||||||
let config: any;
|
peer: FluencePeer,
|
||||||
if (args[0] instanceof FluencePeer) {
|
key: string,
|
||||||
peer = args[0];
|
value: string,
|
||||||
key = args[1];
|
service_id: string | null,
|
||||||
value = args[2];
|
config?: { ttl?: number },
|
||||||
service_id = args[3];
|
): Promise<string>;
|
||||||
config = args[4];
|
export function putHostValue(...args: any) {
|
||||||
} else {
|
let peer: FluencePeer;
|
||||||
peer = FluencePeer.default;
|
let key: any;
|
||||||
key = args[0];
|
let value: any;
|
||||||
value = args[1];
|
let service_id: any;
|
||||||
service_id = args[2];
|
let config: any;
|
||||||
config = args[3];
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
}
|
peer = args[0];
|
||||||
|
key = args[1];
|
||||||
let request: RequestFlow;
|
value = args[2];
|
||||||
const promise = new Promise<string>((resolve, reject) => {
|
service_id = args[3];
|
||||||
const r = new RequestFlowBuilder()
|
config = args[4];
|
||||||
.disableInjections()
|
} else {
|
||||||
.withRawScript(
|
peer = Fluence.getPeer();
|
||||||
`
|
key = args[0];
|
||||||
|
value = args[1];
|
||||||
|
service_id = args[2];
|
||||||
|
config = args[3];
|
||||||
|
}
|
||||||
|
|
||||||
|
let request: RequestFlow;
|
||||||
|
const promise = new Promise<string>((resolve, reject) => {
|
||||||
|
const r = new RequestFlowBuilder()
|
||||||
|
.disableInjections()
|
||||||
|
.withRawScript(
|
||||||
|
`
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -132,18 +148,24 @@ config = args[3];
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'key', () => {
|
||||||
|
return key;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'value', () => {
|
||||||
|
return value;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'service_id', () => {
|
||||||
|
return service_id === null ? [] : [service_id];
|
||||||
});
|
});
|
||||||
h.on('getDataSrv', 'key', () => {return key;});
|
|
||||||
h.on('getDataSrv', 'value', () => {return value;});
|
|
||||||
h.on('getDataSrv', 'service_id', () => {return service_id === null ? [] : [service_id];});
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
const [res] = args;
|
const [res] = args;
|
||||||
resolve(res);
|
resolve(res);
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -153,40 +175,38 @@ h.on('getDataSrv', 'service_id', () => {return service_id === null ? [] : [servi
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for putHostValue');
|
reject('Request timed out for putHostValue');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
export function create_client_util(service_id: string, config?: { ttl?: number }): Promise<string>;
|
||||||
|
export function create_client_util(peer: FluencePeer, service_id: string, config?: { ttl?: number }): Promise<string>;
|
||||||
|
export function create_client_util(...args: any) {
|
||||||
|
let peer: FluencePeer;
|
||||||
|
let service_id: any;
|
||||||
|
let config: any;
|
||||||
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
|
peer = args[0];
|
||||||
|
service_id = args[1];
|
||||||
|
config = args[2];
|
||||||
|
} else {
|
||||||
|
peer = Fluence.getPeer();
|
||||||
|
service_id = args[0];
|
||||||
|
config = args[1];
|
||||||
|
}
|
||||||
|
|
||||||
export function create_client_util(service_id: string, config?: {ttl?: number}) : Promise<string>;
|
let request: RequestFlow;
|
||||||
export function create_client_util(peer: FluencePeer, service_id: string, config?: {ttl?: number}) : Promise<string>;
|
const promise = new Promise<string>((resolve, reject) => {
|
||||||
export function create_client_util(...args: any) {
|
const r = new RequestFlowBuilder()
|
||||||
let peer: FluencePeer;
|
.disableInjections()
|
||||||
let service_id: any;
|
.withRawScript(
|
||||||
let config: any;
|
`
|
||||||
if (args[0] instanceof FluencePeer) {
|
|
||||||
peer = args[0];
|
|
||||||
service_id = args[1];
|
|
||||||
config = args[2];
|
|
||||||
} else {
|
|
||||||
peer = FluencePeer.default;
|
|
||||||
service_id = args[0];
|
|
||||||
config = args[1];
|
|
||||||
}
|
|
||||||
|
|
||||||
let request: RequestFlow;
|
|
||||||
const promise = new Promise<string>((resolve, reject) => {
|
|
||||||
const r = new RequestFlowBuilder()
|
|
||||||
.disableInjections()
|
|
||||||
.withRawScript(
|
|
||||||
`
|
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -205,16 +225,18 @@ config = args[1];
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'service_id', () => {
|
||||||
|
return service_id;
|
||||||
});
|
});
|
||||||
h.on('getDataSrv', 'service_id', () => {return service_id;});
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
const [res] = args;
|
const [res] = args;
|
||||||
resolve(res);
|
resolve(res);
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -224,13 +246,12 @@ config = args[1];
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for create_client_util');
|
reject('Request timed out for create_client_util');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* This file is auto-generated. Do not edit manually: changes may be erased.
|
* This file is auto-generated. Do not edit manually: changes may be erased.
|
||||||
* Generated by Aqua compiler: https://github.com/fluencelabs/aqua/.
|
* 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
|
* If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues
|
||||||
* Aqua version: 0.3.0-SNAPSHOT
|
* Aqua version: 0.3.0-SNAPSHOT
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence, FluencePeer } from '@fluencelabs/fluence';
|
||||||
import {
|
import {
|
||||||
ResultCodes,
|
ResultCodes,
|
||||||
RequestFlow,
|
RequestFlow,
|
||||||
@ -14,37 +14,40 @@ import {
|
|||||||
CallParams,
|
CallParams,
|
||||||
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
||||||
|
|
||||||
|
|
||||||
// Services
|
// Services
|
||||||
|
|
||||||
export interface PrintlnDef {
|
export interface PrintlnDef {
|
||||||
print: (arg0: string, callParams: CallParams<'arg0'>) => void;
|
print: (arg0: string, callParams: CallParams<'arg0'>) => void;
|
||||||
}
|
}
|
||||||
|
|
||||||
export function registerPrintln(service: PrintlnDef): void;
|
export function registerPrintln(service: PrintlnDef): void;
|
||||||
export function registerPrintln(serviceId: string, service: PrintlnDef): void;
|
export function registerPrintln(serviceId: string, service: PrintlnDef): void;
|
||||||
export function registerPrintln(peer: FluencePeer, service: PrintlnDef): void;
|
export function registerPrintln(peer: FluencePeer, service: PrintlnDef): void;
|
||||||
export function registerPrintln(peer: FluencePeer, serviceId: string, service: PrintlnDef): void;
|
export function registerPrintln(peer: FluencePeer, serviceId: string, service: PrintlnDef): void;
|
||||||
export function registerPrintln(...args: any) {
|
export function registerPrintln(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let serviceId: any;
|
let serviceId: any;
|
||||||
let service: any;
|
let service: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof args[0] === 'string') {
|
if (typeof args[0] === 'string') {
|
||||||
serviceId = args[0];
|
serviceId = args[0];
|
||||||
} else if (typeof args[1] === 'string') {
|
} else if (typeof args[1] === 'string') {
|
||||||
serviceId = args[1];
|
serviceId = args[1];
|
||||||
}
|
} else {
|
||||||
else {
|
serviceId = 'println-service-id';
|
||||||
serviceId = "println-service-id"
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (!(args[0] instanceof FluencePeer) && typeof args[0] === 'object') {
|
// Figuring out which overload is the service.
|
||||||
|
// If the first argument is not Fluence Peer and it is an object, then it can only be the service def
|
||||||
|
// If the first argument is peer, we are checking further. The second argument might either be
|
||||||
|
// an object, that it must be the service object
|
||||||
|
// or a string, which is the service id. In that case the service is the third argument
|
||||||
|
if (!FluencePeer.isInstance(args[0]) && typeof args[0] === 'object') {
|
||||||
service = args[0];
|
service = args[0];
|
||||||
} else if (typeof args[1] === 'object') {
|
} else if (typeof args[1] === 'object') {
|
||||||
service = args[1];
|
service = args[1];
|
||||||
@ -52,56 +55,52 @@ export function registerPrintln(peer: FluencePeer, serviceId: string, service: P
|
|||||||
service = args[2];
|
service = args[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
peer.internals.callServiceHandler.use((req, resp, next) => {
|
peer.internals.callServiceHandler.use((req, resp, next) => {
|
||||||
if (req.serviceId !== serviceId) {
|
if (req.serviceId !== serviceId) {
|
||||||
next();
|
next();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'print') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
arg0: req.tetraplets[0]
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
service.print(req.args[0], callParams); resp.result = {}
|
|
||||||
|
|
||||||
}
|
if (req.fnName === 'print') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
next();
|
tetraplets: {
|
||||||
});
|
arg0: req.tetraplets[0],
|
||||||
}
|
},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
service.print(req.args[0], callParams);
|
||||||
|
resp.result = {};
|
||||||
|
}
|
||||||
|
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
// Functions
|
// Functions
|
||||||
|
|
||||||
export function print(str: string, config?: {ttl?: number}) : Promise<void>;
|
export function print(str: string, config?: { ttl?: number }): Promise<void>;
|
||||||
export function print(peer: FluencePeer, str: string, config?: {ttl?: number}) : Promise<void>;
|
export function print(peer: FluencePeer, str: string, config?: { ttl?: number }): Promise<void>;
|
||||||
export function print(...args: any) {
|
export function print(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let str: any;
|
let str: any;
|
||||||
let config: any;
|
let config: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
str = args[1];
|
str = args[1];
|
||||||
config = args[2];
|
config = args[2];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
str = args[0];
|
str = args[0];
|
||||||
config = args[1];
|
config = args[1];
|
||||||
}
|
}
|
||||||
|
|
||||||
let request: RequestFlow;
|
let request: RequestFlow;
|
||||||
const promise = new Promise<void>((resolve, reject) => {
|
const promise = new Promise<void>((resolve, reject) => {
|
||||||
const r = new RequestFlowBuilder()
|
const r = new RequestFlowBuilder()
|
||||||
.disableInjections()
|
.disableInjections()
|
||||||
.withRawScript(
|
.withRawScript(
|
||||||
`
|
`
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -114,15 +113,15 @@ config = args[1];
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
});
|
});
|
||||||
h.on('getDataSrv', 'str', () => {return str;});
|
h.on('getDataSrv', 'str', () => {
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
return str;
|
||||||
|
});
|
||||||
});
|
h.onEvent('callbackSrv', 'response', (args) => {});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -132,13 +131,12 @@ config = args[1];
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for print');
|
reject('Request timed out for print');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return Promise.race([promise, Promise.resolve()]);
|
return Promise.race([promise, Promise.resolve()]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* This file is auto-generated. Do not edit manually: changes may be erased.
|
* This file is auto-generated. Do not edit manually: changes may be erased.
|
||||||
* Generated by Aqua compiler: https://github.com/fluencelabs/aqua/.
|
* 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
|
* If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues
|
||||||
* Aqua version: 0.3.0-SNAPSHOT
|
* Aqua version: 0.3.0-SNAPSHOT
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence, FluencePeer } from '@fluencelabs/fluence';
|
||||||
import {
|
import {
|
||||||
ResultCodes,
|
ResultCodes,
|
||||||
RequestFlow,
|
RequestFlow,
|
||||||
@ -14,37 +14,40 @@ import {
|
|||||||
CallParams,
|
CallParams,
|
||||||
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
||||||
|
|
||||||
|
|
||||||
// Services
|
// Services
|
||||||
|
|
||||||
export interface OpADef {
|
export interface OpADef {
|
||||||
get_str: (callParams: CallParams<null>) => string;
|
get_str: (callParams: CallParams<null>) => string;
|
||||||
}
|
}
|
||||||
|
|
||||||
export function registerOpA(service: OpADef): void;
|
export function registerOpA(service: OpADef): void;
|
||||||
export function registerOpA(serviceId: string, service: OpADef): void;
|
export function registerOpA(serviceId: string, service: OpADef): void;
|
||||||
export function registerOpA(peer: FluencePeer, service: OpADef): void;
|
export function registerOpA(peer: FluencePeer, service: OpADef): void;
|
||||||
export function registerOpA(peer: FluencePeer, serviceId: string, service: OpADef): void;
|
export function registerOpA(peer: FluencePeer, serviceId: string, service: OpADef): void;
|
||||||
export function registerOpA(...args: any) {
|
export function registerOpA(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let serviceId: any;
|
let serviceId: any;
|
||||||
let service: any;
|
let service: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof args[0] === 'string') {
|
if (typeof args[0] === 'string') {
|
||||||
serviceId = args[0];
|
serviceId = args[0];
|
||||||
} else if (typeof args[1] === 'string') {
|
} else if (typeof args[1] === 'string') {
|
||||||
serviceId = args[1];
|
serviceId = args[1];
|
||||||
}
|
} else {
|
||||||
else {
|
serviceId = 'pop';
|
||||||
serviceId = "pop"
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (!(args[0] instanceof FluencePeer) && typeof args[0] === 'object') {
|
// Figuring out which overload is the service.
|
||||||
|
// If the first argument is not Fluence Peer and it is an object, then it can only be the service def
|
||||||
|
// If the first argument is peer, we are checking further. The second argument might either be
|
||||||
|
// an object, that it must be the service object
|
||||||
|
// or a string, which is the service id. In that case the service is the third argument
|
||||||
|
if (!FluencePeer.isInstance(args[0]) && typeof args[0] === 'object') {
|
||||||
service = args[0];
|
service = args[0];
|
||||||
} else if (typeof args[1] === 'object') {
|
} else if (typeof args[1] === 'object') {
|
||||||
service = args[1];
|
service = args[1];
|
||||||
@ -52,54 +55,47 @@ export function registerOpA(peer: FluencePeer, serviceId: string, service: OpADe
|
|||||||
service = args[2];
|
service = args[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
peer.internals.callServiceHandler.use((req, resp, next) => {
|
peer.internals.callServiceHandler.use((req, resp, next) => {
|
||||||
if (req.serviceId !== serviceId) {
|
if (req.serviceId !== serviceId) {
|
||||||
next();
|
next();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'get_str') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
resp.result = service.get_str(callParams)
|
|
||||||
|
|
||||||
}
|
if (req.fnName === 'get_str') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
next();
|
tetraplets: {},
|
||||||
});
|
};
|
||||||
}
|
resp.retCode = ResultCodes.success;
|
||||||
|
resp.result = service.get_str(callParams);
|
||||||
|
}
|
||||||
|
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
// Functions
|
// Functions
|
||||||
|
|
||||||
export function get_results(config?: {ttl?: number}) : Promise<string[]>;
|
export function get_results(config?: { ttl?: number }): Promise<string[]>;
|
||||||
export function get_results(peer: FluencePeer, config?: {ttl?: number}) : Promise<string[]>;
|
export function get_results(peer: FluencePeer, config?: { ttl?: number }): Promise<string[]>;
|
||||||
export function get_results(...args: any) {
|
export function get_results(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
|
|
||||||
let config: any;
|
let config: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
config = args[1];
|
config = args[1];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
config = args[0];
|
config = args[0];
|
||||||
}
|
}
|
||||||
|
|
||||||
let request: RequestFlow;
|
let request: RequestFlow;
|
||||||
const promise = new Promise<string[]>((resolve, reject) => {
|
const promise = new Promise<string[]>((resolve, reject) => {
|
||||||
const r = new RequestFlowBuilder()
|
const r = new RequestFlowBuilder()
|
||||||
.disableInjections()
|
.disableInjections()
|
||||||
.withRawScript(
|
.withRawScript(
|
||||||
`
|
`
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -121,16 +117,16 @@ export function registerOpA(peer: FluencePeer, serviceId: string, service: OpADe
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
const [res] = args;
|
const [res] = args;
|
||||||
resolve(res);
|
resolve(res);
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -140,13 +136,12 @@ export function registerOpA(peer: FluencePeer, serviceId: string, service: OpADe
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for get_results');
|
reject('Request timed out for get_results');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* This file is auto-generated. Do not edit manually: changes may be erased.
|
* This file is auto-generated. Do not edit manually: changes may be erased.
|
||||||
* Generated by Aqua compiler: https://github.com/fluencelabs/aqua/.
|
* 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
|
* If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues
|
||||||
* Aqua version: 0.3.0-SNAPSHOT
|
* Aqua version: 0.3.0-SNAPSHOT
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence, FluencePeer } from '@fluencelabs/fluence';
|
||||||
import {
|
import {
|
||||||
ResultCodes,
|
ResultCodes,
|
||||||
RequestFlow,
|
RequestFlow,
|
||||||
@ -14,32 +14,30 @@ import {
|
|||||||
CallParams,
|
CallParams,
|
||||||
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
||||||
|
|
||||||
|
|
||||||
// Services
|
// Services
|
||||||
|
|
||||||
|
|
||||||
// Functions
|
// Functions
|
||||||
|
|
||||||
export function returnLiteral(config?: {ttl?: number}) : Promise<string>;
|
export function returnLiteral(config?: { ttl?: number }): Promise<string>;
|
||||||
export function returnLiteral(peer: FluencePeer, config?: {ttl?: number}) : Promise<string>;
|
export function returnLiteral(peer: FluencePeer, config?: { ttl?: number }): Promise<string>;
|
||||||
export function returnLiteral(...args: any) {
|
export function returnLiteral(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
|
|
||||||
let config: any;
|
let config: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
config = args[1];
|
config = args[1];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
config = args[0];
|
config = args[0];
|
||||||
}
|
}
|
||||||
|
|
||||||
let request: RequestFlow;
|
let request: RequestFlow;
|
||||||
const promise = new Promise<string>((resolve, reject) => {
|
const promise = new Promise<string>((resolve, reject) => {
|
||||||
const r = new RequestFlowBuilder()
|
const r = new RequestFlowBuilder()
|
||||||
.disableInjections()
|
.disableInjections()
|
||||||
.withRawScript(
|
.withRawScript(
|
||||||
`
|
`
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(call %init_peer_id% ("getDataSrv" "-relay-") [] -relay-)
|
(call %init_peer_id% ("getDataSrv" "-relay-") [] -relay-)
|
||||||
@ -52,16 +50,16 @@ import {
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
const [res] = args;
|
const [res] = args;
|
||||||
resolve(res);
|
resolve(res);
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -71,13 +69,12 @@ import {
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for returnLiteral');
|
reject('Request timed out for returnLiteral');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* This file is auto-generated. Do not edit manually: changes may be erased.
|
* This file is auto-generated. Do not edit manually: changes may be erased.
|
||||||
* Generated by Aqua compiler: https://github.com/fluencelabs/aqua/.
|
* 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
|
* If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues
|
||||||
* Aqua version: 0.3.0-SNAPSHOT
|
* Aqua version: 0.3.0-SNAPSHOT
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence, FluencePeer } from '@fluencelabs/fluence';
|
||||||
import {
|
import {
|
||||||
ResultCodes,
|
ResultCodes,
|
||||||
RequestFlow,
|
RequestFlow,
|
||||||
@ -14,37 +14,40 @@ import {
|
|||||||
CallParams,
|
CallParams,
|
||||||
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
||||||
|
|
||||||
|
|
||||||
// Services
|
// Services
|
||||||
|
|
||||||
export interface StringerDef {
|
export interface StringerDef {
|
||||||
returnString: (arg0: string, callParams: CallParams<'arg0'>) => string;
|
returnString: (arg0: string, callParams: CallParams<'arg0'>) => string;
|
||||||
}
|
}
|
||||||
|
|
||||||
export function registerStringer(service: StringerDef): void;
|
export function registerStringer(service: StringerDef): void;
|
||||||
export function registerStringer(serviceId: string, service: StringerDef): void;
|
export function registerStringer(serviceId: string, service: StringerDef): void;
|
||||||
export function registerStringer(peer: FluencePeer, service: StringerDef): void;
|
export function registerStringer(peer: FluencePeer, service: StringerDef): void;
|
||||||
export function registerStringer(peer: FluencePeer, serviceId: string, service: StringerDef): void;
|
export function registerStringer(peer: FluencePeer, serviceId: string, service: StringerDef): void;
|
||||||
export function registerStringer(...args: any) {
|
export function registerStringer(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let serviceId: any;
|
let serviceId: any;
|
||||||
let service: any;
|
let service: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof args[0] === 'string') {
|
if (typeof args[0] === 'string') {
|
||||||
serviceId = args[0];
|
serviceId = args[0];
|
||||||
} else if (typeof args[1] === 'string') {
|
} else if (typeof args[1] === 'string') {
|
||||||
serviceId = args[1];
|
serviceId = args[1];
|
||||||
}
|
} else {
|
||||||
else {
|
serviceId = 'stringer-id';
|
||||||
serviceId = "stringer-id"
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (!(args[0] instanceof FluencePeer) && typeof args[0] === 'object') {
|
// Figuring out which overload is the service.
|
||||||
|
// If the first argument is not Fluence Peer and it is an object, then it can only be the service def
|
||||||
|
// If the first argument is peer, we are checking further. The second argument might either be
|
||||||
|
// an object, that it must be the service object
|
||||||
|
// or a string, which is the service id. In that case the service is the third argument
|
||||||
|
if (!FluencePeer.isInstance(args[0]) && typeof args[0] === 'object') {
|
||||||
service = args[0];
|
service = args[0];
|
||||||
} else if (typeof args[1] === 'object') {
|
} else if (typeof args[1] === 'object') {
|
||||||
service = args[1];
|
service = args[1];
|
||||||
@ -52,54 +55,49 @@ export function registerStringer(peer: FluencePeer, serviceId: string, service:
|
|||||||
service = args[2];
|
service = args[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
peer.internals.callServiceHandler.use((req, resp, next) => {
|
peer.internals.callServiceHandler.use((req, resp, next) => {
|
||||||
if (req.serviceId !== serviceId) {
|
if (req.serviceId !== serviceId) {
|
||||||
next();
|
next();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'returnString') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
arg0: req.tetraplets[0]
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
resp.result = service.returnString(req.args[0], callParams)
|
|
||||||
|
|
||||||
}
|
if (req.fnName === 'returnString') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
next();
|
tetraplets: {
|
||||||
});
|
arg0: req.tetraplets[0],
|
||||||
}
|
},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
resp.result = service.returnString(req.args[0], callParams);
|
||||||
|
}
|
||||||
|
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
// Functions
|
// Functions
|
||||||
|
|
||||||
export function returnNone(config?: {ttl?: number}) : Promise<string | null>;
|
export function returnNone(config?: { ttl?: number }): Promise<string | null>;
|
||||||
export function returnNone(peer: FluencePeer, config?: {ttl?: number}) : Promise<string | null>;
|
export function returnNone(peer: FluencePeer, config?: { ttl?: number }): Promise<string | null>;
|
||||||
export function returnNone(...args: any) {
|
export function returnNone(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
|
|
||||||
let config: any;
|
let config: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
config = args[1];
|
config = args[1];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
config = args[0];
|
config = args[0];
|
||||||
}
|
}
|
||||||
|
|
||||||
let request: RequestFlow;
|
let request: RequestFlow;
|
||||||
const promise = new Promise<string | null>((resolve, reject) => {
|
const promise = new Promise<string | null>((resolve, reject) => {
|
||||||
const r = new RequestFlowBuilder()
|
const r = new RequestFlowBuilder()
|
||||||
.disableInjections()
|
.disableInjections()
|
||||||
.withRawScript(
|
.withRawScript(
|
||||||
`
|
`
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(call %init_peer_id% ("getDataSrv" "-relay-") [] -relay-)
|
(call %init_peer_id% ("getDataSrv" "-relay-") [] -relay-)
|
||||||
@ -112,20 +110,22 @@ export function registerStringer(peer: FluencePeer, serviceId: string, service:
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
let [opt] = args;
|
let [opt] = args;
|
||||||
if (Array.isArray(opt)) {
|
if (Array.isArray(opt)) {
|
||||||
if (opt.length === 0) { resolve(null); }
|
if (opt.length === 0) {
|
||||||
opt = opt[0];
|
resolve(null);
|
||||||
}
|
}
|
||||||
return resolve(opt);
|
opt = opt[0];
|
||||||
});
|
}
|
||||||
|
return resolve(opt);
|
||||||
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -135,38 +135,36 @@ export function registerStringer(peer: FluencePeer, serviceId: string, service:
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for returnNone');
|
reject('Request timed out for returnNone');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
export function stringNone(config?: { ttl?: number }): Promise<string | null>;
|
||||||
|
export function stringNone(peer: FluencePeer, config?: { ttl?: number }): Promise<string | null>;
|
||||||
|
export function stringNone(...args: any) {
|
||||||
|
let peer: FluencePeer;
|
||||||
|
|
||||||
export function stringNone(config?: {ttl?: number}) : Promise<string | null>;
|
let config: any;
|
||||||
export function stringNone(peer: FluencePeer, config?: {ttl?: number}) : Promise<string | null>;
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
export function stringNone(...args: any) {
|
peer = args[0];
|
||||||
let peer: FluencePeer;
|
config = args[1];
|
||||||
|
} else {
|
||||||
let config: any;
|
peer = Fluence.getPeer();
|
||||||
if (args[0] instanceof FluencePeer) {
|
config = args[0];
|
||||||
peer = args[0];
|
}
|
||||||
config = args[1];
|
|
||||||
} else {
|
let request: RequestFlow;
|
||||||
peer = FluencePeer.default;
|
const promise = new Promise<string | null>((resolve, reject) => {
|
||||||
config = args[0];
|
const r = new RequestFlowBuilder()
|
||||||
}
|
.disableInjections()
|
||||||
|
.withRawScript(
|
||||||
let request: RequestFlow;
|
`
|
||||||
const promise = new Promise<string | null>((resolve, reject) => {
|
|
||||||
const r = new RequestFlowBuilder()
|
|
||||||
.disableInjections()
|
|
||||||
.withRawScript(
|
|
||||||
`
|
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(call %init_peer_id% ("getDataSrv" "-relay-") [] -relay-)
|
(call %init_peer_id% ("getDataSrv" "-relay-") [] -relay-)
|
||||||
@ -179,20 +177,22 @@ export function registerStringer(peer: FluencePeer, serviceId: string, service:
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
let [opt] = args;
|
let [opt] = args;
|
||||||
if (Array.isArray(opt)) {
|
if (Array.isArray(opt)) {
|
||||||
if (opt.length === 0) { resolve(null); }
|
if (opt.length === 0) {
|
||||||
opt = opt[0];
|
resolve(null);
|
||||||
}
|
}
|
||||||
return resolve(opt);
|
opt = opt[0];
|
||||||
});
|
}
|
||||||
|
return resolve(opt);
|
||||||
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -202,104 +202,36 @@ export function registerStringer(peer: FluencePeer, serviceId: string, service:
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for stringNone');
|
reject('Request timed out for stringNone');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
export function returnNil(config?: { ttl?: number }): Promise<string[]>;
|
||||||
|
export function returnNil(peer: FluencePeer, config?: { ttl?: number }): Promise<string[]>;
|
||||||
|
export function returnNil(...args: any) {
|
||||||
|
let peer: FluencePeer;
|
||||||
|
|
||||||
export function returnNil(config?: {ttl?: number}) : Promise<string[]>;
|
let config: any;
|
||||||
export function returnNil(peer: FluencePeer, config?: {ttl?: number}) : Promise<string[]>;
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
export function returnNil(...args: any) {
|
peer = args[0];
|
||||||
let peer: FluencePeer;
|
config = args[1];
|
||||||
|
} else {
|
||||||
let config: any;
|
peer = Fluence.getPeer();
|
||||||
if (args[0] instanceof FluencePeer) {
|
config = args[0];
|
||||||
peer = args[0];
|
}
|
||||||
config = args[1];
|
|
||||||
} else {
|
|
||||||
peer = FluencePeer.default;
|
|
||||||
config = args[0];
|
|
||||||
}
|
|
||||||
|
|
||||||
let request: RequestFlow;
|
|
||||||
const promise = new Promise<string[]>((resolve, reject) => {
|
|
||||||
const r = new RequestFlowBuilder()
|
|
||||||
.disableInjections()
|
|
||||||
.withRawScript(
|
|
||||||
`
|
|
||||||
(xor
|
|
||||||
(seq
|
|
||||||
(seq
|
|
||||||
(call %init_peer_id% ("getDataSrv" "-relay-") [] -relay-)
|
|
||||||
(ap $valueNil $relayNil)
|
|
||||||
)
|
|
||||||
(xor
|
|
||||||
(call %init_peer_id% ("callbackSrv" "response") [$relayNil])
|
|
||||||
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 1])
|
|
||||||
)
|
|
||||||
)
|
|
||||||
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 2])
|
|
||||||
)
|
|
||||||
|
|
||||||
`,
|
let request: RequestFlow;
|
||||||
)
|
const promise = new Promise<string[]>((resolve, reject) => {
|
||||||
.configHandler((h) => {
|
const r = new RequestFlowBuilder()
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
.disableInjections()
|
||||||
return peer.connectionInfo.connectedRelay ;
|
.withRawScript(
|
||||||
});
|
`
|
||||||
|
|
||||||
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 returnNil');
|
|
||||||
})
|
|
||||||
if(config && config.ttl) {
|
|
||||||
r.withTTL(config.ttl)
|
|
||||||
}
|
|
||||||
request = r.build();
|
|
||||||
});
|
|
||||||
peer.internals.initiateFlow(request!);
|
|
||||||
return promise;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
export function stringNil(config?: {ttl?: number}) : Promise<string[]>;
|
|
||||||
export function stringNil(peer: FluencePeer, config?: {ttl?: number}) : Promise<string[]>;
|
|
||||||
export function stringNil(...args: any) {
|
|
||||||
let peer: FluencePeer;
|
|
||||||
|
|
||||||
let config: any;
|
|
||||||
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<string[]>((resolve, reject) => {
|
|
||||||
const r = new RequestFlowBuilder()
|
|
||||||
.disableInjections()
|
|
||||||
.withRawScript(
|
|
||||||
`
|
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(call %init_peer_id% ("getDataSrv" "-relay-") [] -relay-)
|
(call %init_peer_id% ("getDataSrv" "-relay-") [] -relay-)
|
||||||
@ -312,16 +244,77 @@ export function registerStringer(peer: FluencePeer, serviceId: string, service:
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
const [res] = args;
|
const [res] = args;
|
||||||
resolve(res);
|
resolve(res);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
|
const [err] = args;
|
||||||
|
reject(err);
|
||||||
|
});
|
||||||
|
})
|
||||||
|
.handleScriptError(reject)
|
||||||
|
.handleTimeout(() => {
|
||||||
|
reject('Request timed out for returnNil');
|
||||||
|
});
|
||||||
|
if (config && config.ttl) {
|
||||||
|
r.withTTL(config.ttl);
|
||||||
|
}
|
||||||
|
request = r.build();
|
||||||
|
});
|
||||||
|
peer.internals.initiateFlow(request!);
|
||||||
|
return promise;
|
||||||
|
}
|
||||||
|
|
||||||
|
export function stringNil(config?: { ttl?: number }): Promise<string[]>;
|
||||||
|
export function stringNil(peer: FluencePeer, config?: { ttl?: number }): Promise<string[]>;
|
||||||
|
export function stringNil(...args: any) {
|
||||||
|
let peer: FluencePeer;
|
||||||
|
|
||||||
|
let config: any;
|
||||||
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
|
peer = args[0];
|
||||||
|
config = args[1];
|
||||||
|
} else {
|
||||||
|
peer = Fluence.getPeer();
|
||||||
|
config = args[0];
|
||||||
|
}
|
||||||
|
|
||||||
|
let request: RequestFlow;
|
||||||
|
const promise = new Promise<string[]>((resolve, reject) => {
|
||||||
|
const r = new RequestFlowBuilder()
|
||||||
|
.disableInjections()
|
||||||
|
.withRawScript(
|
||||||
|
`
|
||||||
|
(xor
|
||||||
|
(seq
|
||||||
|
(call %init_peer_id% ("getDataSrv" "-relay-") [] -relay-)
|
||||||
|
(xor
|
||||||
|
(call %init_peer_id% ("callbackSrv" "response") [$valueNil])
|
||||||
|
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 1])
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 2])
|
||||||
|
)
|
||||||
|
|
||||||
|
`,
|
||||||
|
)
|
||||||
|
.configHandler((h) => {
|
||||||
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
|
return peer.getStatus().relayPeerId;
|
||||||
|
});
|
||||||
|
|
||||||
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
|
const [res] = args;
|
||||||
|
resolve(res);
|
||||||
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -331,40 +324,38 @@ export function registerStringer(peer: FluencePeer, serviceId: string, service:
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for stringNil');
|
reject('Request timed out for stringNil');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
export function checkStreams(ch: string[], config?: { ttl?: number }): Promise<string[]>;
|
||||||
|
export function checkStreams(peer: FluencePeer, ch: string[], config?: { ttl?: number }): Promise<string[]>;
|
||||||
|
export function checkStreams(...args: any) {
|
||||||
|
let peer: FluencePeer;
|
||||||
|
let ch: any;
|
||||||
|
let config: any;
|
||||||
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
|
peer = args[0];
|
||||||
|
ch = args[1];
|
||||||
|
config = args[2];
|
||||||
|
} else {
|
||||||
|
peer = Fluence.getPeer();
|
||||||
|
ch = args[0];
|
||||||
|
config = args[1];
|
||||||
|
}
|
||||||
|
|
||||||
export function checkStreams(ch: string[], config?: {ttl?: number}) : Promise<string[]>;
|
let request: RequestFlow;
|
||||||
export function checkStreams(peer: FluencePeer, ch: string[], config?: {ttl?: number}) : Promise<string[]>;
|
const promise = new Promise<string[]>((resolve, reject) => {
|
||||||
export function checkStreams(...args: any) {
|
const r = new RequestFlowBuilder()
|
||||||
let peer: FluencePeer;
|
.disableInjections()
|
||||||
let ch: any;
|
.withRawScript(
|
||||||
let config: any;
|
`
|
||||||
if (args[0] instanceof FluencePeer) {
|
|
||||||
peer = args[0];
|
|
||||||
ch = args[1];
|
|
||||||
config = args[2];
|
|
||||||
} else {
|
|
||||||
peer = FluencePeer.default;
|
|
||||||
ch = args[0];
|
|
||||||
config = args[1];
|
|
||||||
}
|
|
||||||
|
|
||||||
let request: RequestFlow;
|
|
||||||
const promise = new Promise<string[]>((resolve, reject) => {
|
|
||||||
const r = new RequestFlowBuilder()
|
|
||||||
.disableInjections()
|
|
||||||
.withRawScript(
|
|
||||||
`
|
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -394,16 +385,18 @@ config = args[1];
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'ch', () => {
|
||||||
|
return ch;
|
||||||
});
|
});
|
||||||
h.on('getDataSrv', 'ch', () => {return ch;});
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
const [res] = args;
|
const [res] = args;
|
||||||
resolve(res);
|
resolve(res);
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -413,13 +406,12 @@ config = args[1];
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for checkStreams');
|
reject('Request timed out for checkStreams');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* This file is auto-generated. Do not edit manually: changes may be erased.
|
* This file is auto-generated. Do not edit manually: changes may be erased.
|
||||||
* Generated by Aqua compiler: https://github.com/fluencelabs/aqua/.
|
* 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
|
* If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues
|
||||||
* Aqua version: 0.3.0-SNAPSHOT
|
* Aqua version: 0.3.0-SNAPSHOT
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence, FluencePeer } from '@fluencelabs/fluence';
|
||||||
import {
|
import {
|
||||||
ResultCodes,
|
ResultCodes,
|
||||||
RequestFlow,
|
RequestFlow,
|
||||||
@ -14,37 +14,40 @@ import {
|
|||||||
CallParams,
|
CallParams,
|
||||||
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
||||||
|
|
||||||
|
|
||||||
// Services
|
// Services
|
||||||
|
|
||||||
export interface TestServiceDef {
|
export interface TestServiceDef {
|
||||||
get_records: (key: string, callParams: CallParams<'key'>) => string[];
|
get_records: (key: string, callParams: CallParams<'key'>) => string[];
|
||||||
}
|
}
|
||||||
|
|
||||||
export function registerTestService(service: TestServiceDef): void;
|
export function registerTestService(service: TestServiceDef): void;
|
||||||
export function registerTestService(serviceId: string, service: TestServiceDef): void;
|
export function registerTestService(serviceId: string, service: TestServiceDef): void;
|
||||||
export function registerTestService(peer: FluencePeer, service: TestServiceDef): void;
|
export function registerTestService(peer: FluencePeer, service: TestServiceDef): void;
|
||||||
export function registerTestService(peer: FluencePeer, serviceId: string, service: TestServiceDef): void;
|
export function registerTestService(peer: FluencePeer, serviceId: string, service: TestServiceDef): void;
|
||||||
export function registerTestService(...args: any) {
|
export function registerTestService(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let serviceId: any;
|
let serviceId: any;
|
||||||
let service: any;
|
let service: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof args[0] === 'string') {
|
if (typeof args[0] === 'string') {
|
||||||
serviceId = args[0];
|
serviceId = args[0];
|
||||||
} else if (typeof args[1] === 'string') {
|
} else if (typeof args[1] === 'string') {
|
||||||
serviceId = args[1];
|
serviceId = args[1];
|
||||||
}
|
} else {
|
||||||
else {
|
serviceId = 'test-service';
|
||||||
serviceId = "test-service"
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (!(args[0] instanceof FluencePeer) && typeof args[0] === 'object') {
|
// Figuring out which overload is the service.
|
||||||
|
// If the first argument is not Fluence Peer and it is an object, then it can only be the service def
|
||||||
|
// If the first argument is peer, we are checking further. The second argument might either be
|
||||||
|
// an object, that it must be the service object
|
||||||
|
// or a string, which is the service id. In that case the service is the third argument
|
||||||
|
if (!FluencePeer.isInstance(args[0]) && typeof args[0] === 'object') {
|
||||||
service = args[0];
|
service = args[0];
|
||||||
} else if (typeof args[1] === 'object') {
|
} else if (typeof args[1] === 'object') {
|
||||||
service = args[1];
|
service = args[1];
|
||||||
@ -52,59 +55,59 @@ export function registerTestService(peer: FluencePeer, serviceId: string, servic
|
|||||||
service = args[2];
|
service = args[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
peer.internals.callServiceHandler.use((req, resp, next) => {
|
peer.internals.callServiceHandler.use((req, resp, next) => {
|
||||||
if (req.serviceId !== serviceId) {
|
if (req.serviceId !== serviceId) {
|
||||||
next();
|
next();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'get_records') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
key: req.tetraplets[0]
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
resp.result = service.get_records(req.args[0], callParams)
|
|
||||||
|
|
||||||
}
|
if (req.fnName === 'get_records') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
next();
|
tetraplets: {
|
||||||
});
|
key: req.tetraplets[0],
|
||||||
}
|
},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
resp.result = service.get_records(req.args[0], callParams);
|
||||||
|
}
|
||||||
|
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
// Functions
|
// Functions
|
||||||
|
|
||||||
export function append_records(peer_: string, srum: string[][], config?: {ttl?: number}) : Promise<void>;
|
export function append_records(peer_: string, srum: string[][], config?: { ttl?: number }): Promise<void>;
|
||||||
export function append_records(peer: FluencePeer, peer_: string, srum: string[][], config?: {ttl?: number}) : Promise<void>;
|
export function append_records(
|
||||||
export function append_records(...args: any) {
|
peer: FluencePeer,
|
||||||
let peer: FluencePeer;
|
peer_: string,
|
||||||
let peer_: any;
|
srum: string[][],
|
||||||
let srum: any;
|
config?: { ttl?: number },
|
||||||
let config: any;
|
): Promise<void>;
|
||||||
if (args[0] instanceof FluencePeer) {
|
export function append_records(...args: any) {
|
||||||
peer = args[0];
|
let peer: FluencePeer;
|
||||||
peer_ = args[1];
|
let peer_: any;
|
||||||
srum = args[2];
|
let srum: any;
|
||||||
config = args[3];
|
let config: any;
|
||||||
} else {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = FluencePeer.default;
|
peer = args[0];
|
||||||
peer_ = args[0];
|
peer_ = args[1];
|
||||||
srum = args[1];
|
srum = args[2];
|
||||||
config = args[2];
|
config = args[3];
|
||||||
}
|
} else {
|
||||||
|
peer = Fluence.getPeer();
|
||||||
let request: RequestFlow;
|
peer_ = args[0];
|
||||||
const promise = new Promise<void>((resolve, reject) => {
|
srum = args[1];
|
||||||
const r = new RequestFlowBuilder()
|
config = args[2];
|
||||||
.disableInjections()
|
}
|
||||||
.withRawScript(
|
|
||||||
`
|
let request: RequestFlow;
|
||||||
|
const promise = new Promise<void>((resolve, reject) => {
|
||||||
|
const r = new RequestFlowBuilder()
|
||||||
|
.disableInjections()
|
||||||
|
.withRawScript(
|
||||||
|
`
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -128,16 +131,18 @@ config = args[2];
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
});
|
});
|
||||||
h.on('getDataSrv', 'peer', () => {return peer_;});
|
h.on('getDataSrv', 'peer', () => {
|
||||||
h.on('getDataSrv', 'srum', () => {return srum;});
|
return peer_;
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
});
|
||||||
|
h.on('getDataSrv', 'srum', () => {
|
||||||
});
|
return srum;
|
||||||
|
});
|
||||||
|
h.onEvent('callbackSrv', 'response', (args) => {});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -147,40 +152,38 @@ h.on('getDataSrv', 'srum', () => {return srum;});
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for append_records');
|
reject('Request timed out for append_records');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return Promise.race([promise, Promise.resolve()]);
|
return Promise.race([promise, Promise.resolve()]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
export function retrieve_records(peer_: string, config?: { ttl?: number }): Promise<string[][]>;
|
||||||
|
export function retrieve_records(peer: FluencePeer, peer_: string, config?: { ttl?: number }): Promise<string[][]>;
|
||||||
|
export function retrieve_records(...args: any) {
|
||||||
|
let peer: FluencePeer;
|
||||||
|
let peer_: any;
|
||||||
|
let config: any;
|
||||||
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
|
peer = args[0];
|
||||||
|
peer_ = args[1];
|
||||||
|
config = args[2];
|
||||||
|
} else {
|
||||||
|
peer = Fluence.getPeer();
|
||||||
|
peer_ = args[0];
|
||||||
|
config = args[1];
|
||||||
|
}
|
||||||
|
|
||||||
export function retrieve_records(peer_: string, config?: {ttl?: number}) : Promise<string[][]>;
|
let request: RequestFlow;
|
||||||
export function retrieve_records(peer: FluencePeer, peer_: string, config?: {ttl?: number}) : Promise<string[][]>;
|
const promise = new Promise<string[][]>((resolve, reject) => {
|
||||||
export function retrieve_records(...args: any) {
|
const r = new RequestFlowBuilder()
|
||||||
let peer: FluencePeer;
|
.disableInjections()
|
||||||
let peer_: any;
|
.withRawScript(
|
||||||
let config: any;
|
`
|
||||||
if (args[0] instanceof FluencePeer) {
|
|
||||||
peer = args[0];
|
|
||||||
peer_ = args[1];
|
|
||||||
config = args[2];
|
|
||||||
} else {
|
|
||||||
peer = FluencePeer.default;
|
|
||||||
peer_ = args[0];
|
|
||||||
config = args[1];
|
|
||||||
}
|
|
||||||
|
|
||||||
let request: RequestFlow;
|
|
||||||
const promise = new Promise<string[][]>((resolve, reject) => {
|
|
||||||
const r = new RequestFlowBuilder()
|
|
||||||
.disableInjections()
|
|
||||||
.withRawScript(
|
|
||||||
`
|
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -199,16 +202,18 @@ config = args[1];
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'peer', () => {
|
||||||
|
return peer_;
|
||||||
});
|
});
|
||||||
h.on('getDataSrv', 'peer', () => {return peer_;});
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
const [res] = args;
|
const [res] = args;
|
||||||
resolve(res);
|
resolve(res);
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -218,13 +223,12 @@ config = args[1];
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for retrieve_records');
|
reject('Request timed out for retrieve_records');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* This file is auto-generated. Do not edit manually: changes may be erased.
|
* This file is auto-generated. Do not edit manually: changes may be erased.
|
||||||
* Generated by Aqua compiler: https://github.com/fluencelabs/aqua/.
|
* 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
|
* If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues
|
||||||
* Aqua version: 0.3.0-SNAPSHOT
|
* Aqua version: 0.3.0-SNAPSHOT
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence, FluencePeer } from '@fluencelabs/fluence';
|
||||||
import {
|
import {
|
||||||
ResultCodes,
|
ResultCodes,
|
||||||
RequestFlow,
|
RequestFlow,
|
||||||
@ -14,37 +14,40 @@ import {
|
|||||||
CallParams,
|
CallParams,
|
||||||
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
||||||
|
|
||||||
|
|
||||||
// Services
|
// Services
|
||||||
|
|
||||||
export interface DTGetterDef {
|
export interface DTGetterDef {
|
||||||
get_dt: (s: string, callParams: CallParams<'s'>) => {field:string};
|
get_dt: (s: string, callParams: CallParams<'s'>) => { field: string };
|
||||||
}
|
}
|
||||||
|
|
||||||
export function registerDTGetter(service: DTGetterDef): void;
|
export function registerDTGetter(service: DTGetterDef): void;
|
||||||
export function registerDTGetter(serviceId: string, service: DTGetterDef): void;
|
export function registerDTGetter(serviceId: string, service: DTGetterDef): void;
|
||||||
export function registerDTGetter(peer: FluencePeer, service: DTGetterDef): void;
|
export function registerDTGetter(peer: FluencePeer, service: DTGetterDef): void;
|
||||||
export function registerDTGetter(peer: FluencePeer, serviceId: string, service: DTGetterDef): void;
|
export function registerDTGetter(peer: FluencePeer, serviceId: string, service: DTGetterDef): void;
|
||||||
export function registerDTGetter(...args: any) {
|
export function registerDTGetter(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let serviceId: any;
|
let serviceId: any;
|
||||||
let service: any;
|
let service: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof args[0] === 'string') {
|
if (typeof args[0] === 'string') {
|
||||||
serviceId = args[0];
|
serviceId = args[0];
|
||||||
} else if (typeof args[1] === 'string') {
|
} else if (typeof args[1] === 'string') {
|
||||||
serviceId = args[1];
|
serviceId = args[1];
|
||||||
}
|
} else {
|
||||||
else {
|
serviceId = 'get-dt';
|
||||||
serviceId = "get-dt"
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (!(args[0] instanceof FluencePeer) && typeof args[0] === 'object') {
|
// Figuring out which overload is the service.
|
||||||
|
// If the first argument is not Fluence Peer and it is an object, then it can only be the service def
|
||||||
|
// If the first argument is peer, we are checking further. The second argument might either be
|
||||||
|
// an object, that it must be the service object
|
||||||
|
// or a string, which is the service id. In that case the service is the third argument
|
||||||
|
if (!FluencePeer.isInstance(args[0]) && typeof args[0] === 'object') {
|
||||||
service = args[0];
|
service = args[0];
|
||||||
} else if (typeof args[1] === 'object') {
|
} else if (typeof args[1] === 'object') {
|
||||||
service = args[1];
|
service = args[1];
|
||||||
@ -52,56 +55,51 @@ export function registerDTGetter(peer: FluencePeer, serviceId: string, service:
|
|||||||
service = args[2];
|
service = args[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
peer.internals.callServiceHandler.use((req, resp, next) => {
|
peer.internals.callServiceHandler.use((req, resp, next) => {
|
||||||
if (req.serviceId !== serviceId) {
|
if (req.serviceId !== serviceId) {
|
||||||
next();
|
next();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'get_dt') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
s: req.tetraplets[0]
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
resp.result = service.get_dt(req.args[0], callParams)
|
|
||||||
|
|
||||||
}
|
if (req.fnName === 'get_dt') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
next();
|
tetraplets: {
|
||||||
});
|
s: req.tetraplets[0],
|
||||||
}
|
},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
resp.result = service.get_dt(req.args[0], callParams);
|
||||||
|
}
|
||||||
|
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
// Functions
|
// Functions
|
||||||
|
|
||||||
export function use_name1(name: string, config?: {ttl?: number}) : Promise<string>;
|
export function use_name1(name: string, config?: { ttl?: number }): Promise<string>;
|
||||||
export function use_name1(peer: FluencePeer, name: string, config?: {ttl?: number}) : Promise<string>;
|
export function use_name1(peer: FluencePeer, name: string, config?: { ttl?: number }): Promise<string>;
|
||||||
export function use_name1(...args: any) {
|
export function use_name1(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let name: any;
|
let name: any;
|
||||||
let config: any;
|
let config: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
name = args[1];
|
name = args[1];
|
||||||
config = args[2];
|
config = args[2];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
name = args[0];
|
name = args[0];
|
||||||
config = args[1];
|
config = args[1];
|
||||||
}
|
}
|
||||||
|
|
||||||
let request: RequestFlow;
|
let request: RequestFlow;
|
||||||
const promise = new Promise<string>((resolve, reject) => {
|
const promise = new Promise<string>((resolve, reject) => {
|
||||||
const r = new RequestFlowBuilder()
|
const r = new RequestFlowBuilder()
|
||||||
.disableInjections()
|
.disableInjections()
|
||||||
.withRawScript(
|
.withRawScript(
|
||||||
`
|
`
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -120,16 +118,18 @@ config = args[1];
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'name', () => {
|
||||||
|
return name;
|
||||||
});
|
});
|
||||||
h.on('getDataSrv', 'name', () => {return name;});
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
const [res] = args;
|
const [res] = args;
|
||||||
resolve(res);
|
resolve(res);
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -139,40 +139,38 @@ config = args[1];
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for use_name1');
|
reject('Request timed out for use_name1');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
export function use_name2(name: string, config?: { ttl?: number }): Promise<string[]>;
|
||||||
|
export function use_name2(peer: FluencePeer, name: string, config?: { ttl?: number }): Promise<string[]>;
|
||||||
|
export function use_name2(...args: any) {
|
||||||
|
let peer: FluencePeer;
|
||||||
|
let name: any;
|
||||||
|
let config: any;
|
||||||
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
|
peer = args[0];
|
||||||
|
name = args[1];
|
||||||
|
config = args[2];
|
||||||
|
} else {
|
||||||
|
peer = Fluence.getPeer();
|
||||||
|
name = args[0];
|
||||||
|
config = args[1];
|
||||||
|
}
|
||||||
|
|
||||||
export function use_name2(name: string, config?: {ttl?: number}) : Promise<string[]>;
|
let request: RequestFlow;
|
||||||
export function use_name2(peer: FluencePeer, name: string, config?: {ttl?: number}) : Promise<string[]>;
|
const promise = new Promise<string[]>((resolve, reject) => {
|
||||||
export function use_name2(...args: any) {
|
const r = new RequestFlowBuilder()
|
||||||
let peer: FluencePeer;
|
.disableInjections()
|
||||||
let name: any;
|
.withRawScript(
|
||||||
let config: any;
|
`
|
||||||
if (args[0] instanceof FluencePeer) {
|
|
||||||
peer = args[0];
|
|
||||||
name = args[1];
|
|
||||||
config = args[2];
|
|
||||||
} else {
|
|
||||||
peer = FluencePeer.default;
|
|
||||||
name = args[0];
|
|
||||||
config = args[1];
|
|
||||||
}
|
|
||||||
|
|
||||||
let request: RequestFlow;
|
|
||||||
const promise = new Promise<string[]>((resolve, reject) => {
|
|
||||||
const r = new RequestFlowBuilder()
|
|
||||||
.disableInjections()
|
|
||||||
.withRawScript(
|
|
||||||
`
|
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -206,16 +204,18 @@ config = args[1];
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'name', () => {
|
||||||
|
return name;
|
||||||
});
|
});
|
||||||
h.on('getDataSrv', 'name', () => {return name;});
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
const [res] = args;
|
const [res] = args;
|
||||||
resolve(res);
|
resolve(res);
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -225,13 +225,12 @@ config = args[1];
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for use_name2');
|
reject('Request timed out for use_name2');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* This file is auto-generated. Do not edit manually: changes may be erased.
|
* This file is auto-generated. Do not edit manually: changes may be erased.
|
||||||
* Generated by Aqua compiler: https://github.com/fluencelabs/aqua/.
|
* 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
|
* If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues
|
||||||
* Aqua version: 0.3.0-SNAPSHOT
|
* Aqua version: 0.3.0-SNAPSHOT
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence, FluencePeer } from '@fluencelabs/fluence';
|
||||||
import {
|
import {
|
||||||
ResultCodes,
|
ResultCodes,
|
||||||
RequestFlow,
|
RequestFlow,
|
||||||
@ -14,37 +14,44 @@ import {
|
|||||||
CallParams,
|
CallParams,
|
||||||
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
||||||
|
|
||||||
|
|
||||||
// Services
|
// Services
|
||||||
|
|
||||||
export interface ConcatSubsDef {
|
export interface ConcatSubsDef {
|
||||||
get_some: (s: string, sr: {one:string;two:number}, callParams: CallParams<'s' | 'sr'>) => {one:string;two:number};
|
get_some: (
|
||||||
}
|
s: string,
|
||||||
|
sr: { one: string; two: number },
|
||||||
|
callParams: CallParams<'s' | 'sr'>,
|
||||||
|
) => { one: string; two: number };
|
||||||
|
}
|
||||||
|
|
||||||
export function registerConcatSubs(service: ConcatSubsDef): void;
|
export function registerConcatSubs(service: ConcatSubsDef): void;
|
||||||
export function registerConcatSubs(serviceId: string, service: ConcatSubsDef): void;
|
export function registerConcatSubs(serviceId: string, service: ConcatSubsDef): void;
|
||||||
export function registerConcatSubs(peer: FluencePeer, service: ConcatSubsDef): void;
|
export function registerConcatSubs(peer: FluencePeer, service: ConcatSubsDef): void;
|
||||||
export function registerConcatSubs(peer: FluencePeer, serviceId: string, service: ConcatSubsDef): void;
|
export function registerConcatSubs(peer: FluencePeer, serviceId: string, service: ConcatSubsDef): void;
|
||||||
export function registerConcatSubs(...args: any) {
|
export function registerConcatSubs(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let serviceId: any;
|
let serviceId: any;
|
||||||
let service: any;
|
let service: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof args[0] === 'string') {
|
if (typeof args[0] === 'string') {
|
||||||
serviceId = args[0];
|
serviceId = args[0];
|
||||||
} else if (typeof args[1] === 'string') {
|
} else if (typeof args[1] === 'string') {
|
||||||
serviceId = args[1];
|
serviceId = args[1];
|
||||||
}
|
} else {
|
||||||
else {
|
serviceId = 'concat_subs';
|
||||||
serviceId = "concat_subs"
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (!(args[0] instanceof FluencePeer) && typeof args[0] === 'object') {
|
// Figuring out which overload is the service.
|
||||||
|
// If the first argument is not Fluence Peer and it is an object, then it can only be the service def
|
||||||
|
// If the first argument is peer, we are checking further. The second argument might either be
|
||||||
|
// an object, that it must be the service object
|
||||||
|
// or a string, which is the service id. In that case the service is the third argument
|
||||||
|
if (!FluencePeer.isInstance(args[0]) && typeof args[0] === 'object') {
|
||||||
service = args[0];
|
service = args[0];
|
||||||
} else if (typeof args[1] === 'object') {
|
} else if (typeof args[1] === 'object') {
|
||||||
service = args[1];
|
service = args[1];
|
||||||
@ -52,56 +59,56 @@ export function registerConcatSubs(peer: FluencePeer, serviceId: string, service
|
|||||||
service = args[2];
|
service = args[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
peer.internals.callServiceHandler.use((req, resp, next) => {
|
peer.internals.callServiceHandler.use((req, resp, next) => {
|
||||||
if (req.serviceId !== serviceId) {
|
if (req.serviceId !== serviceId) {
|
||||||
next();
|
next();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'get_some') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
s: req.tetraplets[0],sr: req.tetraplets[1]
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
resp.result = service.get_some(req.args[0], req.args[1], callParams)
|
|
||||||
|
|
||||||
}
|
if (req.fnName === 'get_some') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
next();
|
tetraplets: {
|
||||||
});
|
s: req.tetraplets[0],
|
||||||
}
|
sr: req.tetraplets[1],
|
||||||
|
},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
resp.result = service.get_some(req.args[0], req.args[1], callParams);
|
||||||
|
}
|
||||||
|
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
// Functions
|
// Functions
|
||||||
|
|
||||||
export function subImportUsage(s: string, config?: {ttl?: number}) : Promise<{one:string;two:number}>;
|
export function subImportUsage(s: string, config?: { ttl?: number }): Promise<{ one: string; two: number }>;
|
||||||
export function subImportUsage(peer: FluencePeer, s: string, config?: {ttl?: number}) : Promise<{one:string;two:number}>;
|
export function subImportUsage(
|
||||||
export function subImportUsage(...args: any) {
|
peer: FluencePeer,
|
||||||
let peer: FluencePeer;
|
s: string,
|
||||||
let s: any;
|
config?: { ttl?: number },
|
||||||
let config: any;
|
): Promise<{ one: string; two: number }>;
|
||||||
if (args[0] instanceof FluencePeer) {
|
export function subImportUsage(...args: any) {
|
||||||
peer = args[0];
|
let peer: FluencePeer;
|
||||||
s = args[1];
|
let s: any;
|
||||||
config = args[2];
|
let config: any;
|
||||||
} else {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = FluencePeer.default;
|
peer = args[0];
|
||||||
s = args[0];
|
s = args[1];
|
||||||
config = args[1];
|
config = args[2];
|
||||||
}
|
} else {
|
||||||
|
peer = Fluence.getPeer();
|
||||||
let request: RequestFlow;
|
s = args[0];
|
||||||
const promise = new Promise<{one:string;two:number}>((resolve, reject) => {
|
config = args[1];
|
||||||
const r = new RequestFlowBuilder()
|
}
|
||||||
.disableInjections()
|
|
||||||
.withRawScript(
|
let request: RequestFlow;
|
||||||
`
|
const promise = new Promise<{ one: string; two: number }>((resolve, reject) => {
|
||||||
|
const r = new RequestFlowBuilder()
|
||||||
|
.disableInjections()
|
||||||
|
.withRawScript(
|
||||||
|
`
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -126,16 +133,18 @@ config = args[1];
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 's', () => {
|
||||||
|
return s;
|
||||||
});
|
});
|
||||||
h.on('getDataSrv', 's', () => {return s;});
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
const [res] = args;
|
const [res] = args;
|
||||||
resolve(res);
|
resolve(res);
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -145,13 +154,12 @@ config = args[1];
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for subImportUsage');
|
reject('Request timed out for subImportUsage');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* This file is auto-generated. Do not edit manually: changes may be erased.
|
* This file is auto-generated. Do not edit manually: changes may be erased.
|
||||||
* Generated by Aqua compiler: https://github.com/fluencelabs/aqua/.
|
* 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
|
* If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues
|
||||||
* Aqua version: 0.3.0-SNAPSHOT
|
* Aqua version: 0.3.0-SNAPSHOT
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence, FluencePeer } from '@fluencelabs/fluence';
|
||||||
import {
|
import {
|
||||||
ResultCodes,
|
ResultCodes,
|
||||||
RequestFlow,
|
RequestFlow,
|
||||||
@ -14,37 +14,40 @@ import {
|
|||||||
CallParams,
|
CallParams,
|
||||||
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
||||||
|
|
||||||
|
|
||||||
// Services
|
// Services
|
||||||
|
|
||||||
export interface TestoDef {
|
export interface TestoDef {
|
||||||
getString: (arg0: string, callParams: CallParams<'arg0'>) => string;
|
getString: (arg0: string, callParams: CallParams<'arg0'>) => string;
|
||||||
}
|
}
|
||||||
|
|
||||||
export function registerTesto(service: TestoDef): void;
|
export function registerTesto(service: TestoDef): void;
|
||||||
export function registerTesto(serviceId: string, service: TestoDef): void;
|
export function registerTesto(serviceId: string, service: TestoDef): void;
|
||||||
export function registerTesto(peer: FluencePeer, service: TestoDef): void;
|
export function registerTesto(peer: FluencePeer, service: TestoDef): void;
|
||||||
export function registerTesto(peer: FluencePeer, serviceId: string, service: TestoDef): void;
|
export function registerTesto(peer: FluencePeer, serviceId: string, service: TestoDef): void;
|
||||||
export function registerTesto(...args: any) {
|
export function registerTesto(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let serviceId: any;
|
let serviceId: any;
|
||||||
let service: any;
|
let service: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof args[0] === 'string') {
|
if (typeof args[0] === 'string') {
|
||||||
serviceId = args[0];
|
serviceId = args[0];
|
||||||
} else if (typeof args[1] === 'string') {
|
} else if (typeof args[1] === 'string') {
|
||||||
serviceId = args[1];
|
serviceId = args[1];
|
||||||
}
|
} else {
|
||||||
else {
|
serviceId = 'testo';
|
||||||
serviceId = "testo"
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (!(args[0] instanceof FluencePeer) && typeof args[0] === 'object') {
|
// Figuring out which overload is the service.
|
||||||
|
// If the first argument is not Fluence Peer and it is an object, then it can only be the service def
|
||||||
|
// If the first argument is peer, we are checking further. The second argument might either be
|
||||||
|
// an object, that it must be the service object
|
||||||
|
// or a string, which is the service id. In that case the service is the third argument
|
||||||
|
if (!FluencePeer.isInstance(args[0]) && typeof args[0] === 'object') {
|
||||||
service = args[0];
|
service = args[0];
|
||||||
} else if (typeof args[1] === 'object') {
|
} else if (typeof args[1] === 'object') {
|
||||||
service = args[1];
|
service = args[1];
|
||||||
@ -52,61 +55,59 @@ export function registerTesto(peer: FluencePeer, serviceId: string, service: Tes
|
|||||||
service = args[2];
|
service = args[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
peer.internals.callServiceHandler.use((req, resp, next) => {
|
peer.internals.callServiceHandler.use((req, resp, next) => {
|
||||||
if (req.serviceId !== serviceId) {
|
if (req.serviceId !== serviceId) {
|
||||||
next();
|
next();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'getString') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
arg0: req.tetraplets[0]
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
resp.result = service.getString(req.args[0], callParams)
|
|
||||||
|
|
||||||
}
|
if (req.fnName === 'getString') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
next();
|
tetraplets: {
|
||||||
});
|
arg0: req.tetraplets[0],
|
||||||
}
|
},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
resp.result = service.getString(req.args[0], callParams);
|
||||||
|
}
|
||||||
|
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
export interface LocalPrintDef {
|
export interface LocalPrintDef {
|
||||||
print: (arg0: string, callParams: CallParams<'arg0'>) => void;
|
print: (arg0: string, callParams: CallParams<'arg0'>) => void;
|
||||||
}
|
}
|
||||||
|
|
||||||
export function registerLocalPrint(service: LocalPrintDef): void;
|
export function registerLocalPrint(service: LocalPrintDef): void;
|
||||||
export function registerLocalPrint(serviceId: string, service: LocalPrintDef): void;
|
export function registerLocalPrint(serviceId: string, service: LocalPrintDef): void;
|
||||||
export function registerLocalPrint(peer: FluencePeer, service: LocalPrintDef): void;
|
export function registerLocalPrint(peer: FluencePeer, service: LocalPrintDef): void;
|
||||||
export function registerLocalPrint(peer: FluencePeer, serviceId: string, service: LocalPrintDef): void;
|
export function registerLocalPrint(peer: FluencePeer, serviceId: string, service: LocalPrintDef): void;
|
||||||
export function registerLocalPrint(...args: any) {
|
export function registerLocalPrint(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let serviceId: any;
|
let serviceId: any;
|
||||||
let service: any;
|
let service: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof args[0] === 'string') {
|
if (typeof args[0] === 'string') {
|
||||||
serviceId = args[0];
|
serviceId = args[0];
|
||||||
} else if (typeof args[1] === 'string') {
|
} else if (typeof args[1] === 'string') {
|
||||||
serviceId = args[1];
|
serviceId = args[1];
|
||||||
}
|
} else {
|
||||||
else {
|
serviceId = 'lp';
|
||||||
serviceId = "lp"
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (!(args[0] instanceof FluencePeer) && typeof args[0] === 'object') {
|
// Figuring out which overload is the service.
|
||||||
|
// If the first argument is not Fluence Peer and it is an object, then it can only be the service def
|
||||||
|
// If the first argument is peer, we are checking further. The second argument might either be
|
||||||
|
// an object, that it must be the service object
|
||||||
|
// or a string, which is the service id. In that case the service is the third argument
|
||||||
|
if (!FluencePeer.isInstance(args[0]) && typeof args[0] === 'object') {
|
||||||
service = args[0];
|
service = args[0];
|
||||||
} else if (typeof args[1] === 'object') {
|
} else if (typeof args[1] === 'object') {
|
||||||
service = args[1];
|
service = args[1];
|
||||||
@ -114,65 +115,74 @@ export function registerLocalPrint(peer: FluencePeer, serviceId: string, service
|
|||||||
service = args[2];
|
service = args[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
peer.internals.callServiceHandler.use((req, resp, next) => {
|
peer.internals.callServiceHandler.use((req, resp, next) => {
|
||||||
if (req.serviceId !== serviceId) {
|
if (req.serviceId !== serviceId) {
|
||||||
next();
|
next();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'print') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
arg0: req.tetraplets[0]
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
service.print(req.args[0], callParams); resp.result = {}
|
|
||||||
|
|
||||||
}
|
if (req.fnName === 'print') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
next();
|
tetraplets: {
|
||||||
});
|
arg0: req.tetraplets[0],
|
||||||
}
|
},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
service.print(req.args[0], callParams);
|
||||||
|
resp.result = {};
|
||||||
|
}
|
||||||
|
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
// Functions
|
// Functions
|
||||||
|
|
||||||
export function topologyTest(me: string, myRelay: string, friend: string, friendRelay: string, config?: {ttl?: number}) : Promise<string>;
|
export function topologyTest(
|
||||||
export function topologyTest(peer: FluencePeer, me: string, myRelay: string, friend: string, friendRelay: string, config?: {ttl?: number}) : Promise<string>;
|
me: string,
|
||||||
export function topologyTest(...args: any) {
|
myRelay: string,
|
||||||
let peer: FluencePeer;
|
friend: string,
|
||||||
let me: any;
|
friendRelay: string,
|
||||||
let myRelay: any;
|
config?: { ttl?: number },
|
||||||
let friend: any;
|
): Promise<string>;
|
||||||
let friendRelay: any;
|
export function topologyTest(
|
||||||
let config: any;
|
peer: FluencePeer,
|
||||||
if (args[0] instanceof FluencePeer) {
|
me: string,
|
||||||
peer = args[0];
|
myRelay: string,
|
||||||
me = args[1];
|
friend: string,
|
||||||
myRelay = args[2];
|
friendRelay: string,
|
||||||
friend = args[3];
|
config?: { ttl?: number },
|
||||||
friendRelay = args[4];
|
): Promise<string>;
|
||||||
config = args[5];
|
export function topologyTest(...args: any) {
|
||||||
} else {
|
let peer: FluencePeer;
|
||||||
peer = FluencePeer.default;
|
let me: any;
|
||||||
me = args[0];
|
let myRelay: any;
|
||||||
myRelay = args[1];
|
let friend: any;
|
||||||
friend = args[2];
|
let friendRelay: any;
|
||||||
friendRelay = args[3];
|
let config: any;
|
||||||
config = args[4];
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
}
|
peer = args[0];
|
||||||
|
me = args[1];
|
||||||
let request: RequestFlow;
|
myRelay = args[2];
|
||||||
const promise = new Promise<string>((resolve, reject) => {
|
friend = args[3];
|
||||||
const r = new RequestFlowBuilder()
|
friendRelay = args[4];
|
||||||
.disableInjections()
|
config = args[5];
|
||||||
.withRawScript(
|
} else {
|
||||||
`
|
peer = Fluence.getPeer();
|
||||||
|
me = args[0];
|
||||||
|
myRelay = args[1];
|
||||||
|
friend = args[2];
|
||||||
|
friendRelay = args[3];
|
||||||
|
config = args[4];
|
||||||
|
}
|
||||||
|
|
||||||
|
let request: RequestFlow;
|
||||||
|
const promise = new Promise<string>((resolve, reject) => {
|
||||||
|
const r = new RequestFlowBuilder()
|
||||||
|
.disableInjections()
|
||||||
|
.withRawScript(
|
||||||
|
`
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -230,19 +240,27 @@ config = args[4];
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'me', () => {
|
||||||
|
return me;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'myRelay', () => {
|
||||||
|
return myRelay;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'friend', () => {
|
||||||
|
return friend;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'friendRelay', () => {
|
||||||
|
return friendRelay;
|
||||||
});
|
});
|
||||||
h.on('getDataSrv', 'me', () => {return me;});
|
|
||||||
h.on('getDataSrv', 'myRelay', () => {return myRelay;});
|
|
||||||
h.on('getDataSrv', 'friend', () => {return friend;});
|
|
||||||
h.on('getDataSrv', 'friendRelay', () => {return friendRelay;});
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
const [res] = args;
|
const [res] = args;
|
||||||
resolve(res);
|
resolve(res);
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -252,13 +270,12 @@ h.on('getDataSrv', 'friendRelay', () => {return friendRelay;});
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for topologyTest');
|
reject('Request timed out for topologyTest');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* This file is auto-generated. Do not edit manually: changes may be erased.
|
* This file is auto-generated. Do not edit manually: changes may be erased.
|
||||||
* Generated by Aqua compiler: https://github.com/fluencelabs/aqua/.
|
* 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
|
* If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues
|
||||||
* Aqua version: 0.3.0-SNAPSHOT
|
* Aqua version: 0.3.0-SNAPSHOT
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence, FluencePeer } from '@fluencelabs/fluence';
|
||||||
import {
|
import {
|
||||||
ResultCodes,
|
ResultCodes,
|
||||||
RequestFlow,
|
RequestFlow,
|
||||||
@ -14,37 +14,40 @@ import {
|
|||||||
CallParams,
|
CallParams,
|
||||||
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
||||||
|
|
||||||
|
|
||||||
// Services
|
// Services
|
||||||
|
|
||||||
export interface UnexistedDef {
|
export interface UnexistedDef {
|
||||||
getStr: (callParams: CallParams<null>) => string;
|
getStr: (callParams: CallParams<null>) => string;
|
||||||
}
|
}
|
||||||
|
|
||||||
export function registerUnexisted(service: UnexistedDef): void;
|
export function registerUnexisted(service: UnexistedDef): void;
|
||||||
export function registerUnexisted(serviceId: string, service: UnexistedDef): void;
|
export function registerUnexisted(serviceId: string, service: UnexistedDef): void;
|
||||||
export function registerUnexisted(peer: FluencePeer, service: UnexistedDef): void;
|
export function registerUnexisted(peer: FluencePeer, service: UnexistedDef): void;
|
||||||
export function registerUnexisted(peer: FluencePeer, serviceId: string, service: UnexistedDef): void;
|
export function registerUnexisted(peer: FluencePeer, serviceId: string, service: UnexistedDef): void;
|
||||||
export function registerUnexisted(...args: any) {
|
export function registerUnexisted(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let serviceId: any;
|
let serviceId: any;
|
||||||
let service: any;
|
let service: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof args[0] === 'string') {
|
if (typeof args[0] === 'string') {
|
||||||
serviceId = args[0];
|
serviceId = args[0];
|
||||||
} else if (typeof args[1] === 'string') {
|
} else if (typeof args[1] === 'string') {
|
||||||
serviceId = args[1];
|
serviceId = args[1];
|
||||||
}
|
} else {
|
||||||
else {
|
serviceId = 'unex';
|
||||||
serviceId = "unex"
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (!(args[0] instanceof FluencePeer) && typeof args[0] === 'object') {
|
// Figuring out which overload is the service.
|
||||||
|
// If the first argument is not Fluence Peer and it is an object, then it can only be the service def
|
||||||
|
// If the first argument is peer, we are checking further. The second argument might either be
|
||||||
|
// an object, that it must be the service object
|
||||||
|
// or a string, which is the service id. In that case the service is the third argument
|
||||||
|
if (!FluencePeer.isInstance(args[0]) && typeof args[0] === 'object') {
|
||||||
service = args[0];
|
service = args[0];
|
||||||
} else if (typeof args[1] === 'object') {
|
} else if (typeof args[1] === 'object') {
|
||||||
service = args[1];
|
service = args[1];
|
||||||
@ -52,61 +55,57 @@ export function registerUnexisted(peer: FluencePeer, serviceId: string, service:
|
|||||||
service = args[2];
|
service = args[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
peer.internals.callServiceHandler.use((req, resp, next) => {
|
peer.internals.callServiceHandler.use((req, resp, next) => {
|
||||||
if (req.serviceId !== serviceId) {
|
if (req.serviceId !== serviceId) {
|
||||||
next();
|
next();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'getStr') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
resp.result = service.getStr(callParams)
|
|
||||||
|
|
||||||
}
|
if (req.fnName === 'getStr') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
next();
|
tetraplets: {},
|
||||||
});
|
};
|
||||||
}
|
resp.retCode = ResultCodes.success;
|
||||||
|
resp.result = service.getStr(callParams);
|
||||||
|
}
|
||||||
|
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
export interface OpADef {
|
export interface OpADef {
|
||||||
identity: (s: string, callParams: CallParams<'s'>) => string;
|
identity: (s: string, callParams: CallParams<'s'>) => string;
|
||||||
}
|
}
|
||||||
|
|
||||||
export function registerOpA(service: OpADef): void;
|
export function registerOpA(service: OpADef): void;
|
||||||
export function registerOpA(serviceId: string, service: OpADef): void;
|
export function registerOpA(serviceId: string, service: OpADef): void;
|
||||||
export function registerOpA(peer: FluencePeer, service: OpADef): void;
|
export function registerOpA(peer: FluencePeer, service: OpADef): void;
|
||||||
export function registerOpA(peer: FluencePeer, serviceId: string, service: OpADef): void;
|
export function registerOpA(peer: FluencePeer, serviceId: string, service: OpADef): void;
|
||||||
export function registerOpA(...args: any) {
|
export function registerOpA(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let serviceId: any;
|
let serviceId: any;
|
||||||
let service: any;
|
let service: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof args[0] === 'string') {
|
if (typeof args[0] === 'string') {
|
||||||
serviceId = args[0];
|
serviceId = args[0];
|
||||||
} else if (typeof args[1] === 'string') {
|
} else if (typeof args[1] === 'string') {
|
||||||
serviceId = args[1];
|
serviceId = args[1];
|
||||||
}
|
} else {
|
||||||
else {
|
serviceId = 'op';
|
||||||
serviceId = "op"
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (!(args[0] instanceof FluencePeer) && typeof args[0] === 'object') {
|
// Figuring out which overload is the service.
|
||||||
|
// If the first argument is not Fluence Peer and it is an object, then it can only be the service def
|
||||||
|
// If the first argument is peer, we are checking further. The second argument might either be
|
||||||
|
// an object, that it must be the service object
|
||||||
|
// or a string, which is the service id. In that case the service is the third argument
|
||||||
|
if (!FluencePeer.isInstance(args[0]) && typeof args[0] === 'object') {
|
||||||
service = args[0];
|
service = args[0];
|
||||||
} else if (typeof args[1] === 'object') {
|
} else if (typeof args[1] === 'object') {
|
||||||
service = args[1];
|
service = args[1];
|
||||||
@ -114,56 +113,51 @@ export function registerOpA(peer: FluencePeer, serviceId: string, service: OpADe
|
|||||||
service = args[2];
|
service = args[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
peer.internals.callServiceHandler.use((req, resp, next) => {
|
peer.internals.callServiceHandler.use((req, resp, next) => {
|
||||||
if (req.serviceId !== serviceId) {
|
if (req.serviceId !== serviceId) {
|
||||||
next();
|
next();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'identity') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
s: req.tetraplets[0]
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
resp.result = service.identity(req.args[0], callParams)
|
|
||||||
|
|
||||||
}
|
if (req.fnName === 'identity') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
next();
|
tetraplets: {
|
||||||
});
|
s: req.tetraplets[0],
|
||||||
}
|
},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
resp.result = service.identity(req.args[0], callParams);
|
||||||
|
}
|
||||||
|
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
// Functions
|
// Functions
|
||||||
|
|
||||||
export function tryCatchTest(node_id: string, config?: {ttl?: number}) : Promise<string[]>;
|
export function tryCatchTest(node_id: string, config?: { ttl?: number }): Promise<string[]>;
|
||||||
export function tryCatchTest(peer: FluencePeer, node_id: string, config?: {ttl?: number}) : Promise<string[]>;
|
export function tryCatchTest(peer: FluencePeer, node_id: string, config?: { ttl?: number }): Promise<string[]>;
|
||||||
export function tryCatchTest(...args: any) {
|
export function tryCatchTest(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let node_id: any;
|
let node_id: any;
|
||||||
let config: any;
|
let config: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
node_id = args[1];
|
node_id = args[1];
|
||||||
config = args[2];
|
config = args[2];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
node_id = args[0];
|
node_id = args[0];
|
||||||
config = args[1];
|
config = args[1];
|
||||||
}
|
}
|
||||||
|
|
||||||
let request: RequestFlow;
|
let request: RequestFlow;
|
||||||
const promise = new Promise<string[]>((resolve, reject) => {
|
const promise = new Promise<string[]>((resolve, reject) => {
|
||||||
const r = new RequestFlowBuilder()
|
const r = new RequestFlowBuilder()
|
||||||
.disableInjections()
|
.disableInjections()
|
||||||
.withRawScript(
|
.withRawScript(
|
||||||
`
|
`
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -203,16 +197,18 @@ config = args[1];
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'node_id', () => {
|
||||||
|
return node_id;
|
||||||
});
|
});
|
||||||
h.on('getDataSrv', 'node_id', () => {return node_id;});
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
const [res] = args;
|
const [res] = args;
|
||||||
resolve(res);
|
resolve(res);
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -222,13 +218,12 @@ config = args[1];
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for tryCatchTest');
|
reject('Request timed out for tryCatchTest');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* This file is auto-generated. Do not edit manually: changes may be erased.
|
* This file is auto-generated. Do not edit manually: changes may be erased.
|
||||||
* Generated by Aqua compiler: https://github.com/fluencelabs/aqua/.
|
* 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
|
* If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues
|
||||||
* Aqua version: 0.3.0-SNAPSHOT
|
* Aqua version: 0.3.0-SNAPSHOT
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence, FluencePeer } from '@fluencelabs/fluence';
|
||||||
import {
|
import {
|
||||||
ResultCodes,
|
ResultCodes,
|
||||||
RequestFlow,
|
RequestFlow,
|
||||||
@ -14,37 +14,40 @@ import {
|
|||||||
CallParams,
|
CallParams,
|
||||||
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
||||||
|
|
||||||
|
|
||||||
// Services
|
// Services
|
||||||
|
|
||||||
export interface UnexistedDef {
|
export interface UnexistedDef {
|
||||||
getStr: (callParams: CallParams<null>) => string;
|
getStr: (callParams: CallParams<null>) => string;
|
||||||
}
|
}
|
||||||
|
|
||||||
export function registerUnexisted(service: UnexistedDef): void;
|
export function registerUnexisted(service: UnexistedDef): void;
|
||||||
export function registerUnexisted(serviceId: string, service: UnexistedDef): void;
|
export function registerUnexisted(serviceId: string, service: UnexistedDef): void;
|
||||||
export function registerUnexisted(peer: FluencePeer, service: UnexistedDef): void;
|
export function registerUnexisted(peer: FluencePeer, service: UnexistedDef): void;
|
||||||
export function registerUnexisted(peer: FluencePeer, serviceId: string, service: UnexistedDef): void;
|
export function registerUnexisted(peer: FluencePeer, serviceId: string, service: UnexistedDef): void;
|
||||||
export function registerUnexisted(...args: any) {
|
export function registerUnexisted(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let serviceId: any;
|
let serviceId: any;
|
||||||
let service: any;
|
let service: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof args[0] === 'string') {
|
if (typeof args[0] === 'string') {
|
||||||
serviceId = args[0];
|
serviceId = args[0];
|
||||||
} else if (typeof args[1] === 'string') {
|
} else if (typeof args[1] === 'string') {
|
||||||
serviceId = args[1];
|
serviceId = args[1];
|
||||||
}
|
} else {
|
||||||
else {
|
serviceId = 'unex';
|
||||||
serviceId = "unex"
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (!(args[0] instanceof FluencePeer) && typeof args[0] === 'object') {
|
// Figuring out which overload is the service.
|
||||||
|
// If the first argument is not Fluence Peer and it is an object, then it can only be the service def
|
||||||
|
// If the first argument is peer, we are checking further. The second argument might either be
|
||||||
|
// an object, that it must be the service object
|
||||||
|
// or a string, which is the service id. In that case the service is the third argument
|
||||||
|
if (!FluencePeer.isInstance(args[0]) && typeof args[0] === 'object') {
|
||||||
service = args[0];
|
service = args[0];
|
||||||
} else if (typeof args[1] === 'object') {
|
} else if (typeof args[1] === 'object') {
|
||||||
service = args[1];
|
service = args[1];
|
||||||
@ -52,61 +55,57 @@ export function registerUnexisted(peer: FluencePeer, serviceId: string, service:
|
|||||||
service = args[2];
|
service = args[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
peer.internals.callServiceHandler.use((req, resp, next) => {
|
peer.internals.callServiceHandler.use((req, resp, next) => {
|
||||||
if (req.serviceId !== serviceId) {
|
if (req.serviceId !== serviceId) {
|
||||||
next();
|
next();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'getStr') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
resp.result = service.getStr(callParams)
|
|
||||||
|
|
||||||
}
|
if (req.fnName === 'getStr') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
next();
|
tetraplets: {},
|
||||||
});
|
};
|
||||||
}
|
resp.retCode = ResultCodes.success;
|
||||||
|
resp.result = service.getStr(callParams);
|
||||||
|
}
|
||||||
|
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
export interface OpEDef {
|
export interface OpEDef {
|
||||||
identity: (s: string, callParams: CallParams<'s'>) => string;
|
identity: (s: string, callParams: CallParams<'s'>) => string;
|
||||||
}
|
}
|
||||||
|
|
||||||
export function registerOpE(service: OpEDef): void;
|
export function registerOpE(service: OpEDef): void;
|
||||||
export function registerOpE(serviceId: string, service: OpEDef): void;
|
export function registerOpE(serviceId: string, service: OpEDef): void;
|
||||||
export function registerOpE(peer: FluencePeer, service: OpEDef): void;
|
export function registerOpE(peer: FluencePeer, service: OpEDef): void;
|
||||||
export function registerOpE(peer: FluencePeer, serviceId: string, service: OpEDef): void;
|
export function registerOpE(peer: FluencePeer, serviceId: string, service: OpEDef): void;
|
||||||
export function registerOpE(...args: any) {
|
export function registerOpE(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let serviceId: any;
|
let serviceId: any;
|
||||||
let service: any;
|
let service: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof args[0] === 'string') {
|
if (typeof args[0] === 'string') {
|
||||||
serviceId = args[0];
|
serviceId = args[0];
|
||||||
} else if (typeof args[1] === 'string') {
|
} else if (typeof args[1] === 'string') {
|
||||||
serviceId = args[1];
|
serviceId = args[1];
|
||||||
}
|
} else {
|
||||||
else {
|
serviceId = 'op';
|
||||||
serviceId = "op"
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (!(args[0] instanceof FluencePeer) && typeof args[0] === 'object') {
|
// Figuring out which overload is the service.
|
||||||
|
// If the first argument is not Fluence Peer and it is an object, then it can only be the service def
|
||||||
|
// If the first argument is peer, we are checking further. The second argument might either be
|
||||||
|
// an object, that it must be the service object
|
||||||
|
// or a string, which is the service id. In that case the service is the third argument
|
||||||
|
if (!FluencePeer.isInstance(args[0]) && typeof args[0] === 'object') {
|
||||||
service = args[0];
|
service = args[0];
|
||||||
} else if (typeof args[1] === 'object') {
|
} else if (typeof args[1] === 'object') {
|
||||||
service = args[1];
|
service = args[1];
|
||||||
@ -114,56 +113,51 @@ export function registerOpE(peer: FluencePeer, serviceId: string, service: OpEDe
|
|||||||
service = args[2];
|
service = args[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
peer.internals.callServiceHandler.use((req, resp, next) => {
|
peer.internals.callServiceHandler.use((req, resp, next) => {
|
||||||
if (req.serviceId !== serviceId) {
|
if (req.serviceId !== serviceId) {
|
||||||
next();
|
next();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'identity') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
s: req.tetraplets[0]
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
resp.result = service.identity(req.args[0], callParams)
|
|
||||||
|
|
||||||
}
|
if (req.fnName === 'identity') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
next();
|
tetraplets: {
|
||||||
});
|
s: req.tetraplets[0],
|
||||||
}
|
},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
resp.result = service.identity(req.args[0], callParams);
|
||||||
|
}
|
||||||
|
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
// Functions
|
// Functions
|
||||||
|
|
||||||
export function tryOtherwiseTest(node_id: string, config?: {ttl?: number}) : Promise<string>;
|
export function tryOtherwiseTest(node_id: string, config?: { ttl?: number }): Promise<string>;
|
||||||
export function tryOtherwiseTest(peer: FluencePeer, node_id: string, config?: {ttl?: number}) : Promise<string>;
|
export function tryOtherwiseTest(peer: FluencePeer, node_id: string, config?: { ttl?: number }): Promise<string>;
|
||||||
export function tryOtherwiseTest(...args: any) {
|
export function tryOtherwiseTest(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let node_id: any;
|
let node_id: any;
|
||||||
let config: any;
|
let config: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
node_id = args[1];
|
node_id = args[1];
|
||||||
config = args[2];
|
config = args[2];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
node_id = args[0];
|
node_id = args[0];
|
||||||
config = args[1];
|
config = args[1];
|
||||||
}
|
}
|
||||||
|
|
||||||
let request: RequestFlow;
|
let request: RequestFlow;
|
||||||
const promise = new Promise<string>((resolve, reject) => {
|
const promise = new Promise<string>((resolve, reject) => {
|
||||||
const r = new RequestFlowBuilder()
|
const r = new RequestFlowBuilder()
|
||||||
.disableInjections()
|
.disableInjections()
|
||||||
.withRawScript(
|
.withRawScript(
|
||||||
`
|
`
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -197,16 +191,18 @@ config = args[1];
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'node_id', () => {
|
||||||
|
return node_id;
|
||||||
});
|
});
|
||||||
h.on('getDataSrv', 'node_id', () => {return node_id;});
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
const [res] = args;
|
const [res] = args;
|
||||||
resolve(res);
|
resolve(res);
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -216,13 +212,12 @@ config = args[1];
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for tryOtherwiseTest');
|
reject('Request timed out for tryOtherwiseTest');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* This file is auto-generated. Do not edit manually: changes may be erased.
|
* This file is auto-generated. Do not edit manually: changes may be erased.
|
||||||
* Generated by Aqua compiler: https://github.com/fluencelabs/aqua/.
|
* 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
|
* If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues
|
||||||
* Aqua version: 0.3.0-SNAPSHOT
|
* Aqua version: 0.3.0-SNAPSHOT
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence, FluencePeer } from '@fluencelabs/fluence';
|
||||||
import {
|
import {
|
||||||
ResultCodes,
|
ResultCodes,
|
||||||
RequestFlow,
|
RequestFlow,
|
||||||
@ -14,37 +14,40 @@ import {
|
|||||||
CallParams,
|
CallParams,
|
||||||
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
} from '@fluencelabs/fluence/dist/internal/compilerSupport/v1';
|
||||||
|
|
||||||
|
|
||||||
// Services
|
// Services
|
||||||
|
|
||||||
export interface CustomIdDef {
|
export interface CustomIdDef {
|
||||||
id: (s: string, callParams: CallParams<'s'>) => string;
|
id: (s: string, callParams: CallParams<'s'>) => string;
|
||||||
}
|
}
|
||||||
|
|
||||||
export function registerCustomId(service: CustomIdDef): void;
|
export function registerCustomId(service: CustomIdDef): void;
|
||||||
export function registerCustomId(serviceId: string, service: CustomIdDef): void;
|
export function registerCustomId(serviceId: string, service: CustomIdDef): void;
|
||||||
export function registerCustomId(peer: FluencePeer, service: CustomIdDef): void;
|
export function registerCustomId(peer: FluencePeer, service: CustomIdDef): void;
|
||||||
export function registerCustomId(peer: FluencePeer, serviceId: string, service: CustomIdDef): void;
|
export function registerCustomId(peer: FluencePeer, serviceId: string, service: CustomIdDef): void;
|
||||||
export function registerCustomId(...args: any) {
|
export function registerCustomId(...args: any) {
|
||||||
let peer: FluencePeer;
|
let peer: FluencePeer;
|
||||||
let serviceId: any;
|
let serviceId: any;
|
||||||
let service: any;
|
let service: any;
|
||||||
if (args[0] instanceof FluencePeer) {
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
peer = args[0];
|
peer = args[0];
|
||||||
} else {
|
} else {
|
||||||
peer = FluencePeer.default;
|
peer = Fluence.getPeer();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof args[0] === 'string') {
|
if (typeof args[0] === 'string') {
|
||||||
serviceId = args[0];
|
serviceId = args[0];
|
||||||
} else if (typeof args[1] === 'string') {
|
} else if (typeof args[1] === 'string') {
|
||||||
serviceId = args[1];
|
serviceId = args[1];
|
||||||
}
|
} else {
|
||||||
else {
|
serviceId = 'cid';
|
||||||
serviceId = "cid"
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (!(args[0] instanceof FluencePeer) && typeof args[0] === 'object') {
|
// Figuring out which overload is the service.
|
||||||
|
// If the first argument is not Fluence Peer and it is an object, then it can only be the service def
|
||||||
|
// If the first argument is peer, we are checking further. The second argument might either be
|
||||||
|
// an object, that it must be the service object
|
||||||
|
// or a string, which is the service id. In that case the service is the third argument
|
||||||
|
if (!FluencePeer.isInstance(args[0]) && typeof args[0] === 'object') {
|
||||||
service = args[0];
|
service = args[0];
|
||||||
} else if (typeof args[1] === 'object') {
|
} else if (typeof args[1] === 'object') {
|
||||||
service = args[1];
|
service = args[1];
|
||||||
@ -52,59 +55,63 @@ export function registerCustomId(peer: FluencePeer, serviceId: string, service:
|
|||||||
service = args[2];
|
service = args[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
peer.internals.callServiceHandler.use((req, resp, next) => {
|
peer.internals.callServiceHandler.use((req, resp, next) => {
|
||||||
if (req.serviceId !== serviceId) {
|
if (req.serviceId !== serviceId) {
|
||||||
next();
|
next();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (req.fnName === 'id') {
|
|
||||||
|
|
||||||
const callParams = {
|
|
||||||
...req.particleContext,
|
|
||||||
tetraplets: {
|
|
||||||
s: req.tetraplets[0]
|
|
||||||
},
|
|
||||||
};
|
|
||||||
resp.retCode = ResultCodes.success;
|
|
||||||
resp.result = service.id(req.args[0], callParams)
|
|
||||||
|
|
||||||
}
|
if (req.fnName === 'id') {
|
||||||
|
const callParams = {
|
||||||
|
...req.particleContext,
|
||||||
next();
|
tetraplets: {
|
||||||
});
|
s: req.tetraplets[0],
|
||||||
}
|
},
|
||||||
|
};
|
||||||
|
resp.retCode = ResultCodes.success;
|
||||||
|
resp.result = service.id(req.args[0], callParams);
|
||||||
|
}
|
||||||
|
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
// Functions
|
// Functions
|
||||||
|
|
||||||
export function viaArr(node_id: string, viaAr: string[], config?: {ttl?: number}) : Promise<{external_addresses:string[]}>;
|
export function viaArr(
|
||||||
export function viaArr(peer: FluencePeer, node_id: string, viaAr: string[], config?: {ttl?: number}) : Promise<{external_addresses:string[]}>;
|
node_id: string,
|
||||||
export function viaArr(...args: any) {
|
viaAr: string[],
|
||||||
let peer: FluencePeer;
|
config?: { ttl?: number },
|
||||||
let node_id: any;
|
): Promise<{ external_addresses: string[] }>;
|
||||||
let viaAr: any;
|
export function viaArr(
|
||||||
let config: any;
|
peer: FluencePeer,
|
||||||
if (args[0] instanceof FluencePeer) {
|
node_id: string,
|
||||||
peer = args[0];
|
viaAr: string[],
|
||||||
node_id = args[1];
|
config?: { ttl?: number },
|
||||||
viaAr = args[2];
|
): Promise<{ external_addresses: string[] }>;
|
||||||
config = args[3];
|
export function viaArr(...args: any) {
|
||||||
} else {
|
let peer: FluencePeer;
|
||||||
peer = FluencePeer.default;
|
let node_id: any;
|
||||||
node_id = args[0];
|
let viaAr: any;
|
||||||
viaAr = args[1];
|
let config: any;
|
||||||
config = args[2];
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
}
|
peer = args[0];
|
||||||
|
node_id = args[1];
|
||||||
let request: RequestFlow;
|
viaAr = args[2];
|
||||||
const promise = new Promise<{external_addresses:string[]}>((resolve, reject) => {
|
config = args[3];
|
||||||
const r = new RequestFlowBuilder()
|
} else {
|
||||||
.disableInjections()
|
peer = Fluence.getPeer();
|
||||||
.withRawScript(
|
node_id = args[0];
|
||||||
`
|
viaAr = args[1];
|
||||||
|
config = args[2];
|
||||||
|
}
|
||||||
|
|
||||||
|
let request: RequestFlow;
|
||||||
|
const promise = new Promise<{ external_addresses: string[] }>((resolve, reject) => {
|
||||||
|
const r = new RequestFlowBuilder()
|
||||||
|
.disableInjections()
|
||||||
|
.withRawScript(
|
||||||
|
`
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -165,17 +172,21 @@ config = args[2];
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'node_id', () => {
|
||||||
|
return node_id;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'viaAr', () => {
|
||||||
|
return viaAr;
|
||||||
});
|
});
|
||||||
h.on('getDataSrv', 'node_id', () => {return node_id;});
|
|
||||||
h.on('getDataSrv', 'viaAr', () => {return viaAr;});
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
const [res] = args;
|
const [res] = args;
|
||||||
resolve(res);
|
resolve(res);
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -185,43 +196,50 @@ h.on('getDataSrv', 'viaAr', () => {return viaAr;});
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for viaArr');
|
reject('Request timed out for viaArr');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
export function viaStream(
|
||||||
|
node_id: string,
|
||||||
|
viaStr: string[],
|
||||||
|
config?: { ttl?: number },
|
||||||
|
): Promise<{ external_addresses: string[] }>;
|
||||||
|
export function viaStream(
|
||||||
|
peer: FluencePeer,
|
||||||
|
node_id: string,
|
||||||
|
viaStr: string[],
|
||||||
|
config?: { ttl?: number },
|
||||||
|
): Promise<{ external_addresses: string[] }>;
|
||||||
|
export function viaStream(...args: any) {
|
||||||
|
let peer: FluencePeer;
|
||||||
|
let node_id: any;
|
||||||
|
let viaStr: any;
|
||||||
|
let config: any;
|
||||||
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
|
peer = args[0];
|
||||||
|
node_id = args[1];
|
||||||
|
viaStr = args[2];
|
||||||
|
config = args[3];
|
||||||
|
} else {
|
||||||
|
peer = Fluence.getPeer();
|
||||||
|
node_id = args[0];
|
||||||
|
viaStr = args[1];
|
||||||
|
config = args[2];
|
||||||
|
}
|
||||||
|
|
||||||
export function viaStream(node_id: string, viaStr: string[], config?: {ttl?: number}) : Promise<{external_addresses:string[]}>;
|
let request: RequestFlow;
|
||||||
export function viaStream(peer: FluencePeer, node_id: string, viaStr: string[], config?: {ttl?: number}) : Promise<{external_addresses:string[]}>;
|
const promise = new Promise<{ external_addresses: string[] }>((resolve, reject) => {
|
||||||
export function viaStream(...args: any) {
|
const r = new RequestFlowBuilder()
|
||||||
let peer: FluencePeer;
|
.disableInjections()
|
||||||
let node_id: any;
|
.withRawScript(
|
||||||
let viaStr: any;
|
`
|
||||||
let config: any;
|
|
||||||
if (args[0] instanceof FluencePeer) {
|
|
||||||
peer = args[0];
|
|
||||||
node_id = args[1];
|
|
||||||
viaStr = args[2];
|
|
||||||
config = args[3];
|
|
||||||
} else {
|
|
||||||
peer = FluencePeer.default;
|
|
||||||
node_id = args[0];
|
|
||||||
viaStr = args[1];
|
|
||||||
config = args[2];
|
|
||||||
}
|
|
||||||
|
|
||||||
let request: RequestFlow;
|
|
||||||
const promise = new Promise<{external_addresses:string[]}>((resolve, reject) => {
|
|
||||||
const r = new RequestFlowBuilder()
|
|
||||||
.disableInjections()
|
|
||||||
.withRawScript(
|
|
||||||
`
|
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -290,17 +308,21 @@ config = args[2];
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'node_id', () => {
|
||||||
|
return node_id;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'viaStr', () => {
|
||||||
|
return viaStr;
|
||||||
});
|
});
|
||||||
h.on('getDataSrv', 'node_id', () => {return node_id;});
|
|
||||||
h.on('getDataSrv', 'viaStr', () => {return viaStr;});
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
const [res] = args;
|
const [res] = args;
|
||||||
resolve(res);
|
resolve(res);
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -310,46 +332,55 @@ h.on('getDataSrv', 'viaStr', () => {return viaStr;});
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for viaStream');
|
reject('Request timed out for viaStream');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
export function viaOpt(
|
||||||
|
relay: string,
|
||||||
|
node_id: string,
|
||||||
|
viaOpt: string | null,
|
||||||
|
config?: { ttl?: number },
|
||||||
|
): Promise<{ external_addresses: string[] }>;
|
||||||
|
export function viaOpt(
|
||||||
|
peer: FluencePeer,
|
||||||
|
relay: string,
|
||||||
|
node_id: string,
|
||||||
|
viaOpt: string | null,
|
||||||
|
config?: { ttl?: number },
|
||||||
|
): Promise<{ external_addresses: string[] }>;
|
||||||
|
export function viaOpt(...args: any) {
|
||||||
|
let peer: FluencePeer;
|
||||||
|
let relay: any;
|
||||||
|
let node_id: any;
|
||||||
|
let viaOpt: any;
|
||||||
|
let config: any;
|
||||||
|
if (FluencePeer.isInstance(args[0])) {
|
||||||
|
peer = args[0];
|
||||||
|
relay = args[1];
|
||||||
|
node_id = args[2];
|
||||||
|
viaOpt = args[3];
|
||||||
|
config = args[4];
|
||||||
|
} else {
|
||||||
|
peer = Fluence.getPeer();
|
||||||
|
relay = args[0];
|
||||||
|
node_id = args[1];
|
||||||
|
viaOpt = args[2];
|
||||||
|
config = args[3];
|
||||||
|
}
|
||||||
|
|
||||||
export function viaOpt(relay: string, node_id: string, viaOpt: string | null, config?: {ttl?: number}) : Promise<{external_addresses:string[]}>;
|
let request: RequestFlow;
|
||||||
export function viaOpt(peer: FluencePeer, relay: string, node_id: string, viaOpt: string | null, config?: {ttl?: number}) : Promise<{external_addresses:string[]}>;
|
const promise = new Promise<{ external_addresses: string[] }>((resolve, reject) => {
|
||||||
export function viaOpt(...args: any) {
|
const r = new RequestFlowBuilder()
|
||||||
let peer: FluencePeer;
|
.disableInjections()
|
||||||
let relay: any;
|
.withRawScript(
|
||||||
let node_id: any;
|
`
|
||||||
let viaOpt: any;
|
|
||||||
let config: any;
|
|
||||||
if (args[0] instanceof FluencePeer) {
|
|
||||||
peer = args[0];
|
|
||||||
relay = args[1];
|
|
||||||
node_id = args[2];
|
|
||||||
viaOpt = args[3];
|
|
||||||
config = args[4];
|
|
||||||
} else {
|
|
||||||
peer = FluencePeer.default;
|
|
||||||
relay = args[0];
|
|
||||||
node_id = args[1];
|
|
||||||
viaOpt = args[2];
|
|
||||||
config = args[3];
|
|
||||||
}
|
|
||||||
|
|
||||||
let request: RequestFlow;
|
|
||||||
const promise = new Promise<{external_addresses:string[]}>((resolve, reject) => {
|
|
||||||
const r = new RequestFlowBuilder()
|
|
||||||
.disableInjections()
|
|
||||||
.withRawScript(
|
|
||||||
`
|
|
||||||
(xor
|
(xor
|
||||||
(seq
|
(seq
|
||||||
(seq
|
(seq
|
||||||
@ -413,18 +444,24 @@ config = args[3];
|
|||||||
)
|
)
|
||||||
|
|
||||||
`,
|
`,
|
||||||
)
|
)
|
||||||
.configHandler((h) => {
|
.configHandler((h) => {
|
||||||
h.on('getDataSrv', '-relay-', () => {
|
h.on('getDataSrv', '-relay-', () => {
|
||||||
return peer.connectionInfo.connectedRelay ;
|
return peer.getStatus().relayPeerId;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'relay', () => {
|
||||||
|
return relay;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'node_id', () => {
|
||||||
|
return node_id;
|
||||||
|
});
|
||||||
|
h.on('getDataSrv', 'viaOpt', () => {
|
||||||
|
return viaOpt === null ? [] : [viaOpt];
|
||||||
});
|
});
|
||||||
h.on('getDataSrv', 'relay', () => {return relay;});
|
|
||||||
h.on('getDataSrv', 'node_id', () => {return node_id;});
|
|
||||||
h.on('getDataSrv', 'viaOpt', () => {return viaOpt === null ? [] : [viaOpt];});
|
|
||||||
h.onEvent('callbackSrv', 'response', (args) => {
|
h.onEvent('callbackSrv', 'response', (args) => {
|
||||||
const [res] = args;
|
const [res] = args;
|
||||||
resolve(res);
|
resolve(res);
|
||||||
});
|
});
|
||||||
|
|
||||||
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
h.onEvent('errorHandlingSrv', 'error', (args) => {
|
||||||
const [err] = args;
|
const [err] = args;
|
||||||
@ -434,13 +471,12 @@ h.on('getDataSrv', 'viaOpt', () => {return viaOpt === null ? [] : [viaOpt];});
|
|||||||
.handleScriptError(reject)
|
.handleScriptError(reject)
|
||||||
.handleTimeout(() => {
|
.handleTimeout(() => {
|
||||||
reject('Request timed out for viaOpt');
|
reject('Request timed out for viaOpt');
|
||||||
})
|
});
|
||||||
if(config && config.ttl) {
|
if (config && config.ttl) {
|
||||||
r.withTTL(config.ttl)
|
r.withTTL(config.ttl);
|
||||||
}
|
}
|
||||||
request = r.build();
|
request = r.build();
|
||||||
});
|
});
|
||||||
peer.internals.initiateFlow(request!);
|
peer.internals.initiateFlow(request!);
|
||||||
return promise;
|
return promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence } from '@fluencelabs/fluence';
|
||||||
import { passFunctionAsArg } from '../compiled/examples/callArrow';
|
import { passFunctionAsArg } from '../compiled/examples/callArrow';
|
||||||
|
|
||||||
export async function callArrowCall(): Promise<string> {
|
export async function callArrowCall(): Promise<string> {
|
||||||
const relayPeerId = FluencePeer.default.connectionInfo.connectedRelay;
|
const relayPeerId = Fluence.getPeer().getStatus().relayPeerId;
|
||||||
return new Promise<string>((resolve, reject) => {
|
return new Promise<string>((resolve, reject) => {
|
||||||
passFunctionAsArg(relayPeerId, 'callArrow call', (a: string) => {
|
passFunctionAsArg(relayPeerId, 'callArrow call', (a: string) => {
|
||||||
let result = 'Hello, ' + a + '!';
|
let result = 'Hello, ' + a + '!';
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence } from '@fluencelabs/fluence';
|
||||||
import { parFunc } from '../compiled/examples/par';
|
import { parFunc } from '../compiled/examples/par';
|
||||||
import { registerCoService } from '../compiled/examples/co';
|
import { registerCoService } from '../compiled/examples/co';
|
||||||
|
|
||||||
export async function coCall(): Promise<string[]> {
|
export async function coCall(): Promise<string[]> {
|
||||||
const relayPeerId = FluencePeer.default.connectionInfo.connectedRelay;
|
const relayPeerId = Fluence.getPeer().getStatus().relayPeerId;
|
||||||
|
|
||||||
registerCoService({
|
registerCoService({
|
||||||
call: () => {
|
call: () => {
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence } from '@fluencelabs/fluence';
|
||||||
import { doStuff, registerTestS } from '../compiled/examples/complex';
|
import { doStuff, registerTestS } from '../compiled/examples/complex';
|
||||||
|
|
||||||
export async function complexCall() {
|
export async function complexCall() {
|
||||||
const relayPeerId = FluencePeer.default.connectionInfo.connectedRelay;
|
const relayPeerId = Fluence.getPeer().getStatus().relayPeerId;
|
||||||
const selfPeerId = FluencePeer.default.connectionInfo.selfPeerId;
|
const selfPeerId = Fluence.getPeer().getStatus().peerId;
|
||||||
|
|
||||||
registerTestS({
|
registerTestS({
|
||||||
t: (arg0) => {
|
t: (arg0) => {
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence } from '@fluencelabs/fluence';
|
||||||
import { iterateAndPrint, iterateAndPrintParallel } from '../compiled/examples/fold';
|
import { iterateAndPrint, iterateAndPrintParallel } from '../compiled/examples/fold';
|
||||||
|
|
||||||
export async function foldCall() {
|
export async function foldCall() {
|
||||||
const relayPeerId = FluencePeer.default.connectionInfo.connectedRelay;
|
const relayPeerId = Fluence.getPeer().getStatus().relayPeerId;
|
||||||
|
|
||||||
await iterateAndPrint([relayPeerId]);
|
await iterateAndPrint([relayPeerId]);
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence } from '@fluencelabs/fluence';
|
||||||
import { getTwoResults } from '../compiled/examples/foldJoin';
|
import { getTwoResults } from '../compiled/examples/foldJoin';
|
||||||
|
|
||||||
export async function foldJoinCall(): Promise<number[]> {
|
export async function foldJoinCall(): Promise<number[]> {
|
||||||
const relayPeerId = FluencePeer.default.connectionInfo.connectedRelay;
|
const relayPeerId = Fluence.getPeer().getStatus().relayPeerId;
|
||||||
return await getTwoResults(relayPeerId);
|
return await getTwoResults(relayPeerId);
|
||||||
}
|
}
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence } from '@fluencelabs/fluence';
|
||||||
import { getPeerExternalAddresses } from '../compiled/examples/on';
|
import { getPeerExternalAddresses } from '../compiled/examples/on';
|
||||||
|
|
||||||
export async function onCall(): Promise<string[]> {
|
export async function onCall(): Promise<string[]> {
|
||||||
const relayPeerId = FluencePeer.default.connectionInfo.connectedRelay;
|
const relayPeerId = Fluence.getPeer().getStatus().relayPeerId;
|
||||||
return await getPeerExternalAddresses(relayPeerId);
|
return await getPeerExternalAddresses(relayPeerId);
|
||||||
}
|
}
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence } from '@fluencelabs/fluence';
|
||||||
import { parFunc, registerParService } from '../compiled/examples/par';
|
import { parFunc, registerParService } from '../compiled/examples/par';
|
||||||
|
|
||||||
export async function parCall() {
|
export async function parCall() {
|
||||||
const relayPeerId = FluencePeer.default.connectionInfo.connectedRelay;
|
const relayPeerId = Fluence.getPeer().getStatus().relayPeerId;
|
||||||
|
|
||||||
let promise = new Promise<string>((resolve, reject) => {
|
let promise = new Promise<string>((resolve, reject) => {
|
||||||
registerParService({
|
registerParService({
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence, FluencePeer } from '@fluencelabs/fluence';
|
||||||
import { topologyTest, registerTesto, registerLocalPrint } from '../compiled/examples/topology';
|
import { topologyTest, registerTesto, registerLocalPrint } from '../compiled/examples/topology';
|
||||||
|
|
||||||
export async function topologyCall(peer2: FluencePeer): Promise<string> {
|
export async function topologyCall(peer2: FluencePeer): Promise<string> {
|
||||||
const relayPeerId = FluencePeer.default.connectionInfo.connectedRelay;
|
const relayPeerId = Fluence.getPeer().getStatus().relayPeerId;
|
||||||
const selfPeerId = FluencePeer.default.connectionInfo.selfPeerId;
|
const selfPeerId = Fluence.getPeer().getStatus().peerId;
|
||||||
|
|
||||||
const relayPeerId2 = peer2.connectionInfo.connectedRelay;
|
const relayPeerId2 = peer2.getStatus().relayPeerId;
|
||||||
const selfPeerId2 = peer2.connectionInfo.selfPeerId;
|
const selfPeerId2 = peer2.getStatus().peerId;
|
||||||
|
|
||||||
registerTesto(peer2, {
|
registerTesto(peer2, {
|
||||||
getString: (args0) => {
|
getString: (args0) => {
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence } from '@fluencelabs/fluence';
|
||||||
import { tryCatchTest } from '../compiled/examples/tryCatch';
|
import { tryCatchTest } from '../compiled/examples/tryCatch';
|
||||||
|
|
||||||
export async function tryCatchCall(): Promise<string[]> {
|
export async function tryCatchCall(): Promise<string[]> {
|
||||||
const relayPeerId = FluencePeer.default.connectionInfo.connectedRelay;
|
const relayPeerId = Fluence.getPeer().getStatus().relayPeerId;
|
||||||
return await tryCatchTest(relayPeerId);
|
return await tryCatchTest(relayPeerId);
|
||||||
}
|
}
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence } from '@fluencelabs/fluence';
|
||||||
import { tryOtherwiseTest } from '../compiled/examples/tryOtherwise';
|
import { tryOtherwiseTest } from '../compiled/examples/tryOtherwise';
|
||||||
|
|
||||||
export async function tryOtherwiseCall(): Promise<string> {
|
export async function tryOtherwiseCall(): Promise<string> {
|
||||||
const relayPeerId = FluencePeer.default.connectionInfo.connectedRelay;
|
const relayPeerId = Fluence.getPeer().getStatus().relayPeerId;
|
||||||
return await tryOtherwiseTest(relayPeerId);
|
return await tryOtherwiseTest(relayPeerId);
|
||||||
}
|
}
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence } from '@fluencelabs/fluence';
|
||||||
import { krasnodar } from '@fluencelabs/fluence-network-environment';
|
import { krasnodar } from '@fluencelabs/fluence-network-environment';
|
||||||
import { viaArr, viaOpt, viaStream, registerCustomId } from '../compiled/examples/via';
|
import { viaArr, viaOpt, viaStream, registerCustomId } from '../compiled/examples/via';
|
||||||
|
|
||||||
export async function viaCall(): Promise<string[][]> {
|
export async function viaCall(): Promise<string[][]> {
|
||||||
const relayPeerId = FluencePeer.default.connectionInfo.connectedRelay;
|
const relayPeerId = Fluence.getPeer().getStatus().relayPeerId;
|
||||||
|
|
||||||
registerCustomId({
|
registerCustomId({
|
||||||
id: (args0) => {
|
id: (args0) => {
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
#!/usr/bin/env node
|
#!/usr/bin/env node
|
||||||
|
|
||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence, FluencePeer } from '@fluencelabs/fluence';
|
||||||
import { krasnodar } from '@fluencelabs/fluence-network-environment';
|
import { krasnodar } from '@fluencelabs/fluence-network-environment';
|
||||||
import { helloWorld, registerStringExtra } from './compiled/examples/helloWorld';
|
import { helloWorld, registerStringExtra } from './compiled/examples/helloWorld';
|
||||||
|
|
||||||
const main = async () => {
|
const main = async () => {
|
||||||
// each compiled aqua function require a connected client
|
// each compiled aqua function require a connected client
|
||||||
await FluencePeer.default.init({ connectTo: krasnodar[0] });
|
await Fluence.start({ connectTo: krasnodar[0] });
|
||||||
|
|
||||||
// example to how register a local service
|
// example to how register a local service
|
||||||
// it could be used in aqua code as follows
|
// it could be used in aqua code as follows
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence } from '@fluencelabs/fluence';
|
||||||
import { krasnodar } from '@fluencelabs/fluence-network-environment';
|
import { krasnodar } from '@fluencelabs/fluence-network-environment';
|
||||||
import { getNeighbours, initTopicAndSubscribe, findSubscribers } from './compiled/dht/dht-example';
|
import { getNeighbours, initTopicAndSubscribe, findSubscribers } from './compiled/dht/dht-example';
|
||||||
|
|
||||||
const main = async () => {
|
const main = async () => {
|
||||||
await FluencePeer.default.init({ connectTo: krasnodar[0] });
|
await Fluence.start({ connectTo: krasnodar[0] });
|
||||||
const relayPeerId = krasnodar[0].peerId;
|
const relayPeerId = krasnodar[0].peerId;
|
||||||
|
|
||||||
const nodes = await getNeighbours(relayPeerId, 'random');
|
const nodes = await getNeighbours(relayPeerId, 'random');
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
#!/usr/bin/env node
|
#!/usr/bin/env node
|
||||||
|
|
||||||
import { FluencePeer } from '@fluencelabs/fluence';
|
import { Fluence, FluencePeer } from '@fluencelabs/fluence';
|
||||||
import { krasnodar, testNet } from '@fluencelabs/fluence-network-environment';
|
import { krasnodar, testNet } from '@fluencelabs/fluence-network-environment';
|
||||||
import { registerPrintln } from './compiled/examples/println';
|
import { registerPrintln } from './compiled/examples/println';
|
||||||
import { callArrowCall } from './examples/callArrowCall';
|
import { callArrowCall } from './examples/callArrowCall';
|
||||||
@ -13,7 +13,7 @@ import { ifCall } from './examples/if';
|
|||||||
import { parCall } from './examples/parCall';
|
import { parCall } from './examples/parCall';
|
||||||
import { complexCall } from './examples/complex';
|
import { complexCall } from './examples/complex';
|
||||||
import { constantsCall } from './examples/constantsCall';
|
import { constantsCall } from './examples/constantsCall';
|
||||||
import {returnNilCall, returnNoneCall, streamCall} from './examples/streamCall';
|
import { returnNilCall, returnNoneCall, streamCall } from './examples/streamCall';
|
||||||
import { topologyCall } from './examples/topologyCall';
|
import { topologyCall } from './examples/topologyCall';
|
||||||
import { foldJoinCall } from './examples/foldJoinCall';
|
import { foldJoinCall } from './examples/foldJoinCall';
|
||||||
import { registerHandlers, returnNull, returnOptionalCall, useOptionalCall } from './examples/useOptionalCall';
|
import { registerHandlers, returnNull, returnOptionalCall, useOptionalCall } from './examples/useOptionalCall';
|
||||||
@ -30,7 +30,7 @@ import { pushToStreamCall } from './examples/pushToStreamCall';
|
|||||||
import { literalCall } from './examples/returnLiteralCall';
|
import { literalCall } from './examples/returnLiteralCall';
|
||||||
import { multiReturnCall } from './examples/multiReturnCall';
|
import { multiReturnCall } from './examples/multiReturnCall';
|
||||||
import { declareCall } from './examples/declareCall';
|
import { declareCall } from './examples/declareCall';
|
||||||
import {genOptions} from "./examples/optionsCall";
|
import { genOptions } from './examples/optionsCall';
|
||||||
let deepEqual = require('deep-equal');
|
let deepEqual = require('deep-equal');
|
||||||
|
|
||||||
function checkCall(name: string, actual: any, expected: any, callBackOnError: () => void) {
|
function checkCall(name: string, actual: any, expected: any, callBackOnError: () => void) {
|
||||||
@ -57,11 +57,11 @@ function checkCallBy(name: string, actual: any, by: (res: any) => boolean, callB
|
|||||||
const main = async () => {
|
const main = async () => {
|
||||||
// setLogLevel("trace")
|
// setLogLevel("trace")
|
||||||
|
|
||||||
await FluencePeer.default.init({ connectTo: krasnodar[0] });
|
await Fluence.start({ connectTo: krasnodar[0] });
|
||||||
const selfPeerId = FluencePeer.default.connectionInfo.selfPeerId;
|
const selfPeerId = Fluence.getStatus().peerId;
|
||||||
|
|
||||||
const peer2 = new FluencePeer();
|
const peer2 = new FluencePeer();
|
||||||
await peer2.init({ connectTo: krasnodar[1] });
|
await peer2.start({ connectTo: krasnodar[1] });
|
||||||
|
|
||||||
// this could be called from `println.aqua`
|
// this could be called from `println.aqua`
|
||||||
registerPrintln({
|
registerPrintln({
|
||||||
@ -226,8 +226,8 @@ const main = async () => {
|
|||||||
let optionGenResult = await genOptions();
|
let optionGenResult = await genOptions();
|
||||||
checkCall('optionGenResult', optionGenResult, ['none', 'some'], cb);
|
checkCall('optionGenResult', optionGenResult, ['none', 'some'], cb);
|
||||||
|
|
||||||
await FluencePeer.default.uninit();
|
await Fluence.stop();
|
||||||
await peer2.uninit();
|
await peer2.stop();
|
||||||
|
|
||||||
if (success) {
|
if (success) {
|
||||||
process.exit(0);
|
process.exit(0);
|
||||||
|
Reference in New Issue
Block a user