60 lines
1.9 KiB
Java
60 lines
1.9 KiB
Java
package eu.dnetlib.repo.manager.service.security;
|
|
|
|
import org.springframework.security.core.GrantedAuthority;
|
|
import org.springframework.security.core.authority.SimpleGrantedAuthority;
|
|
|
|
public interface RoleMappingService {
|
|
|
|
/**
|
|
* @param fullName
|
|
* @param prefix
|
|
* @return
|
|
*/
|
|
String getRepoNameWithoutType(String fullName, String prefix);
|
|
|
|
/**
|
|
* @param roleId Role Id
|
|
* @return Converts {@param roleId} to a repo Id.
|
|
*/
|
|
String getRepoIdByRoleId(String roleId);
|
|
|
|
/**
|
|
* @param repoId Repository Id
|
|
* @return Converts {@param repoId} to a role Id.
|
|
*/
|
|
String getRoleIdByRepoId(String repoId);
|
|
|
|
/**
|
|
* @param authorityId Authority Id
|
|
* @return Converts {@param authorityId} to repo Id.
|
|
*/
|
|
String convertAuthorityIdToRepoId(String authorityId);
|
|
|
|
/**
|
|
* @param authority Granted authority
|
|
* @return Converts {@param authority} to repo Id.
|
|
*/
|
|
String convertAuthorityToRepoId(GrantedAuthority authority);
|
|
|
|
/**
|
|
* @param repoId Repository Id
|
|
* @return
|
|
*/
|
|
String convertRepoIdToAuthorityId(String repoId);
|
|
|
|
/**
|
|
* @param repoId Repository Id
|
|
* @return Converts {@param repoId} to {@link String} role id url encoded ($ -> %24)
|
|
* // TODO: remove role encoding and perform url decoding when mapping authorities. (Must be performed in all OpenAIRE projects because of Redis)
|
|
*/
|
|
String convertRepoIdToEncodedAuthorityId(String repoId);
|
|
|
|
/**
|
|
* @param repoId Repository Id
|
|
* @return Converts {@param repoId} to {@link SimpleGrantedAuthority} with the role url encoded ($ -> %24)
|
|
* // TODO: remove role encoding and perform url decoding when mapping authorities. (Must be performed in all OpenAIRE projects because of Redis)
|
|
*/
|
|
SimpleGrantedAuthority convertRepoIdToAuthority(String repoId);
|
|
|
|
}
|