diff options
| author | Jules Laplace <jules@okfoc.us> | 2016-04-14 14:17:00 -0400 |
|---|---|---|
| committer | Jules Laplace <jules@okfoc.us> | 2016-04-14 14:17:00 -0400 |
| commit | 5922279561c1998a3e158c26f951348f4c031928 (patch) | |
| tree | 32954fd378a6436edd7a9c5bb24a5ed82a006411 /app/index.js | |
| parent | fa343212514f1e6f975e5cf5957e440555afb815 (diff) | |
support adding custom services per-project
Diffstat (limited to 'app/index.js')
| -rw-r--r-- | app/index.js | 42 |
1 files changed, 25 insertions, 17 deletions
diff --git a/app/index.js b/app/index.js index 1a8f97e..7fd88f4 100644 --- a/app/index.js +++ b/app/index.js @@ -94,19 +94,30 @@ function OKCMS(options) { errorHandler); // Create services - if (serviceConfig.s3) { - var s3Service = OKS3Service({ - express: express, - s3: serviceConfig.s3, - }); - } - - if (serviceConfig.twitter) { - var twitterService = OKTwitterService({ - express: express, - credentials: serviceConfig.twitter, - }) - } + var services = {} + Object.keys(serviceConfig).forEach(function(key){ + var config = serviceConfig[key] + switch (key) { + case 's3': + services.s3 = OKS3Service({ + express: express, + s3: config, + }); + break + case 'twitter': + services.twitter = OKTwitterService({ + express: express, + credentials: config, + }); + break + default: + services[key] = config.lib({ + express: express, + config: config, + }); + break + } + }); var server = this._server = new OKServer({ express: express, @@ -117,10 +128,7 @@ function OKCMS(options) { root: root, adminRoot: adminRoot, adminPath: adminPath, - services: { - s3: s3Service, - twitter: twitterService, - }, + services: services, errorHandler: errorHandler }); } |
