Interface SpaceService


public interface SpaceService
Provides methods to work with Space.
Since:
Aug 29, 2008
  • Method Details

    • getSpaceByDisplayName

      default Space getSpaceByDisplayName(String spaceDisplayName)
      Gets a space by its display name.
      Parameters:
      spaceDisplayName - The space display name.
      Returns:
      The space.
      Since:
      1.2.0-GA
      eXo level API
      Platform
    • getSpaceByPrettyName

      default Space getSpaceByPrettyName(String spacePrettyName)
      Gets a space by its pretty name.
      Parameters:
      spacePrettyName - The space's pretty name.
      Returns:
      The space.
      Since:
      1.2.0-GA
      eXo level API
      Platform
    • getSpaceByGroupId

      default Space getSpaceByGroupId(String groupId)
      Gets a space by its group Id.
      Parameters:
      groupId - The group Id.
      Returns:
      The space.
      Since:
      1.2.0-GA
      eXo level API
      Platform
    • getSpaceById

      default Space getSpaceById(String spaceId)
      Gets a space by its Id.
      Parameters:
      spaceId - Id of the space.
      Returns:
      The space.
      Since:
      1.2.0-GA
      eXo level API
      Platform
    • getSpaceByUrl

      default Space getSpaceByUrl(String spaceUrl)
      Gets a space by its URL.
      Parameters:
      spaceUrl - URL of the space.
      Returns:
      The space.
      Since:
      1.2.0-GA
      eXo level API
      Platform
    • getAllSpacesWithListAccess

      default org.exoplatform.commons.utils.ListAccess<Space> getAllSpacesWithListAccess()
      Gets a list access that contains all spaces.
      Returns:
      The list access.
      Since:
      1.2.0-GA
      eXo level API
      Platform
    • getAllSpacesByFilter

      default org.exoplatform.commons.utils.ListAccess<Space> getAllSpacesByFilter(SpaceFilter spaceFilter)
      Gets a list access that contains all spaces matching with a filter.
      Parameters:
      spaceFilter - The space filter.
      Returns:
      The list access.
      Since:
      1.2.0-GA
      eXo level API
      Platform
    • getManagerSpaces

      default org.exoplatform.commons.utils.ListAccess<Space> getManagerSpaces(String username)
      Gets a list access containing all spaces that a user has the "manager" role.
      Parameters:
      username - The remote user Id.
      Returns:
      The list access.
      eXo level API
      Platform
    • getManagerSpacesByFilter

      default org.exoplatform.commons.utils.ListAccess<Space> getManagerSpacesByFilter(String username, SpaceFilter spaceFilter)
      Gets a list access containing all spaces that a user has the "manager" role. This list access matches with the provided space filter.
      Parameters:
      username - The remote user Id.
      spaceFilter - The space filter.
      Returns:
      The list access.
      eXo level API
      Platform
    • getMemberSpaces

      default org.exoplatform.commons.utils.ListAccess<Space> getMemberSpaces(String username)
      Gets a list access containing all spaces that a user has the "member" role.
      Parameters:
      username - The remote user Id.
      Returns:
      The list access.
      Since:
      1.2.0-GA
      eXo level API
      Platform
    • getMemberSpacesByFilter

      default org.exoplatform.commons.utils.ListAccess<Space> getMemberSpacesByFilter(String username, SpaceFilter spaceFilter)
      Gets a list access containing all spaces that a user has the "member" role. This list access matches with the provided space filter.
      Parameters:
      username - The remote user Id.
      spaceFilter - The space filter.
      Returns:
      The list access.
      Since:
      1.2.0-GA
      eXo level API
      Platform
    • getFavoriteSpacesByFilter

      default org.exoplatform.commons.utils.ListAccess<Space> getFavoriteSpacesByFilter(String username, SpaceFilter spaceFilter)
      Gets a list of favorite spaces of a user. This list access matches with the provided space filter.
      Parameters:
      username - The remote Id of user
      spaceFilter - SpaceFilter used to filter on spaces
      Returns:
      ListAccess of Space marked as favorite of user
      Since:
      Meeds 1.4.0
    • getAccessibleSpacesWithListAccess

      default org.exoplatform.commons.utils.ListAccess<Space> getAccessibleSpacesWithListAccess(String username)
      Gets a list access containing all spaces that a user has the access permission.
      Parameters:
      username - The remote user Id.
      Returns:
      The space list access.
      Since:
      1.2.0-GA
      eXo level API
      Platform
    • getAccessibleSpacesByFilter

      default org.exoplatform.commons.utils.ListAccess<Space> getAccessibleSpacesByFilter(String username, SpaceFilter spaceFilter)
      Gets a list access containing all spaces that a user has the access permission. This list access matches with the provided space filter.
      Parameters:
      username - The remote user Id.
      spaceFilter - The provided space filter.
      Returns:
      The list access.
      Since:
      1.2.0-GA
      eXo level API
      Platform
    • getInvitedSpacesWithListAccess

      default org.exoplatform.commons.utils.ListAccess<Space> getInvitedSpacesWithListAccess(String username)
      Gets a list access containing all spaces that a user is invited to join.
      Parameters:
      username - The remote user Id.
      Returns:
      The list access.
      Since:
      1.2.0-GA
      eXo level API
      Platform
    • getInvitedSpacesByFilter

      default org.exoplatform.commons.utils.ListAccess<Space> getInvitedSpacesByFilter(String username, SpaceFilter spaceFilter)
      Gets a list access containing all spaces that a user is invited to join. This list access matches with the provided space filter.
      Parameters:
      username - The remote user Id.
      spaceFilter - The provided space filter.
      Returns:
      The list access.
      Since:
      1.2.0-GA
      eXo level API
      Platform
    • getPendingSpacesWithListAccess

      default org.exoplatform.commons.utils.ListAccess<Space> getPendingSpacesWithListAccess(String username)
      Gets a list access containing all spaces that a user sent a request for joining a space.
      Parameters:
      username - The remote user Id.
      Returns:
      The list access.
      Since:
      1.2.0-GA
      eXo level API
      Platform
    • getPendingSpacesByFilter

      default org.exoplatform.commons.utils.ListAccess<Space> getPendingSpacesByFilter(String username, SpaceFilter spaceFilter)
      Gets a list access containing all spaces that a user sent a request for joining a space. This list access matches with the provided space filter.
      Parameters:
      username - The remote user Id.
      spaceFilter - The provided space filter.
      Returns:
      The list access.
      Since:
      1.2.0-GA
      eXo level API
      Platform
    • createSpace

      default Space createSpace(Space space, String creatorUsername)
      Creates a new space: creating a group, its group navigation with pages for installing space applications.
      Parameters:
      space - The space to be created.
      creatorUsername - The remote user Id.
      Returns:
      The created space.
      eXo level API
      Platform
    • updateSpace

      default Space updateSpace(Space existingSpace, List<Identity> identitiesToInvite)
      Updates information of a space and invites all users from identitiesToInvite to join this space.
      Parameters:
      existingSpace - The existing space to be updated.
      identitiesToInvite - The list of identities who are invited to join the space. Identity could be of type user or space
      Returns:
      updated space entity
    • updateSpace

      default Space updateSpace(Space existingSpace)
      Updates information of a space.
      Parameters:
      existingSpace - The existing space to be updated.
      Returns:
      The updated space.
      Since:
      1.2.0-GA
      eXo level API
      Platform
    • updateSpaceAvatar

      default Space updateSpaceAvatar(Space existingSpace, String username)
      Updates a space's avatar.
      Parameters:
      existingSpace - The existing space to be updated.
      username - user making the modification
      Returns:
      The updated space.
      Since:
      1.2.0-GA
      eXo level API
      Platform
    • updateSpaceBanner

      default Space updateSpaceBanner(Space existingSpace, String username)
      Updates a space's avatar.
      Parameters:
      existingSpace - The existing space to be updated.
      username - user making the modification
      Returns:
      The updated space.
      Since:
      1.2.0-GA
      eXo level API
      Platform
    • deleteSpace

      default void deleteSpace(Space space) throws SpaceException
      Deletes a space. When a space is deleted, all of its page navigations and its group will be deleted.
      Parameters:
      space - The space to be deleted.
      Throws:
      SpaceException - when the space can't be deleted
    • deleteSpace

      default void deleteSpace(Space space, boolean deleteGroup) throws SpaceException
      Deletes a space without deleting the user's group. When a space is deleted, all of its page navigations and its group will be deleted.
      Parameters:
      space - The space to be deleted.
      Throws:
      SpaceException - when the space can't be deleted
    • addPendingUser

      default void addPendingUser(Space space, String username)
      Adds a user to the list of pending requests for joining a space.
      Parameters:
      space - The exising space.
      username - The remote user Id.
      Since:
      1.2.0-GA
      eXo level API
      Platform
    • removePendingUser

      default void removePendingUser(Space space, String username)
      Removes a user from a list of pending requests for joining a space.
      Parameters:
      space - The existing space.
      username - The remote user Id.
      Since:
      1.2.0-GA
      eXo level API
      Platform
    • isPendingUser

      default boolean isPendingUser(Space space, String username)
      Checks if a user is in the list of pending requests for joining a space.
      Parameters:
      space - The existing space.
      username - The remote user Id.
      Returns:
      TRUE if the user request is pending. Otherwise, it is FALSE.
      Since:
      1.2.0-GA
      eXo level API
      Platform
    • addInvitedUser

      default void addInvitedUser(Space space, String username)
      Adds a user to the list of users who are invited to join a space.
      Parameters:
      space - The existing space.
      username - The remote user Id.
      Since:
      1.2.0-GA
      eXo level API
      Platform
    • removeInvitedUser

      default void removeInvitedUser(Space space, String username)
      Removes a user from the list of users who are invited to join a space.
      Parameters:
      space - The existing space.
      username - The remote user Id.
      Since:
      1.2.0-GA
      eXo level API
      Platform
    • isInvitedUser

      default boolean isInvitedUser(Space space, String username)
      Checks if a user is in the list of users who are invited to join a space.
      Parameters:
      space - The existing space.
      username - The remote user Id.
      Returns:
      TRUE if the user is in the list of invited users. Otherwise, it is FALSE.
      Since:
      1.2.0-GA
      eXo level API
      Platform
    • addMember

      default void addMember(Space space, String username)
      Adds a user to a space. The user will get the "member" role in a space.
      Parameters:
      space - The existing space.
      username - The remote user Id.
      eXo level API
      Platform
    • removeMember

      default void removeMember(Space space, String username)
      Removes a member from a space.
      Parameters:
      space - The existing space.
      username - The remote user Id.
      eXo level API
      Platform
    • isMember

      default boolean isMember(Space space, String username)
      Checks if a given user is member of space or not.
      Parameters:
      space - The existing space.
      username - The remote user Id.
      Returns:
      TRUE if the user is member. Otherwise, it is FALSE.
      eXo level API
      Platform
    • addRedactor

      default void addRedactor(Space space, String username)
      Assigns the "redactor" role to a user in a space.
      Parameters:
      space - The space that its user is assigned to redactor.
      username - The remote user Id.
      eXo level API
      Platform
    • removeRedactor

      default void removeRedactor(Space space, String username)
      Removes the "redactor" role of a user in a space.
      Parameters:
      space - The space that its user is assigned to redactor.
      username - The remote user Id.
      eXo level API
      Platform
    • isRedactor

      default boolean isRedactor(Space space, String username)
      Checks if a given user has the "redactor" role in a space.
      Parameters:
      space - The space that its user is checked if he has the "redactor" role or not.
      username - The remote user Id.
      Returns:
      "True" if the user has the "redactor" role. Otherwise, it returns "false".
      eXo level API
      Platform
    • addPublisher

      default void addPublisher(Space space, String username)
      Assigns the "publisher" role to a user in a space.
      Parameters:
      space - The space that its user is assigned to publisher.
      username - The remote user Id.
      eXo level API
      Platform
    • removePublisher

      default void removePublisher(Space space, String username)
      Removes the "publisher" role of a user in a space.
      Parameters:
      space - The space that its user is assigned to publisher.
      username - The remote user Id.
      eXo level API
      Platform
    • isPublisher

      default boolean isPublisher(Space space, String username)
      Checks if a given user has the "publisher" role in a space.
      Parameters:
      space - The space that its user is checked if he has the "publisher" role or not.
      username - The remote user Id.
      Returns:
      "True" if the user has the "publisher" role. Otherwise, it returns "false".
      eXo level API
      Platform
    • hasRedactor

      default boolean hasRedactor(Space space)
      Checks if a given space has at least one "redactor"
      Parameters:
      space - The space that its user is checked if he has the "redactor" role or not.
      Returns:
      true if the user has a "redactor" role into it
    • canRedactOnSpace

      default boolean canRedactOnSpace(Space space, org.exoplatform.services.security.Identity viewer)
      checks whether the user can add content on space or not
      Parameters:
      space - Space
      viewer - Identity
      Returns:
      true if can add content, else false
    • canRedactOnSpace

      default boolean canRedactOnSpace(Space space, String username)
      checks whether the user can add content on space or not
      Parameters:
      space - Space
      username -
      Returns:
      true if can add content, else false
    • canPublishOnSpace

      default boolean canPublishOnSpace(Space space, String username)
      checks whether the user can publish content in a space or not
      Parameters:
      space - Space
      username -
      Returns:
      true if can publish content, else false
    • canManageSpace

      default boolean canManageSpace(Space space, String username)
      checks whether the user can manage the space or not
      Parameters:
      space - Space
      username -
      Returns:
      true if can manage the space, else false
    • canViewSpace

      default boolean canViewSpace(Space space, String username)
      checks whether the user can view the space or not
      Parameters:
      space - Space
      username -
      Returns:
      true if can view the space, else false
    • canAccessSpacePublicSite

      default boolean canAccessSpacePublicSite(Space space, String username)
      Checks whether the user can access Space Public Site or not
      Parameters:
      space - Space
      username - User name identifier
      Returns:
      true if can access sitch Space Settings else false
    • setManager

      default void setManager(Space space, String username, boolean isManager)
      Assigns the "manager" role to a user in a space.
      Parameters:
      space - The space that its user is assigned to manager.
      username - The remote user Id.
      isManager - "True" if the user gets the "manager" role. "False" if the user only gets the "member" role.
      Since:
      1.2.0-GA
      eXo level API
      Platform
    • isManager

      default boolean isManager(Space space, String username)
      Checks if a given user has the "manager" role in a space.
      Parameters:
      space - The space that its user is checked if he has the "manager" role or not.
      username - The remote user Id.
      Returns:
      "True" if the user has the "manager" role. Otherwise, it returns "false".
      Since:
      1.2.0-GA
      eXo level API
      Platform
    • isOnlyManager

      default boolean isOnlyManager(Space space, String username)
      Checks if a given user is the only one who has the "manager" role in a space.
      Parameters:
      space - The space that its user is checked if he is the only manager or not.
      username - The remote user Id.
      Returns:
      "True" if the user Id is the only one who has "manager" role in the space. Otherwise, it returns "false".
      Since:
      1.2.0-GA
      eXo level API
      Platform
    • hasAccessPermission

      default boolean hasAccessPermission(Space space, String username)
      Checks if a given user can access a space or not.
      Parameters:
      space - The space that its user is checked if he can access it.
      username - The remote user Id.
      Returns:
      "True" if the access permission is allowed. Otherwise, it returns "false".
    • hasSettingPermission

      default boolean hasSettingPermission(Space space, String username)
      Checks if a given user has the setting permission to a space or not.
      Parameters:
      space - The space that its user is checked if he has the setting permission or not.
      username - The remote user Id.
      Returns:
      If the user is root or the space's member, "true" is returned. Otherwise, it returns "false".
      Since:
      1.2.0-GA
      eXo level API
      Platform
    • registerSpaceListenerPlugin

      default void registerSpaceListenerPlugin(SpaceListenerPlugin spaceListenerPlugin)
      Registers a space listener plugin to listen to space lifecyle events: creating, updating, installing an application, and more.
      Parameters:
      spaceListenerPlugin - The space listener plugin to be registered.
      Since:
      1.2.0-GA
      eXo level API
      Platform
    • unregisterSpaceListenerPlugin

      default void unregisterSpaceListenerPlugin(SpaceListenerPlugin spaceListenerPlugin)
      Unregisters an existing space listener plugin.
      Parameters:
      spaceListenerPlugin - The space listener plugin to be unregistered.
      Since:
      1.2.0-GA
      eXo level API
      Platform
    • getVisibleSpacesWithListAccess

      default org.exoplatform.commons.utils.ListAccess<Space> getVisibleSpacesWithListAccess(String username, SpaceFilter spaceFilter)
      Gets spaces that a given user can see.
      Parameters:
      username - Id of the user.
      spaceFilter - The condition by which spaces are filtered.
      Returns:
      The list of spaces.
      Since:
      1.2.5-GA
      eXo level API
      Platform
    • createSpace

      default Space createSpace(Space space, String creator, List<Identity> identitiesToInvite) throws SpaceException
      Creates a new space and invites all users from identitiesToInvite to join this newly created space.
      Parameters:
      space - The space to be created.
      creator - The user who creates the space.
      identitiesToInvite - The list of identities who are invited to join the space. Identity could be of type user or space
      Returns:
      The space.
      Throws:
      SpaceException - with possible code SpaceException.Code.SPACE_ALREADY_EXIST; UNABLE_TO_ADD_CREATOR
    • createSpace

      default void createSpace(Space space)
      Saves a new space or updates a space.
      Parameters:
      space - The space to be saved or updated.
    • renameSpace

      default void renameSpace(Space space, String newDisplayName)
      Renames a space.
      Parameters:
      space - The space to be renamed.
      newDisplayName - New name of the space.
    • renameSpace

      default void renameSpace(Space space, String newDisplayName, String username) throws SpaceException
      Renames a space by an identity who has rights of super admin.
      Parameters:
      space - The space to be renamed.
      newDisplayName - New name of the space.
      username - The identity who has renamed a space.
      Throws:
      SpaceException
      Since:
      4.0.0
      eXo level API
      Platform
    • deleteSpace

      default void deleteSpace(String spaceId) throws SpaceException
      Deletes a space by its Id.
      Parameters:
      spaceId - Id of the deleted space.
      Throws:
      SpaceException
    • addMember

      default void addMember(String spaceId, String username)
      Adds a user to space as "member".
      Parameters:
      spaceId - Id of the space.
      username - Id of the user (remoteId).
    • removeMember

      default void removeMember(String spaceId, String username)
      Removes a member from space.
      Parameters:
      spaceId - Id of the space.
      username - Id of the user (remoteId).
    • isMember

      default boolean isMember(String spaceId, String username)
      Checks if a given user is space member or not.
      Parameters:
      spaceId - Id of the space.
      username - Id of user (remoteId).
      Returns:
      "True" if the user is space member. Otherwise, it returns "false".
    • isIgnored

      default boolean isIgnored(Space space, String username)
      Checks if a user is in the list of users who have ignored the space.
      Parameters:
      space - The existing space.
      username - The remote user Id.
      Returns:
      TRUE if the space is an ignored space. Otherwise, it is FALSE.
    • setIgnored

      default void setIgnored(String spaceId, String username)
      Assigns the user who has ignored the space.
      Parameters:
      spaceId - The Id of the space ignored by the user.
      username - The remote user Id.
    • restoreSpacePageLayout

      @Deprecated(since="7.0", forRemoval=true) default void restoreSpacePageLayout(String spaceId, String appId, org.exoplatform.services.security.Identity identity) throws IllegalAccessException, SpaceException
      Deprecated, for removal: This API element is subject to removal in a future version.
      Will be removed when the Meeds-io/MIPs#150 get implemented with new way of Layout management
      Restores a page layout to its default associated to Space Template
      Parameters:
      spaceId - Space technical identifier
      appId - Id of the installed application or can be 'home' to designate the space home page
      identity - user Identity making the change
      Throws:
      IllegalAccessException - when current user doesn't have permission to manage spaces
      SpaceException - when error reading Space identified by its id
    • installApplication

      @Deprecated(since="7.0", forRemoval=true) default void installApplication(Space space, String appId) throws SpaceException
      Deprecated, for removal: This API element is subject to removal in a future version.
      the spaces pages aren't managed through applications anymore, thus this operation isn't needed anymore
      Installs an application in a space.
      Parameters:
      space - The space that the application is installed.
      appId - Id of the installed application.
      Throws:
      SpaceException - with code SpaceException.Code.ERROR_DATA_STORE
      eXo level API
      Platform
    • activateApplication

      @Deprecated(since="7.0", forRemoval=true) default void activateApplication(Space space, String appId) throws SpaceException
      Deprecated, for removal: This API element is subject to removal in a future version.
      the spaces pages aren't managed through applications anymore, thus this operation isn't needed anymore
      Activates an installed application in a space.
      Parameters:
      space - The space that the installed application is activated.
      appId - Id of the installed application.
      Throws:
      SpaceException - with possible code: SpaceException.Code.UNABLE_TO_ADD_APPLICATION, SpaceExeption.Code.ERROR_DATA_STORE
      eXo level API
      Platform
    • activateApplication

      @Deprecated(since="7.0", forRemoval=true) default void activateApplication(String spaceId, String appId) throws SpaceException
      Deprecated, for removal: This API element is subject to removal in a future version.
      the spaces pages aren't managed through applications anymore, thus this operation isn't needed anymore
      Activates an installed application in a space.
      Parameters:
      spaceId - Id of the space that the installed application is activated.
      appId - Id of the installed application.
      Throws:
      SpaceException - with possible code: SpaceException.Code.UNABLE_TO_ADD_APPLICATION, SpaceExeption.Code.ERROR_DATA_STORE
      eXo level API
      Platform
    • deactivateApplication

      @Deprecated(since="7.0", forRemoval=true) default void deactivateApplication(Space space, String appId) throws SpaceException
      Deprecated, for removal: This API element is subject to removal in a future version.
      the spaces pages aren't managed through applications anymore, thus this operation isn't needed anymore
      Deactivates an installed application in a space.
      Parameters:
      space - The space that the installed application is deactivated.
      appId - Id of the installed application.
      Throws:
      SpaceException
      eXo level API
      Platform
    • deactivateApplication

      @Deprecated(since="7.0", forRemoval=true) default void deactivateApplication(String spaceId, String appId) throws SpaceException
      Deprecated, for removal: This API element is subject to removal in a future version.
      the spaces pages aren't managed through applications anymore, thus this operation isn't needed anymore
      Deactivates an installed application in a space.
      Parameters:
      spaceId - Id of the space that the installed application is deactivated.
      appId - Id of the installed application.
      Throws:
      SpaceException
      eXo level API
      Platform
    • removeApplication

      @Deprecated(since="7.0", forRemoval=true) default void removeApplication(Space space, String appId, String appName) throws SpaceException
      Deprecated, for removal: This API element is subject to removal in a future version.
      the spaces pages aren't managed through applications anymore, thus this operation isn't needed anymore
      Removes an installed application from a space.
      Parameters:
      space - The space that the installed application is removed.
      appId - Id of the installed application.
      Throws:
      SpaceException
      eXo level API
      Platform
    • moveApplication

      @Deprecated(since="7.0", forRemoval=true) default void moveApplication(String spaceId, String appId, int transition) throws SpaceException
      Deprecated, for removal: This API element is subject to removal in a future version.
      Parameters:
      spaceId - technical id of the space
      appId - application identifier
      transition - how much levels to move up or down an application
      Throws:
      SpaceException
    • removeApplication

      @Deprecated(since="7.0", forRemoval=true) default void removeApplication(String spaceId, String appId, String appName) throws SpaceException
      Deprecated, for removal: This API element is subject to removal in a future version.
      the spaces pages aren't managed through applications anymore, thus this operation isn't needed anymore
      Removes an installed application from a space.
      Parameters:
      spaceId - Id of the space that the installed application is removed.
      appId - Id of the installed application.
      Throws:
      SpaceException
      eXo level API
      Platform
    • updateSpaceAccessed

      default void updateSpaceAccessed(String remoteId, Space space)
      Updates the most recently accessed space of a user to the top of spaces list.
      Parameters:
      remoteId - The remote Id of the user.
      space - The last accessed space of the user.
    • getLastSpaces

      default List<Space> getLastSpaces(int limit)
      Gets the last spaces that have been created.
      Parameters:
      limit - the limit of spaces to provide.
      Returns:
      The last spaces.
      Since:
      4.0.x
      eXo level API
      Experimental
    • getLastAccessedSpace

      default org.exoplatform.commons.utils.ListAccess<Space> getLastAccessedSpace(String remoteId)
      Gets a list of the most recently accessed spaces of a user.
      Parameters:
      remoteId - The remote Id of a user.
      eXo level API
      Platform
    • registerSpaceLifeCycleListener

      default void registerSpaceLifeCycleListener(SpaceLifeCycleListener listener)
      Registers a space lifecycle listener.
      Parameters:
      listener - The space lifecycle listener to be registered.
    • unregisterSpaceLifeCycleListener

      default void unregisterSpaceLifeCycleListener(SpaceLifeCycleListener listener)
      Unregisters a space lifecycle listener.
      Parameters:
      listener - The space lifecycle listener to be unregistered.
    • getVisitedSpaces

      default org.exoplatform.commons.utils.ListAccess<Space> getVisitedSpaces(String remoteId)
      Gets the list of spaces which are visited by users
      Parameters:
      remoteId -
      Returns:
    • isSuperManager

      default boolean isSuperManager(String username)
      Checks if the user is a super manager of all spaces
      Parameters:
      username - user name
      Returns:
      true if the user is member of super administrators groups, else false
    • isContentManager

      default boolean isContentManager(String username)
      Checks if the user is a content manager of all spaces
      Parameters:
      username - user name
      Returns:
      true if the user is a content manager
    • isContentPublisher

      default boolean isContentPublisher(String username)
      Checks if the user is a content publisher of all spaces
      Parameters:
      username - user name
      Returns:
      true if the user is a content publisher
    • inviteIdentities

      default void inviteIdentities(Space space, List<Identity> identitiesToInvite)
      Invites users or members of spaces identified by identities list into a a designated space
      Parameters:
      space - target Space to invite identites
      identitiesToInvite - List of Identity (space or user) to invite
    • isSpaceContainsExternals

      default boolean isSpaceContainsExternals(Long spaceId)
      Checks if a specific space contains external users
      Parameters:
      spaceId -
      Returns:
      true if the space contains external users
    • getPendingSpaceRequestsToManage

      default org.exoplatform.commons.utils.ListAccess<Space> getPendingSpaceRequestsToManage(String remoteId)
      Retrieves the list of pending 'requests to join' a space that the user manages
      Parameters:
      remoteId -
      Returns:
      ListAccess of Space with pending users requesting to join spaces that the designated user manages
    • findSpaceExternalInvitationsBySpaceId

      default List<SpaceExternalInvitation> findSpaceExternalInvitationsBySpaceId(String spaceId)
      Returns:
      a list of external invitations in space
    • saveSpaceExternalInvitation

      default void saveSpaceExternalInvitation(String spaceId, String email, String tokenId)
      Add an external invitation to space
      Parameters:
      spaceId -
      email -
      tokenId -
    • getSpaceExternalInvitationById

      default SpaceExternalInvitation getSpaceExternalInvitationById(String invitationId)
      Gets a Space external invitation by its Id.
      Parameters:
      invitationId -
    • deleteSpaceExternalInvitation

      default void deleteSpaceExternalInvitation(String invitationId)
      delete an external invitation from a space
      Parameters:
      invitationId -
    • findExternalInvitationsSpacesByEmail

      default List<String> findExternalInvitationsSpacesByEmail(String email)
      Parameters:
      email -
      Returns:
      a list of spaces ids by external email
    • deleteExternalUserInvitations

      default void deleteExternalUserInvitations(String email)
      delete external invitations
      Parameters:
      email -
    • getCommonSpaces

      default org.exoplatform.commons.utils.ListAccess<Space> getCommonSpaces(String username, String otherUsername)
      Gets a list access containing all common spaces between two users
      Parameters:
      username - current user id
      otherUsername - visited profile user id
      Returns:
      list of common spaces between two users in param
    • getMemberSpacesIds

      default List<String> getMemberSpacesIds(String username, int offset, int limit)
      Gets a List of Space technical identifiers where the user has the "member" role.
      Parameters:
      username - The remote user Id.
      offset - The starting point
      limit - The limitation of returned results
      Returns:
      List of Space technical identifiers
    • getManagerSpacesIds

      default List<String> getManagerSpacesIds(String username, int offset, int limit)
      Gets a List of Space technical identifiers where the user has the "manager" role.
      Parameters:
      username - The remote user Id.
      offset - The starting point
      limit - The limitation of returned results
      Returns:
      List of Space technical identifiers
    • getSpaceMembershipDate

      default Instant getSpaceMembershipDate(long spaceId, String username)
      Retrieves the Space Membership date
      Parameters:
      spaceId - Space technical id
      username - User name (identifier)
      Returns:
      Instant corresponding to the creation date of the membership
    • saveSpacePublicSite

      default void saveSpacePublicSite(String spaceId, String publicSiteVisibility, String username) throws org.exoplatform.commons.exception.ObjectNotFoundException, IllegalAccessException
      Saves the space public site characteristics
      Parameters:
      spaceId -
      publicSiteVisibility - Visibility of public site, possible values: manager, member, internal, authenticated or everyone.
      username - user identifier who's making the operation
      Throws:
      IllegalAccessException - when
      org.exoplatform.commons.exception.ObjectNotFoundException
    • saveSpacePublicSite

      default void saveSpacePublicSite(Space space, String publicSiteVisibility)
      Saves the space public site characteristics
      Parameters:
      space - Space
      publicSiteVisibility - Visibility of public site, possible values: manager, member, internal, authenticated or everyone.
    • getSpacePublicSiteName

      default String getSpacePublicSiteName(Space space)
      Parameters:
      space - Space
      Returns:
      Public site name if exists, else null