Interface DelegatedGroupManagement
public interface DelegatedGroupManagement
Internal engine API for delegated groups management
- Author:
- P.Piernik
-
Method Summary
Modifier and TypeMethodDescriptionaddGroup
(String projectPath, String parentPath, pl.edu.icm.unity.base.i18n.I18nString groupName, boolean isPublic) Adds groupvoid
addMemberToGroup
(String projectPath, String subgroupPath, long entityId) Adds a new member to the groupgetAttributeDisplayedName
(String projectPath, String attributeName) Gets attribute displayed namegetContents
(String projectPath, String subgroupPath) Allows to retrieve group's contents and metadata.getDelegatedGroupMembers
(String projectPath, String subgroupPath) Gets delegated group membersgetGroupAndSubgroups
(String projectPath, String subgroupPath) Gets group with all child (recursive) groups as map.getGroupAuthorizationRole
(String projectPath, long entityId) Update value of group authorization role attributegetProjectsForEntity
(long entityId) Gets projects for entityvoid
removeGroup
(String projectPath, String path) Removes groupvoid
removeMemberFromGroup
(String projectPath, String subgroupPath, long entityId) Removes from the group and all subgroups if the user is in any.void
removeProject
(String projectPath, String subProjectPath) Removes subprojectvoid
setGroupAccessMode
(String projectPath, String path, boolean isPublic) Updates group access modevoid
setGroupAuthorizationRole
(String projectPath, String subgroupPath, long entityId, GroupAuthorizationRole role) Update value of group authorization role attributevoid
setGroupDelegationConfiguration
(String projectPath, String subgroupPath, SubprojectGroupDelegationConfiguration subprojectGroupDelegationConfiguration) Sets group delegation configurationvoid
setGroupDisplayedName
(String projectPath, String path, pl.edu.icm.unity.base.i18n.I18nString newName) Sets group display name
-
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 pathparentPath
- parent group pathgroupName
- new group nameisPublic
- 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 pathpath
- 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 pathsubProjectPath
- 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 pathpath
- renamed group pathnewName
-- 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 pathpath
- updated group pathisPublic
- 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 groupsubgroupPath
- 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 pathattributeName
-- 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 groupsubgroupPath
- is a full path to a subgroup of the project of which authorization role will be setentityId
- attribute ownerrole
- 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 pathentityId
- attribute ownerrole
- 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 groupsubgroupPath
- is a full path to a subgroup of the project of which delegation configuration will be addedsubprojectGroupDelegationConfiguration
- 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 groupsubgroupPath
- is a full path to a subgroup of the project of which member will be addedentityId
- 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 groupsubgroupPath
- is a full path to a subgroup of the project of which member will be removedentityId
- 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 groupsubgroupPath
- 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
-