Role.java
package no.nav.data.team.team.domain;
import java.util.Arrays;
import java.util.List;
public enum Role {
AGILE_COACH,
ARCHITECT,
AREA_LEAD,
BUSINESS_ANALYST,
COMMUNICATION_ADVISER,
CONTROLLER,
DATA_ENGINEER,
DATA_MANAGER,
DATA_SCIENTIST,
DESIGNER,
DESIGN_LEAD,
DESIGN_RESEARCHER,
DEVELOPER,
DOMAIN_EXPERT,
DOMAIN_RESOURCE,
DOMAIN_RESPONSIBLE,
FRONTEND,
FUNCTIONAL_ADVISER,
HEAD_OF_LEGAL,
LEAD,
LEGAL_ADVISER,
MAINTENANCE_MANAGER,
OPERATIONS,
OTHER,
PLATFORM_SYSTEM_TECHNICIAN,
PRINCIPAL,
PRODUCT_LEAD,
PROJECT_MANAGER,
PROFIT_COACH,
SECURITY_ARCHITECT,
SECURITY_CHAMPION,
SOLUTION_ARCHITECT,
STAFFING_MANAGER,
STRATEGIC_PRODUCT_LEAD,
SUBJECT_MATTER_EXPERT,
TEAMCOACH,
TECH_DOMAIN_SPECIALIST,
TECH_LEAD,
TECHNICAL_ADVISER,
TECHNICAL_TESTER,
TECHNOLOGY_LEAD,
TESTER,
TEST_LEAD,
UU_CHAMPION,
UU_SPECIALIST,
VISUAL_ANALYTICS_ENGINEER,
WEB_ANALYST,
// LEDERGRUPPE ROLLER
DISCIPLINE_AND_DELIVERY_MANAGER, // FAGOGLEVERANSELEDER
DISCIPLINE_DIRECTOR, // FAGDIREKTOER,
LEADER, // LEDER
PERSONELLROSTER_RESPONSIBLE; // PERSONALOGBEMANNINGSANSVARLIG,
public static List<Role> getLeadergroupRoles(){
return List.of(DISCIPLINE_DIRECTOR, PERSONELLROSTER_RESPONSIBLE, DISCIPLINE_AND_DELIVERY_MANAGER, LEADER);
}
public static List<Role> getNonLeadergroupRoles(){
return Arrays.stream(Role.values()).filter(role -> !role.isLeaderGroupRole()).toList();
}
public boolean isLeaderGroupRole() {
return Role.getLeadergroupRoles().contains(this);
}
}