package fi.otavanopisto.pyramus.rest.controller.permissions; import java.util.List; import fi.otavanopisto.pyramus.security.impl.AbstractPyramusPermissionCollection; import fi.otavanopisto.pyramus.security.impl.DefaultPermissionRoles; import fi.otavanopisto.pyramus.security.impl.PermissionScope; import fi.otavanopisto.pyramus.security.impl.PyramusPermissionCollection; import fi.otavanopisto.security.PermissionFeature; import fi.otavanopisto.security.Scope; public class CalendarPermissions extends AbstractPyramusPermissionCollection implements PyramusPermissionCollection { @Scope (PermissionScope.ENVIRONMENT) @DefaultPermissionRoles ({ ADMINISTRATOR, MANAGER, STUDY_PROGRAMME_LEADER }) public static final String CREATE_ACADEMICTERM = "CREATE_ACADEMICTERM"; @Scope (PermissionScope.ENVIRONMENT) @DefaultPermissionRoles ({ EVERYONE }) public static final String LIST_ACADEMICTERMS = "LIST_ACADEMICTERMS"; @Scope (PermissionScope.ENVIRONMENT) @DefaultPermissionRoles ({ EVERYONE }) public static final String FIND_ACADEMICTERM = "FIND_ACADEMICTERM"; @Scope (PermissionScope.ENVIRONMENT) @DefaultPermissionRoles ({ ADMINISTRATOR, MANAGER, STUDY_PROGRAMME_LEADER }) public static final String UPDATE_ACADEMICTERM = "UPDATE_ACADEMICTERM"; @Scope (PermissionScope.ENVIRONMENT) @DefaultPermissionRoles ({ ADMINISTRATOR }) public static final String DELETE_ACADEMICTERM = "DELETE_ACADEMICTERM"; @Scope (PermissionScope.ENVIRONMENT) @DefaultPermissionRoles ({ ADMINISTRATOR, MANAGER, STUDY_PROGRAMME_LEADER, USER, GUEST, STUDENT }) public static final String FIND_COURSESBYACADEMICTERM = "FIND_COURSESBYACADEMICTERM"; @Override public List<String> listPermissions() { return super.listPermissions(CalendarPermissions.class); } @Override public boolean containsPermission(String permission) { return listPermissions().contains(permission); } @Override public String getPermissionScope(String permission) throws NoSuchFieldException { return super.getPermissionScope(CalendarPermissions.class, permission); } @Override public String[] getDefaultRoles(String permission) throws NoSuchFieldException { return super.getDefaultRoles(CalendarPermissions.class, permission); } @Override public PermissionFeature[] listPermissionFeatures(String permission) throws NoSuchFieldException, SecurityException { return super.listPermissionFeatures(CalendarPermissions.class, permission); } }