Use switch case to create instance

This commit is contained in:
Leonardo Murça 2022-11-29 11:36:55 -03:00
parent bbea9b2f0f
commit 2c181d49b0

View file

@ -2,17 +2,20 @@ export const UserServiceProvider = (function () {
let instance;
async function createInstance(user) {
if (user.role === 'STUDENT') {
const service = await import('../services/student-service');
if (service) {
return new service.default(user);
switch (user.role) {
case 'STUDENT':
const studentService = await import('../services/student-service');
if (studentService) {
return new studentService.default(user);
}
} else if (user.role === 'PROFESSOR') {
const service = await import('../services/professor-service');
if (service) {
return new service.default(user);
break;
case 'PROFESSOR':
const professorService = await import('../services/professor-service');
if (professorService) {
return new professorService.default(user);
}
} else {
break;
default:
throw new Error('Invalid Role!');
}
}