All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.corbel.iam.service.ScopeService Maven / Gradle / Ivy

package io.corbel.iam.service;

import java.util.Collection;
import java.util.Set;

import io.corbel.iam.exception.ScopeAbsentIdException;
import io.corbel.iam.exception.ScopeNameException;
import io.corbel.iam.model.Scope;

/**
 * Business logic for Scope management.
 * 
 * @author Alexander De Leon
 * 
 */
public interface ScopeService {

    Scope getScope(String id);

    Set getScopes(Collection scopes);

    Set getScopes(String... scopes);

    Set fillScopes(Set filledScopes, String userId, String clientId, String domainId);

    Scope fillScope(Scope scope, String userId, String clientId, String domainId);

    void addAuthorizationRules(String token, Set filledScopes);

    void addAuthorizationRulesForPublicAccess(String token, Set publicScopes);

    Set expandScopes(Collection scopes);

    void publishAuthorizationRules(String token, long tokenExpirationTime, Set filledScopes);

    void create(Scope scope) throws ScopeNameException, ScopeAbsentIdException;

    void delete(String scope);


}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy