Skip to content

Commit

Permalink
Use let/const instead of var, #104
Browse files Browse the repository at this point in the history
  • Loading branch information
rubensworks committed Apr 7, 2020
1 parent 2dc68c7 commit 83fa02e
Show file tree
Hide file tree
Showing 71 changed files with 468 additions and 467 deletions.
1 change: 1 addition & 0 deletions .eslintrc
Original file line number Diff line number Diff line change
Expand Up @@ -97,6 +97,7 @@
vars-on-top: 0,
wrap-iife: [2, "inside"],
yoda: 2,
no-var: "error",

// Strict Mode
strict: [2, "never"],
Expand Down
18 changes: 9 additions & 9 deletions packages/core/lib/CliRunner.js
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
/*! @license MIT ©2013-2017 Ruben Verborgh and Ruben Taelman, Ghent University - imec */
/* Logic for starting an LDF server with a given config from the command line. */

var cluster = require('cluster'),
let cluster = require('cluster'),
ComponentsLoader = require('componentsjs').Loader;

// Run function for starting the server from the command line
function runCli(moduleRootPath) {
var argv = process.argv.slice(2);
let argv = process.argv.slice(2);
runCustom(argv, process.stdin, process.stdout, process.stderr, null, { mainModulePath: moduleRootPath });
}

Expand All @@ -17,11 +17,11 @@ function runCustom(args, stdin, stdout, stderr, componentConfigUri, properties)
return process.exit(1);
}

var cliPort = parseInt(args[1], 10),
let cliPort = parseInt(args[1], 10),
cliWorkers = parseInt(args[2], 10),
configUri = args[3] || componentConfigUri || 'urn:ldf-server:my';

var loader = new ComponentsLoader(properties);
let loader = new ComponentsLoader(properties);
loader.registerAvailableModuleResources()
.then(function () {
// Start up a cluster master
Expand Down Expand Up @@ -57,11 +57,11 @@ function runCustom(args, stdin, stdout, stderr, componentConfigUri, properties)
});

function startClusterMaster(config) {
var workers = cliWorkers || config.workers || 1;
let workers = cliWorkers || config.workers || 1;

// Create workers
stdout.write('Master ' + process.pid + ' running.\n');
for (var i = 0; i < workers; i++)
for (let i = 0; i < workers; i++)
cluster.fork();

// Respawn crashed workers
Expand All @@ -86,14 +86,14 @@ function runCustom(args, stdin, stdout, stderr, componentConfigUri, properties)
process.removeListener('SIGHUP', respawn);

// Retrieve a list of old workers that will be replaced by new ones
var workers = Object.keys(cluster.workers).map(function (id) { return cluster.workers[id]; });
let workers = Object.keys(cluster.workers).map(function (id) { return cluster.workers[id]; });
(function respawnNext() {
// If there are still old workers, respawn a new one
if (workers.length) {
// Wait until the new worker starts listening to kill the old one
var newWorker = cluster.fork();
let newWorker = cluster.fork();
newWorker.once('listening', function () {
var worker = workers.pop();
let worker = workers.pop();
if (!worker)
return newWorker.kill(), respawnNext(); // Dead workers are replaced automatically
worker.once('exit', function () {
Expand Down
20 changes: 10 additions & 10 deletions packages/core/lib/LinkedDataFragmentsServer.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/*! @license MIT ©2014-2016 Ruben Verborgh, Ghent University - imec */
/* LinkedDataFragmentsServer is an HTTP server that provides access to Linked Data Fragments */

var _ = require('lodash'),
let _ = require('lodash'),
fs = require('fs'),
Util = require('./Util'),
ErrorController = require('./controllers/ErrorController'),
Expand All @@ -11,14 +11,14 @@ var _ = require('lodash'),
class LinkedDataFragmentsServer {
constructor(options) {
// Create the HTTP(S) server
var server, sockets = 0;
var urlData = options && options.urlData ? options.urlData : new UrlData();
let server, sockets = 0;
let urlData = options && options.urlData ? options.urlData : new UrlData();
switch (urlData.protocol) {
case 'http':
server = require('http').createServer();
break;
case 'https':
var ssl = options.ssl || {}, authentication = options.authentication || {};
const ssl = options.ssl || {}, authentication = options.authentication || {};
// WebID authentication requires a client certificate
if (authentication.webid)
ssl.requestCert = ssl.rejectUnauthorized = true;
Expand All @@ -29,7 +29,7 @@ class LinkedDataFragmentsServer {
}

// Copy over members
for (var member in LinkedDataFragmentsServer.prototype)
for (let member in LinkedDataFragmentsServer.prototype)
server[member] = LinkedDataFragmentsServer.prototype[member];

// Assign settings
Expand All @@ -48,7 +48,7 @@ class LinkedDataFragmentsServer {
catch (error) { server._reportError(request, response, error); }
});
server.on('connection', function (socket) {
var socketId = sockets++;
let socketId = sockets++;
server._sockets[socketId] = socket;
socket.on('close', function () { delete server._sockets[socketId]; });
});
Expand All @@ -59,7 +59,7 @@ class LinkedDataFragmentsServer {
// Handles an incoming HTTP request
LinkedDataFragmentsServer.prototype._processRequest = function (request, response) {
// Add default response headers
for (var header in this._defaultHeaders)
for (let header in this._defaultHeaders)
response.setHeader(header, this._defaultHeaders[header]);

// Verify an allowed HTTP method was used
Expand All @@ -81,7 +81,7 @@ LinkedDataFragmentsServer.prototype._processRequest = function (request, respons
}

// Try each of the controllers in order
var self = this, controllerId = 0;
let self = this, controllerId = 0;
function nextController(error) {
// Error if the previous controller failed
if (error)
Expand All @@ -91,7 +91,7 @@ LinkedDataFragmentsServer.prototype._processRequest = function (request, respons
response.emit('error', new Error('No controller for ' + request.url));
// Otherwise, try the next controller
else {
var controller = self._controllers[controllerId++], next = _.once(nextController);
let controller = self._controllers[controllerId++], next = _.once(nextController);
try { controller.handleRequest(request, response, next); }
catch (error) { next(error); }
}
Expand Down Expand Up @@ -127,7 +127,7 @@ LinkedDataFragmentsServer.prototype._reportError = function (request, response,
LinkedDataFragmentsServer.prototype.stop = function () {
// Don't accept new connections, and close existing ones
this.close();
for (var id in this._sockets)
for (let id in this._sockets)
this._sockets[id].destroy();

// Close all controllers
Expand Down
20 changes: 10 additions & 10 deletions packages/core/lib/LinkedDataFragmentsServerWorker.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/*! @license MIT ©2014-2017 Ruben Verborgh and Ruben Taelman, Ghent University - imec */
/* LinkedDataFragmentsServerRunner is able to run a Linked Data Fragments server */

var _ = require('lodash'),
let _ = require('lodash'),
fs = require('fs'),
LinkedDataFragmentsServer = require('./LinkedDataFragmentsServer');

Expand All @@ -17,7 +17,7 @@ class LinkedDataFragmentsServerWorker {

// Create all data sources
Object.keys(config.datasources).forEach(function (datasourceId) {
var datasource = config.datasources[datasourceId];
let datasource = config.datasources[datasourceId];
datasource.on('error', datasourceError);
function datasourceError(error) {
config.datasources[datasourceId].hide = true;
Expand All @@ -26,11 +26,11 @@ class LinkedDataFragmentsServerWorker {
});

// Set up logging
var loggingSettings = config.logging;
let loggingSettings = config.logging;
// eslint-disable-next-line no-console
config.log = console.log;
if (loggingSettings.enabled) {
var accesslog = require('access-log');
let accesslog = require('access-log');
config.accesslogger = function (request, response) {
accesslog(request, response, null, function (logEntry) {
fs.appendFile(loggingSettings.file, logEntry + '\n', function (error) {
Expand All @@ -41,10 +41,10 @@ class LinkedDataFragmentsServerWorker {
}

// Make sure the 'last' controllers are last in the array and the 'first' are first.
var lastControllers = _.remove(config.controllers, function (controller) {
let lastControllers = _.remove(config.controllers, function (controller) {
return controller._last;
});
var firstControllers = _.remove(config.controllers, function (controller) {
let firstControllers = _.remove(config.controllers, function (controller) {
return controller._first;
});
config.controllers = firstControllers.concat(config.controllers.concat(lastControllers));
Expand All @@ -54,16 +54,16 @@ class LinkedDataFragmentsServerWorker {

// Start the worker
run(port) {
var config = this._config;
let config = this._config;
if (port)
config.port = port;
var server = new LinkedDataFragmentsServer(config);
let server = new LinkedDataFragmentsServer(config);

// Start the server when all data sources are ready
var pending = _.size(config.datasources);
let pending = _.size(config.datasources);
_.each(config.datasources, function (datasource) {
// Add datasource ready-listener
var ready = _.once(startWhenReady);
let ready = _.once(startWhenReady);
datasource.once('initialized', ready);
datasource.once('error', ready);

Expand Down
2 changes: 1 addition & 1 deletion packages/core/lib/UrlData.js
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ class UrlData {
this.assetsPath = this.baseURLPath + 'assets/' || options.assetsPath;
this.protocol = options.protocol;
if (!this.protocol) {
var protocolMatch = (this.baseURL || '').match(/^(\w+):/);
let protocolMatch = (this.baseURL || '').match(/^(\w+):/);
this.protocol = protocolMatch ? protocolMatch[1] : 'http';
}
}
Expand Down
2 changes: 1 addition & 1 deletion packages/core/lib/Util.js
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ module.exports.createErrorType = function (BaseError, name, init) {
if (typeof BaseError !== 'function')
init = name, name = BaseError, BaseError = Error;
function ErrorType(message) {
var error = this instanceof ErrorType ? this : new ErrorType(message);
let error = this instanceof ErrorType ? this : new ErrorType(message);
error.name = name;
error.message = message || '';
Error.captureStackTrace(error, error.constructor);
Expand Down
14 changes: 7 additions & 7 deletions packages/core/lib/controllers/AssetsController.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/*! @license MIT ©2015-2016 Ruben Verborgh, Ghent University - imec */
/* An AssetsController responds to requests for assets */

var Controller = require('./Controller'),
let Controller = require('./Controller'),
fs = require('fs'),
path = require('path'),
mime = require('mime'),
Expand All @@ -15,13 +15,13 @@ class AssetsController extends Controller {
super(options);

// Set up path matching
var assetsPath = (options.urlData || new UrlData()).assetsPath || '/assets/';
let assetsPath = (options.urlData || new UrlData()).assetsPath || '/assets/';
this._matcher = new RegExp('^' + Util.toRegExp(assetsPath) + '(.+)|^/(\\w*)\\.ico$');

// Read all assets
var assetsFolders = options.assetsFolders || ['file:///' + path.join(__dirname, '../../assets/')];
let assetsFolders = options.assetsFolders || ['file:///' + path.join(__dirname, '../../assets/')];
this._assets = {};
for (var i = 0; i < assetsFolders.length; i++)
for (let i = 0; i < assetsFolders.length; i++)
this._readAssetsFolder(assetsFolders[i], '');
}

Expand All @@ -30,10 +30,10 @@ class AssetsController extends Controller {
if (assetsFolder.indexOf('file:///') === 0)
assetsFolder = assetsFolder.replace('file:///', '');
fs.readdirSync(assetsFolder).forEach(function (name) {
var filename = path.join(assetsFolder, name), stats = fs.statSync(filename);
let filename = path.join(assetsFolder, name), stats = fs.statSync(filename);
// Read an asset file into memory
if (stats.isFile()) {
var assetType = mime.lookup(filename);
let assetType = mime.lookup(filename);
this._assets[assetsPath + name.replace(/[.][^.]+$/, '')] = {
type: assetType.indexOf('text/') ? assetType : assetType + ';charset=utf-8',
contents: fs.readFileSync(filename),
Expand All @@ -47,7 +47,7 @@ class AssetsController extends Controller {

// Try to serve the requested asset
_handleRequest(request, response, next) {
var assetMatch = request.url.match(this._matcher), asset;
let assetMatch = request.url.match(this._matcher), asset;
if (asset = assetMatch && this._assets[assetMatch[1] || assetMatch[2]]) {
response.writeHead(200, {
'Content-Type': asset.type,
Expand Down
10 changes: 5 additions & 5 deletions packages/core/lib/controllers/Controller.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/*! @license MIT ©2015-2016 Ruben Verborgh, Ghent University - imec */
/* Controller is a base class for HTTP request handlers */

var url = require('url'),
let url = require('url'),
_ = require('lodash'),
ViewCollection = require('../views/ViewCollection'),
UrlData = require('../UrlData'),
Expand Down Expand Up @@ -41,7 +41,7 @@ class Controller {
}

// Try to handle the request
var self = this;
let self = this;
try { this._handleRequest(request, response, done, settings); }
catch (error) { done(error); }
function done(error) {
Expand All @@ -60,7 +60,7 @@ class Controller {
if (!request.headers.forwarded)
return {};
try {
var forwarded = _.defaults.apply(this, parseForwarded(request.headers.forwarded));
let forwarded = _.defaults.apply(this, parseForwarded(request.headers.forwarded));
return {
protocol: forwarded.proto ? forwarded.proto + ':' : undefined,
host: forwarded.host,
Expand Down Expand Up @@ -91,10 +91,10 @@ class Controller {
// Finds an appropriate view using content negotiation
_negotiateView(viewName, request, response) {
// Indicate that the response is content-negotiated
var vary = response.getHeader('Vary');
let vary = response.getHeader('Vary');
response.setHeader('Vary', 'Accept' + (vary ? ', ' + vary : ''));
// Negotiate a view
var viewMatch = this._views.matchView(viewName, request);
let viewMatch = this._views.matchView(viewName, request);
response.setHeader('Content-Type', viewMatch.responseType || viewMatch.type);
return viewMatch.view;
}
Expand Down
8 changes: 4 additions & 4 deletions packages/core/lib/controllers/DereferenceController.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/*! @license MIT ©2015-2016 Ruben Verborgh, Ghent University - imec */
/* A DeferenceController responds to dereferencing requests */

var Controller = require('./Controller'),
let Controller = require('./Controller'),
url = require('url'),
_ = require('lodash'),
Util = require('../Util');
Expand All @@ -11,17 +11,17 @@ class DeferenceController extends Controller {
constructor(options) {
options = options || {};
super(options);
var paths = this._paths = options.dereference || {};
let paths = this._paths = options.dereference || {};
this._matcher = /$0^/;
if (!_.isEmpty(paths))
this._matcher = new RegExp('^(' + Object.keys(paths).map(Util.toRegExp).join('|') + ')');
}

// Dereferences a URL by redirecting to its subject fragment of a certain data source
_handleRequest(request, response, next) {
var match = this._matcher.exec(request.url), datasource;
let match = this._matcher.exec(request.url), datasource;
if (datasource = match && this._paths[match[1]]) {
var entity = url.format(_.defaults({
let entity = url.format(_.defaults({
pathname: datasource.path,
query: { subject: url.format(request.parsedUrl) },
}, request.parsedUrl));
Expand Down
4 changes: 2 additions & 2 deletions packages/core/lib/controllers/ErrorController.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/*! @license MIT ©2015-2016 Ruben Verborgh, Ghent University - imec */
/* An ErrorController responds to requests that caused an error */

var Controller = require('./Controller'),
let Controller = require('./Controller'),
Util = require('../Util');

// Creates a new ErrorController
Expand All @@ -13,7 +13,7 @@ class ErrorController extends Controller {
// Serves an error response
_handleRequest(request, response, next) {
// Try to write an error response through an appropriate view
var error = response.error || (response.error = new Error('Unknown error')),
let error = response.error || (response.error = new Error('Unknown error')),
view = this._negotiateView('Error', request, response),
metadata = { prefixes: this._prefixes, datasources: this._datasources, error: error };
response.writeHead(500);
Expand Down
4 changes: 2 additions & 2 deletions packages/core/lib/controllers/NotFoundController.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/*! @license MIT ©2015-2016 Ruben Verborgh, Ghent University - imec */
/* A NotFoundController responds to requests that cannot be resolved */

var Controller = require('./Controller'),
let Controller = require('./Controller'),
Util = require('../Util');

// Creates a new NotFoundController
Expand All @@ -17,7 +17,7 @@ class NotFoundController extends Controller {
response.setHeader('Cache-Control', 'public,max-age=3600');

// Render the 404 message using the appropriate view
var view = this._negotiateView('NotFound', request, response),
let view = this._negotiateView('NotFound', request, response),
metadata = { url: request.url, prefixes: this._prefixes, datasources: this._datasources };
response.writeHead(404);
view.render(metadata, request, response);
Expand Down
Loading

0 comments on commit 83fa02e

Please sign in to comment.