refactor: Origin runtime settings into origin service desktop

This commit is contained in:
Susmitha Girumala committed 2021-05-13 10:36:28 -04:00
1 parent ae8e20b8e1
commit 9f32b8cdc3
6 files changed
+37 -34

No files matched your search

@@ -1,4 +1,4 @@
const origin = require('../origin/index.js');
const origin = require('../services/origin.js');
const isDev = require('electron-is-dev');
const csp = {
@@ -0,0 +1,24 @@
const { net } = require('electron');
const requestTimeoutSeconds = 10;
// Simple promise wrapper around Electron's net.request feature.
// https://www.electronjs.org/docs/api/client-request
const netRequestPromise = (url) =>
new Promise((resolve, reject) => {
try {
const request = net.request(url);
// We don't worry about canceling the request timeout timer once a
// request ends because: request.abort() has no effect after a request
// ends and the promise will already have been completed, so a rejection
// has no effect either.
const requestTimeout = setTimeout(() => {
request.abort();
reject(new Error('Request timeout'));
}, requestTimeoutSeconds * 1000);
request.on('error', reject);
request.on('response', resolve);
request.end();
} catch (e) {
reject(e);
}
});
+1 -1
View File
@@ -15,7 +15,7 @@ const {
} = require('electron');
require('./ipc/handlers.js');
const origin = require('./origin/index.js');
const origin = require('./services/origin.js');
const { generateCSPHeader } = require('./config/content-security-policy.js');
const menu = require('./config/menu.js');
+1 -1
View File
@@ -2,7 +2,7 @@ const { shell } = require('electron');
const isDev = require('electron-is-dev');
const handle = require('./ipc-handler.js');
const boundaryCli = require('../cli/index.js');
const origin = require('../origin/index.js');
const origin = require('../services/origin.js');
const sessionManager = require('../services/session-manager.js');
/**
@@ -1,34 +1,7 @@
const { net } = require('electron');
const requestTimeoutSeconds = 10;
// Simple promise wrapper around Electron's net.request feature.
// https://www.electronjs.org/docs/api/client-request
const netRequestPromise = (url) =>
new Promise((resolve, reject) => {
try {
const request = net.request(url);
// We don't worry about canceling the request timeout timer once a
// request ends because: request.abort() has no effect after a request
// ends and the promise will already have been completed, so a rejection
// has no effect either.
const requestTimeout = setTimeout(() => {
request.abort();
reject(new Error('Request timeout'));
}, requestTimeoutSeconds * 1000);
request.on('error', reject);
request.on('response', resolve);
request.end();
} catch (e) {
reject(e);
}
});
// Provides a singleton class instance to enable a consistent view of
// runtime settings across the application.
const netRequestPromise = require('../helpers/net-request-promise.js');
// Runtime settings are any configuration, especially user-specified,
// set up at runtime. For example, the Boundary origin is a runtime setting.
class RuntimeSettings {
// Internal private origin is exposed via getter/setter below.
#origin = undefined;
@@ -84,6 +57,4 @@ class RuntimeSettings {
}
}
const runtimeSettings = new RuntimeSettings();
module.exports = runtimeSettings;
module.exports = RuntimeSettings;
@@ -0,0 +1,8 @@
const RuntimeSesttings = require('../models/runtime-settings.js');
// Provides a singleton class instance to enable a consistent view of
// runtime settings across the application.
const runtimeSettings = new RuntimeSettings();
module.exports = runtimeSettings;