static void Main(string[] args) { // Get the connection string from the appsettings.json file IConfigurationBuilder builder = new ConfigurationBuilder() .SetBasePath(Directory.GetCurrentDirectory()) .AddJsonFile("appsettings.json", optional: true, reloadOnChange: true); IConfigurationRoot configuration = builder.Build(); string connectionString = configuration.GetConnectionString("Project"); IProjectDAO projectDAO = null; IEmployeeDAO employeeDAO = null; IDepartmentDAO departmentDAO = null; ProjectCLI projectCLI = new ProjectCLI(employeeDAO, projectDAO, departmentDAO); projectCLI.RunCLI(); }
public ProjectCLI(IEmployeeDAO employeeDAO, IProjectDAO projectDAO, IDepartmentDAO departmentDAO) { this.employeeDAO = employeeDAO; this.projectDAO = projectDAO; this.departmentDAO = departmentDAO; AddOption("Show all departments", GetAllDepartments) .AddOption("Show all employees", GetAllEmployees) .AddOption("Employee search by first and last name", EmployeeSearch) .AddOption("Get employees without projects", GetEmployeesWithoutProjects) .AddOption("Get all projects", GetAllProjects) .AddOption("Create Department", CreateDepartment) .AddOption("Update Department Name", UpdateDepartment) .AddOption("Create Project", CreateProject) .AddOption("Assign Employee to Project", AssignEmployeeToProject) .AddOption("Remove Employee from Project", RemoveEmployeeFromProject) .AddOption("Quit", Close, "Q"); Configure(cfg => { cfg.MenuSelectionMode = MenuSelectionMode.KeyString; }); Console.WriteLine(); }
public IDepartmentDAO createDepartmentDAO() { lock (lockObj) { if (departmentDAO == null) { if (databaseName == DATABASE_MSSQL) departmentDAO = new DepartmentMSSqlDAO(); if (departmentDAO == null) throw new Exception("Unsupported database : " + databaseName); } return departmentDAO; } }
public ProjectCLI(IEmployeeDAO employeeDAO, IProjectDAO projectDAO, IDepartmentDAO departmentDAO) { this.employeeDAO = employeeDAO; this.projectDAO = projectDAO; this.departmentDAO = departmentDAO; }
public DepartmentServiceImpl() { dao = new DepartmentDAOImpl(); }