/*
 * Copyright (c) 京北方信息技术股份有限公司 Corporation 2021 . All rights reserved.
 *
 */
package net.northking.cctp.common.security.authorization;

import java.util.Collection;

/**
 * 资源权限缓存服务
 *
 * @author : xiusong.xie
 * @version : 1.0
 */
public interface ResourceAuthorityCache
{
  /**
   * 保存资源权限
   *
   * @param resourceAuthorities 资源权限
   */
  void save(Collection<ResourceAuthority> resourceAuthorities);

  /**
   * 保存资源权限
   * @param roleId 角色id
   * @param resourceAuthorities 资源权限
   */
  void save(String roleId, Collection<ResourceAuthority> resourceAuthorities);

  /**
   * 补丁更新缓存中的资源权限
   *
   * @param patch 补丁
   */
  void patch(Collection<ResourceAuthority> patch);

  /**
   * 移除角色权限功能缓存
   * @param roleId
   */
  void remove(String roleId);
}
