Interface DelegatedGroupManagement


public interface DelegatedGroupManagement
Internal engine API for delegated groups management
Author:
P.Piernik
  • Method Details

    • addGroup

      String addGroup(String projectPath, String parentPath, pl.edu.icm.unity.base.i18n.I18nString groupName, boolean isPublic) throws pl.edu.icm.unity.base.exceptions.EngineException
      Adds group
      Parameters:
      projectPath - project group path
      parentPath - parent group path
      groupName - new group name
      isPublic - group access mode
      Returns:
      Throws:
      pl.edu.icm.unity.base.exceptions.EngineException
    • removeGroup

      void removeGroup(String projectPath, String path) throws pl.edu.icm.unity.base.exceptions.EngineException
      Removes group
      Parameters:
      projectPath - project group path
      path - removed group path
      Throws:
      pl.edu.icm.unity.base.exceptions.EngineException
    • removeProject

      void removeProject(String projectPath, String subProjectPath) throws pl.edu.icm.unity.base.exceptions.EngineException
      Removes subproject
      Parameters:
      projectPath - project group path
      subProjectPath - removed subproject group path
      Throws:
      pl.edu.icm.unity.base.exceptions.EngineException
    • getContents

      DelegatedGroupContents getContents(String projectPath, String subgroupPath) throws pl.edu.icm.unity.base.exceptions.EngineException
      Allows to retrieve group's contents and metadata.
      Parameters:
      subgroupPath - group to be queried.
      Returns:
      Throws:
      pl.edu.icm.unity.base.exceptions.EngineException
    • setGroupDisplayedName

      void setGroupDisplayedName(String projectPath, String path, pl.edu.icm.unity.base.i18n.I18nString newName) throws pl.edu.icm.unity.base.exceptions.EngineException
      Sets group display name
      Parameters:
      projectPath - project group path
      path - renamed group path
      newName -
      Throws:
      pl.edu.icm.unity.base.exceptions.EngineException
    • setGroupAccessMode

      void setGroupAccessMode(String projectPath, String path, boolean isPublic) throws pl.edu.icm.unity.base.exceptions.EngineException
      Updates group access mode
      Parameters:
      projectPath - project group path
      path - updated group path
      isPublic - indicates is group public or private mode
      Throws:
      pl.edu.icm.unity.base.exceptions.EngineException
    • getGroupAndSubgroups

      Map<String,DelegatedGroupContents> getGroupAndSubgroups(String projectPath, String subgroupPath) throws pl.edu.icm.unity.base.exceptions.EngineException
      Gets group with all child (recursive) groups as map.
      Parameters:
      projectPath - is a full path to the project's underlying group
      subgroupPath - is a full path to a subgroup of the project of which groups will be received
      Returns:
      keys of the returned map include the selected group and all its children. Values are objects with group's metadata and subgroups
      Throws:
      pl.edu.icm.unity.base.exceptions.EngineException
    • getAttributeDisplayedName

      String getAttributeDisplayedName(String projectPath, String attributeName) throws pl.edu.icm.unity.base.exceptions.EngineException
      Gets attribute displayed name
      Parameters:
      projectPath - project group path
      attributeName -
      Returns:
      attribute display name
      Throws:
      pl.edu.icm.unity.base.exceptions.EngineException
    • setGroupAuthorizationRole

      void setGroupAuthorizationRole(String projectPath, String subgroupPath, long entityId, GroupAuthorizationRole role) throws pl.edu.icm.unity.base.exceptions.EngineException
      Update value of group authorization role attribute
      Parameters:
      projectPath - is a full path to the project's underlying group
      subgroupPath - is a full path to a subgroup of the project of which authorization role will be set
      entityId - attribute owner
      role - value to set
      Throws:
      pl.edu.icm.unity.base.exceptions.EngineException
    • getGroupAuthorizationRole

      GroupAuthorizationRole getGroupAuthorizationRole(String projectPath, long entityId) throws pl.edu.icm.unity.base.exceptions.EngineException
      Update value of group authorization role attribute
      Parameters:
      projectPath - project group path
      entityId - attribute owner
      role - value to set
      Throws:
      pl.edu.icm.unity.base.exceptions.EngineException
    • setGroupDelegationConfiguration

      void setGroupDelegationConfiguration(String projectPath, String subgroupPath, SubprojectGroupDelegationConfiguration subprojectGroupDelegationConfiguration) throws pl.edu.icm.unity.base.exceptions.EngineException
      Sets group delegation configuration
      Parameters:
      projectPath - is a full path to the project's underlying group
      subgroupPath - is a full path to a subgroup of the project of which delegation configuration will be added
      subprojectGroupDelegationConfiguration - group delegation configuration to set
      Throws:
      pl.edu.icm.unity.base.exceptions.EngineException
    • getProjectsForEntity

      List<DelegatedGroup> getProjectsForEntity(long entityId) throws pl.edu.icm.unity.base.exceptions.EngineException
      Gets projects for entity
      Parameters:
      entityId - project manager
      Returns:
      All project group of entity
      Throws:
      pl.edu.icm.unity.base.exceptions.EngineException
    • addMemberToGroup

      void addMemberToGroup(String projectPath, String subgroupPath, long entityId) throws pl.edu.icm.unity.base.exceptions.EngineException
      Adds a new member to the group
      Parameters:
      projectPath - is a full path to the project's underlying group
      subgroupPath - is a full path to a subgroup of the project of which member will be added
      entityId - entity id to add
      Throws:
      pl.edu.icm.unity.base.exceptions.EngineException
    • removeMemberFromGroup

      void removeMemberFromGroup(String projectPath, String subgroupPath, long entityId) throws pl.edu.icm.unity.base.exceptions.EngineException
      Removes from the group and all subgroups if the user is in any. Entity can not be removed from the group == '/'
      Parameters:
      projectPath - is a full path to the project's underlying group
      subgroupPath - is a full path to a subgroup of the project of which member will be removed
      entityId - entity id to remove
      Throws:
      pl.edu.icm.unity.base.exceptions.EngineException
    • getDelegatedGroupMembers

      List<DelegatedGroupMember> getDelegatedGroupMembers(String projectPath, String subgroupPath) throws pl.edu.icm.unity.base.exceptions.EngineException
      Gets delegated group members
      Parameters:
      projectPath - is a full path to the project's underlying group
      subgroupPath - is a full path to a subgroup of the project of which members will be returned
      Returns:
      Throws:
      pl.edu.icm.unity.base.exceptions.EngineException