package info.bukova.isspst.services.users;

import java.util.List;

import info.bukova.isspst.data.Permission;
import info.bukova.isspst.data.Role;
import info.bukova.isspst.data.Workgroup;
import info.bukova.isspst.services.Service;

public interface RoleService extends Service<Role> {

	public Role getRoleByAuthority(String authority);
	public List<Role> getWorkgroupRoles();
	public List<Role> getCentreRoles();
	public List<Role> getRolesWithPermission(Permission perm, String modileId, boolean centre);
	public List<Role> getRolesWithPermission(String authority, String modileId, boolean centre);
	public boolean canChangeCenter(Role role);
	public boolean canChangeWorkgroup(Role role);
	public boolean isInWorkflow(Role role);
	public List<Workgroup> getRoleUsage(Role role);
	
}
