Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
async establishConnection(options = {}) {
const { version, useMacaroon, waitForMacaroon } = options
const { host, cert, macaroon, protoPath } = this.lndConfig
// Find the most recent rpc.proto file
const versionToUse = version || (await lndgrpc.getLatestProtoVersion({ path: protoPath }))
const filepath = join(protoPath, `${versionToUse}.proto`)
grpcLog.info(`Establishing gRPC connection to ${this.serviceName} with proto file %s`, filepath)
// Load gRPC package definition as a gRPC object hierarchy.
const packageDefinition = await load(filepath, grpcOptions)
const rpc = loadPackageDefinition(packageDefinition)
// Create ssl credentials to use with the gRPC client.
let creds = await createSslCreds(cert)
// Add macaroon to crenentials if service requires macaroons.
if (useMacaroon) {
// If we are trying to connect to the internal lnd, wait up to 20 seconds for the macaroon to be generated.
if (waitForMacaroon) {
await waitForFile(macaroon, 20000)
}
const macaroonCreds = await createMacaroonCreds(macaroon)
creds = credentials.combineChannelCredentials(creds, macaroonCreds)
}
// Create a new gRPC client instance.
async establishConnection() {
const { host, cert } = this.lndConfig
// Find the most recent rpc.proto file
const version = await lndgrpc.getLatestProtoVersion({ path: lndGpcProtoPath() })
const filepath = join(lndGpcProtoPath(), `${version}.proto`)
mainLog.debug('Establishing gRPC connection with proto file %s', filepath)
// Load gRPC package definition as a gRPC object hierarchy.
const packageDefinition = await load(filepath, grpcOptions)
const rpc = loadPackageDefinition(packageDefinition)
// Create ssl credentials to use with the gRPC client.
const sslCreds = await createSslCreds(cert)
// Create a new gRPC client instance.
this.service = new rpc.lnrpc.WalletUnlocker(host, sslCreds)
// Wait upto 20 seconds for the gRPC connection to be established.
return new Promise((resolve, reject) => {
this.service.waitForReady(getDeadline(20), err => {
if (err) {
this.service.close()
return reject(err)
}
return resolve()
const { app, BrowserWindow } = require('electron')
const grpc = require('@grpc/grpc-js');
const protoLoader = require('@grpc/proto-loader');
let protoFile = `${__dirname}\\..\\..\\Protos\\api.proto`;
protoLoader.load(protoFile).then(packageDefinition => {
const proto = grpc.loadPackageDefinition(packageDefinition);
let package = proto["LiveWallpaperEngine"];
let client = new package["API"]("127.0.0.1:8080", grpc.credentials.createInsecure());
let test = client["CloseWallpaper"]({
"ScreenIndexs": [3, 2]
}, (e1) => {
console.log("success" + e1);
});
});
const windows = []
console.error("test");
app.on('ready', () => {
let window = new BrowserWindow({
skipTaskbar: true,
frame: false,
module.exports.newGrpcServer = async (grpcServer, gif) => {
const PROTO_PATH = path.join(__dirname + '../../../proto/Gif.proto');
let descriptor = await protoLoader.load(
PROTO_PATH,
{
keepCase: true,
longs: String,
enums: String,
defaults: true,
oneofs: true
});
let gifSvc = descriptor['nodevoto.v1.GifService'];
let gifSrv = new GifServiceServer(gif);
let implementations = gifSrv.mapRPC();
grpcServer.addService(gifSvc, implementations);
return implementations;
async function createGrpcClient(proto, svc, host) {
const PROTO_PATH = path.join(__dirname, proto);
let descriptor = await protoLoader.load(
PROTO_PATH,
{
keepCase: true,
longs: String,
enums: String,
defaults: true,
oneofs: true
});
let pkg = grpc.loadPackageDefinition(descriptor);
let Service = pkg.nodevoto.v1[svc];
let client = new Service(host, grpc.credentials.createInsecure());
return client;
}
module.exports.newGrpcServer = async (grpcServer, poll) => {
const PROTO_PATH = path.join(__dirname + '../../../proto/Voting.proto');
let descriptor = await protoLoader.load(
PROTO_PATH,
{
keepCase: true,
longs: String,
enums: String,
defaults: true,
oneofs: true
});
let votingSrv = descriptor['nodevoto.v1.VotingService'];
let pollSrv = new PollServiceServer(poll);
let implementations = pollSrv.mapRPC(votingSrv);
grpcServer.addService(votingSrv, implementations);
return implementations;