package org.softlang.company.model;
import java.util.ArrayList;
import java.util.List;
public class Department {
private String name;
private List<Department> subDepartments;
private List<Employee> employees;
private Employee manager;
public Department(String name, Employee manager) {
super();
this.name = name;
this.manager = manager;
this.employees = new ArrayList<Employee>();
this.subDepartments = new ArrayList<Department>();
}
public Department(String name, Employee manager,
List<Department> subDepartments) {
super();
this.name = name;
this.manager = manager;
this.employees = new ArrayList<Employee>();
this.subDepartments = subDepartments;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Employee getManager() {
return manager;
}
public void setManager(Employee manager) {
this.manager = manager;
}
public List<Department> getSubDepartments() {
return subDepartments;
}
public List<Employee> getEmployees() {
return employees;
}
public void addEmployee(Employee e) {
this.employees.add(e);
}
public void addSubDepartment(Department d) {
this.subDepartments.add(d);
}
public String toString() {
String result = "Department " + this.name + ": \nManager: "
+ this.manager.getName() + "\nEmployees:";
for (Employee e : this.employees)
result += "\n" + e.getName();
return result;
}
}