package fr.openwide.core.jpa.security.service; import java.util.Collection; import org.springframework.security.acls.model.Permission; import org.springframework.security.core.Authentication; import org.springframework.security.core.GrantedAuthority; public interface IAuthenticationService { String getUserName(); boolean isLoggedIn(); Collection<? extends GrantedAuthority> getAuthorities(); boolean hasSystemRole(); boolean hasAdminRole(); boolean hasAuthenticatedRole(); boolean hasRole(String role); boolean hasPermission(Object securedObject, Permission permission); boolean hasPermission(Permission permission); Collection<? extends Permission> getPermissions(); boolean isAnonymousAuthority(String grantedAuthoritySid); void signOut(); boolean isSuperUser(); Authentication getAuthentication(); }