Skip to content
This repository was archived by the owner on Sep 2, 2023. It is now read-only.

Commit 8c91ce9

Browse files
committed
[Dispatcher] merge previews and diffbrowsers task; Fixes #118, #119, #120
Also: WIP sandbox mode; make sources selectable for diffing tasks.
1 parent 47b221b commit 8c91ce9

File tree

5 files changed

+360
-291
lines changed

5 files changed

+360
-291
lines changed

containers/base/javascript/node/InitWorkers.js

-5
Original file line numberDiff line numberDiff line change
@@ -723,10 +723,6 @@ function DiffbrowsersWorker(...args) {
723723
}
724724
DiffbrowsersWorker.prototype = Object.create(GenericStorageWorker.prototype);
725725

726-
function PreviewsWorker(...args) {
727-
GenericStorageWorker.call(this, 'previews', ...args);
728-
}
729-
PreviewsWorker.prototype = Object.create(GenericStorageWorker.prototype);
730726

731727
if (typeof require != 'undefined' && require.main==module) {
732728
var setup = getSetup()
@@ -748,7 +744,6 @@ if (typeof require != 'undefined' && require.main==module) {
748744
fontbakery: [FontBakeryWorker, 'logging', 'io', 'cache']
749745
, diffenator: [DiffenatorWorker, 'logging', 'io'/*, 'cache'*/]
750746
, diffbrowsers: [DiffbrowsersWorker, 'logging', 'io'/*, 'cache'*/]
751-
, previews: [PreviewsWorker, 'logging', 'io'/*, 'cache'*/]
752747
}
753748
, resources = {
754749
logging: setup.logging

containers/base/javascript/node/dispatcher/DispatcherProcessManager.js

+25-15
Original file line numberDiff line numberDiff line change
@@ -89,14 +89,32 @@ function DispatcherProcessManager(setup, ...args) {
8989
.then(familyNamesList=>familyNamesList.getFamilyNamesList());
9090
}
9191
}
92-
, getUpstreamFamilyFiles: {
93-
value: (familyName, processCommand)=>{
94-
// rpc Get (FamilyRequest) returns (FamilyData){}
95-
// returns a promise for FamilyData
96-
var familyRequestMessage = _makeFamilyRequest('upstream', familyName, processCommand);
97-
return this._manifestUpstreamClient.getDelayed(familyRequestMessage)
92+
, getFamilyDataDelayed: {
93+
value: (sourceID, familyName, processCommand)=>{
94+
var sourceClient, familyRequestMessage;
95+
switch(sourceID){
96+
case ('upstream'):
97+
sourceClient = this._manifestUpstreamClient;
98+
break;
99+
case ('production'):
100+
sourceClient = this._manifestGoogleFontsAPIClient;
101+
break;
102+
case ('master'):
103+
// falls through
104+
this._log.warning('TODO this._manifestGitHubClient '
105+
+ 'is not implemented');
106+
//sourceClient = this._manifestGitHubClient;
107+
//break;
108+
default:
109+
// this is a programming error
110+
throw new Error(`Family source "${sourceID}" is not known.`);
111+
}
112+
familyRequestMessage = _makeFamilyRequest(
113+
sourceID, familyName, processCommand);
114+
return sourceClient.getDelayed(familyRequestMessage)
98115
.then(null, error=>{
99-
this._log.error(`Error getUpstreamFamilyFiles(${familyName})`, error);
116+
this._log.error('Error getFamilyDataDelayed('
117+
+ `${sourceID}, ${familyName})`, error);
100118
// re-raise
101119
throw error;
102120
});
@@ -115,14 +133,6 @@ function DispatcherProcessManager(setup, ...args) {
115133
});
116134
}
117135
}
118-
, getGoogleFontsAPIFamilyFiles: {
119-
value: familyName=>{
120-
// rpc Get (FamilyRequest) returns (FamilyData){}
121-
// returns a promise for FamilyData
122-
var familyRequestMessage = _makeFamilyRequest('production', familyName);
123-
return this._manifestGoogleFontsAPIClient.get(familyRequestMessage);
124-
}
125-
}
126136
, persistence: {
127137
value: this._persistenceClient
128138
}

0 commit comments

Comments
 (0)