Show TOC

Background documentationManaging Workspace Users Locate this document in the navigation structure

 

The Workspace API enables you to access and manage workspace users. The following examples illustrate various use cases of managing users, such as adding or removing workspace members, or changing their workspace roles.

Retrieving Workspace Member List

Example Example

This example shows how to retrieve the workspace member list by the module context:

  1. private IMemberList getMemberListByModule(IPortalComponentRequest request)
    {
    // Retrieve the workspace in which this module is running
    IModuleContext moduleContext = ModuleHelper.getModuleContext(request);
    IWorkspaceFactory workspaceFactory = (IWorkspaceFactory) RuntimeFactory.getWorkspacesRuntime().getService(IWorkspaceFactory.class);		
    IIdentifier workspaceIdentifier = moduleContext.getModuleID().getWorkspaceID();
    IWorkspace workspace = workspaceFactory.getWorkspace(moduleContext.getUser() ,workspaceIdentifier);
    
    // Retrieve members in this workspace
    IMemberList memberList = workspace.getMemberList();
    
    return memberList;
    }
    
End of the source code.

Example Example

This example shows how to retrieve the workspace member list by the workspace ID:

  1. private IMemberList getMemberListByWorkspace(IPortalComponentRequest request, String workspaceID)
    { 
    // Retrieve the workspace factory
    IWorkspaceFactory workspaceFactory = (IWorkspaceFactory) RuntimeFactory.getWorkspacesRuntime().getService(IWorkspaceFactory.class);
    IIdentifier workspaceIdentifier = workspaceFactory.getSharedIdentifier(workspaceID);
    
    // Retrieve the workspace in which this module is running
    IWorkspace workspace = workspaceFactory.getWorkspace(request.getUser() ,workspaceIdentifier);
    
    // Retrieve members in this workspace
    IMemberList memberList = workspace.getMemberList();
    
    return memberList;
    }
    
End of the source code.
Adding Member to Workspace

Example Example

  1. private void addMemberToWorkspace(IPortalComponentRequest request, Object userToAdd)
        {
        	IMemberList memberlist = accessingWorkspaceMemberList(request);
    
        	// Retrieve list of managers
        	IRole managerRole = memberlist.getRole(WorkspaceRole.MANAGER);
    
        	// Add user as manager
        	managerRole.addUser(request.getUser(), userToAdd);    	    	
        }
    
End of the source code.
Removing Member from Workspace

Example Example

  1. private void removeMemberFromWorkspace(IPortalComponentRequest request, Object userToRemove)
        {
        	IMemberList memberlist = accessingWorkspaceMemberList(request);
    
        	// Retrieve list of members
        	IRole memberRole = memberlist.getRole(WorkspaceRole.MEMBER);
    
        	// Remove user from workspace
        	memberRole.removeUser(request.getUser(), userToRemove); 
        }
    
End of the source code.
Changing Member Role

Example Example

  1. private void ChangeMemberRole(IPortalComponentRequest request, Object userToChange)
        {
        	// Change member role to manager
        	IMemberList memberlist = accessingWorkspaceMemberList(request);
    
        	// Retrieve list of members
        	IRole memberRole = memberlist.getRole(WorkspaceRole.MEMBER);
    
        	// Remove user from workspace
        	memberRole.removeUser(request.getUser(), userToChange);  
    
        	// Retrieve list of managers
        	IRole managerRole = memberlist.getRole(WorkspaceRole.MANAGER);
    
        	// Adds user as manager
        	managerRole.addUser(request.getUser(), userToChange);       	
        }
    
End of the source code.
Changing Workspace Ownership

Example Example

  1. private void changeWorkspaceOwnership(IPortalComponentRequest request, Object newOwner)
        {
        	IMemberList memberlist = accessingWorkspaceMemberList(request);
    
        	memberlist.setOwner(request.getUser(), newOwner);
        }
    
End of the source code.