all middlewares provider
This commit is contained in:
parent
3623ff11cb
commit
1dca924b83
3 changed files with 59 additions and 41 deletions
|
|
@ -3,12 +3,18 @@ const express = require('express');
|
|||
function buildDependencies() {
|
||||
const dependencies = {};
|
||||
|
||||
const middlewares = require('./middlewares');
|
||||
dependencies.middlewares = middlewares;
|
||||
|
||||
const constants = require('./constants');
|
||||
const services = require('./services');
|
||||
const errors = require('./errors');
|
||||
|
||||
const MiddlewaresProvider = require('./middlewares');
|
||||
const middlewares = new MiddlewaresProvider({
|
||||
constants,
|
||||
sessionService: services.sessionService,
|
||||
profileService: services.profileService,
|
||||
}).provide();
|
||||
dependencies.middlewares = middlewares;
|
||||
|
||||
const WebRoutesProvider = require('./routes/webRoutes');
|
||||
const webRoutesProvider = new WebRoutesProvider({
|
||||
express,
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
class AttachPublicKeyMiddlewareProvider {
|
||||
constructor(sessionService) {
|
||||
constructor({ sessionService }) {
|
||||
this.sessionService = sessionService;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,43 +1,55 @@
|
|||
const sessionService = require('../services/sessionService');
|
||||
const AttachPublicKeyMiddlewareProvider = require('./attachPublicKeyMiddleware');
|
||||
const attachPublicKeyMiddleware = new AttachPublicKeyMiddlewareProvider(
|
||||
sessionService
|
||||
).provide();
|
||||
class MiddlewaresProvider {
|
||||
constructor({ constants, sessionService, profileService }) {
|
||||
this.constants = constants;
|
||||
this.sessionService = sessionService;
|
||||
this.profileService = profileService;
|
||||
}
|
||||
|
||||
const constants = require('../constants');
|
||||
const CreateSessionMiddlewareProvider = require('./createSessionMiddleware');
|
||||
const createSessionMiddleware = new CreateSessionMiddlewareProvider({
|
||||
constants,
|
||||
sessionService,
|
||||
}).provide();
|
||||
|
||||
const RejectIfNotAuthorizedMiddleware = require('./rejectIfNotAuthorizedMiddleware');
|
||||
const rejectIfNotAuthorizedMiddleware = new RejectIfNotAuthorizedMiddleware({
|
||||
sessionService,
|
||||
}).provide();
|
||||
|
||||
const RedirectHomeIfAuthorized = require('./redirectHomeIfAuthorized');
|
||||
const redirectHomeIfAuthorized = new RedirectHomeIfAuthorized({
|
||||
sessionService,
|
||||
}).provide();
|
||||
|
||||
const RedirectIfNotAuthorizedMiddleware = require('./redirectIfNotAuthorizedMiddleware');
|
||||
const redirectIfNotAuthorizedMiddleware = new RedirectIfNotAuthorizedMiddleware(
|
||||
{ sessionService }
|
||||
).provide();
|
||||
|
||||
const profileService = require('../services/profileService');
|
||||
const RedirectIfMissingProfileDetailsMiddleware = require('./redirectIfMissingProfileDetailsMiddleware');
|
||||
const redirectIfMissingProfileDetailsMiddleware =
|
||||
new RedirectIfMissingProfileDetailsMiddleware({
|
||||
profileService,
|
||||
provide() {
|
||||
const AttachPublicKeyMiddlewareProvider = require('./attachPublicKeyMiddleware');
|
||||
const attachPublicKeyMiddleware = new AttachPublicKeyMiddlewareProvider({
|
||||
sessionService: this.sessionService,
|
||||
}).provide();
|
||||
|
||||
module.exports = {
|
||||
const CreateSessionMiddlewareProvider = require('./createSessionMiddleware');
|
||||
const createSessionMiddleware = new CreateSessionMiddlewareProvider({
|
||||
constants: this.constants,
|
||||
sessionService: this.sessionService,
|
||||
}).provide();
|
||||
|
||||
const RejectIfNotAuthorizedMiddleware = require('./rejectIfNotAuthorizedMiddleware');
|
||||
const rejectIfNotAuthorizedMiddleware = new RejectIfNotAuthorizedMiddleware(
|
||||
{
|
||||
sessionService: this.sessionService,
|
||||
}
|
||||
).provide();
|
||||
|
||||
const RedirectHomeIfAuthorized = require('./redirectHomeIfAuthorized');
|
||||
const redirectHomeIfAuthorized = new RedirectHomeIfAuthorized({
|
||||
sessionService: this.sessionService,
|
||||
}).provide();
|
||||
|
||||
const RedirectIfNotAuthorizedMiddleware = require('./redirectIfNotAuthorizedMiddleware');
|
||||
const redirectIfNotAuthorizedMiddleware =
|
||||
new RedirectIfNotAuthorizedMiddleware({
|
||||
sessionService: this.sessionService,
|
||||
}).provide();
|
||||
|
||||
const RedirectIfMissingProfileDetailsMiddleware = require('./redirectIfMissingProfileDetailsMiddleware');
|
||||
const redirectIfMissingProfileDetailsMiddleware =
|
||||
new RedirectIfMissingProfileDetailsMiddleware({
|
||||
profileService: this.profileService,
|
||||
}).provide();
|
||||
|
||||
return {
|
||||
redirectIfNotAuthorizedMiddleware,
|
||||
attachPublicKeyMiddleware,
|
||||
redirectIfMissingProfileDetailsMiddleware,
|
||||
redirectHomeIfAuthorized,
|
||||
rejectIfNotAuthorizedMiddleware,
|
||||
createSessionMiddleware,
|
||||
};
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = MiddlewaresProvider;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue