UNPKG

1.09 kBtext/coffeescriptView Raw
1DeploymentsController = require './controllers/deployments-controller'
2CancellationController = require './controllers/cancellation-controller'
3SchedulesController = require './controllers/schedules-controller'
4StatusController = require './controllers/status-controller'
5
6class Router
7 constructor: ({client, deployDelay, redisQueue}) ->
8 throw new Error('client is required') unless client?
9 throw new Error('deployDelay is required') unless deployDelay?
10 throw new Error('redisQueue is required') unless redisQueue?
11
12 @deploymentsController = new DeploymentsController {client, deployDelay, redisQueue}
13 @cancellationController = new CancellationController {client}
14 @schedulesController = new SchedulesController {client, redisQueue}
15 @statusController = new StatusController {client, redisQueue}
16
17 route: (app) =>
18 app.post '/deployments', @deploymentsController.create
19 app.post '/cancellations', @cancellationController.create
20 app.post '/schedules', @schedulesController.create
21 app.get '/status', @statusController.show
22
23module.exports = Router