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 StudyProgrammePermissions extends AbstractPyramusPermissionCollection implements PyramusPermissionCollection { @Scope (PermissionScope.ENVIRONMENT) @DefaultPermissionRoles ({ ADMINISTRATOR, MANAGER, STUDY_PROGRAMME_LEADER }) public static final String CREATE_STUDYPROGRAMME = "CREATE_STUDYPROGRAMME"; @Scope (PermissionScope.ENVIRONMENT) @DefaultPermissionRoles ({ EVERYONE }) public static final String LIST_STUDYPROGRAMMES = "LIST_STUDYPROGRAMMES"; @Scope (PermissionScope.ENVIRONMENT) @DefaultPermissionRoles ({ EVERYONE }) public static final String FIND_STUDYPROGRAMME = "FIND_STUDYPROGRAMME"; @Scope (PermissionScope.ENVIRONMENT) @DefaultPermissionRoles ({ ADMINISTRATOR, MANAGER, STUDY_PROGRAMME_LEADER }) public static final String UPDATE_STUDYPROGRAMME = "UPDATE_STUDYPROGRAMME"; @Scope (PermissionScope.ENVIRONMENT) @DefaultPermissionRoles ({ ADMINISTRATOR }) public static final String DELETE_STUDYPROGRAMME = "DELETE_STUDYPROGRAMME"; @Override public List<String> listPermissions() { return super.listPermissions(StudyProgrammePermissions.class); } @Override public boolean containsPermission(String permission) { return listPermissions().contains(permission); } @Override public String getPermissionScope(String permission) throws NoSuchFieldException { return super.getPermissionScope(StudyProgrammePermissions.class, permission); } @Override public String[] getDefaultRoles(String permission) throws NoSuchFieldException { return super.getDefaultRoles(StudyProgrammePermissions.class, permission); } @Override public PermissionFeature[] listPermissionFeatures(String permission) throws NoSuchFieldException, SecurityException { return super.listPermissionFeatures(StudyProgrammePermissions.class, permission); } }