IUserDetails.java
package fr.metabocloud.core.model;
import java.util.Set;
import fr.metabohub.users_apis_authorizations.model.UserApiAuthorizationsResponse.TokenAuthorizationsEnum;
import fr.metabohub.users_apis_authorizations.model.UserApiAuthorizationsResponse.UserRolesEnum;
/**
* <p>
* IUserDetails interface.
* </p>
*
* @author Nils Paulhe
* @since 1.0.0
* @version 1.0.0
*/
public interface IUserDetails {
/**
* <p>
* hasRole.
* </p>
*
* @param roles a {@link java.util.Set} object
* @param ro a
* {@link fr.metabohub.users_apis_authorizations.model.UserApiAuthorizationsResponse.UserRolesEnum}
* object
* @return a boolean
*/
default boolean hasRole(//
final Set<UserRolesEnum> roles, //
final UserRolesEnum ro) {
return roles.contains(ro);
}
/**
* <p>
* hasAuthorization.
* </p>
*
* @param authorizations a {@link java.util.Set} object
* @param auth a
* {@link fr.metabohub.users_apis_authorizations.model.UserApiAuthorizationsResponse.TokenAuthorizationsEnum}
* object
* @return a boolean
*/
default boolean hasAuthorization(//
final Set<TokenAuthorizationsEnum> authorizations, //
final TokenAuthorizationsEnum auth) {
return authorizations.contains(auth);
}
}