Class RestRepositoryService

  • All Implemented Interfaces:
    org.exoplatform.services.rest.resource.ResourceContainer

    public class RestRepositoryService
    extends Object
    implements org.exoplatform.services.rest.resource.ResourceContainer
    Created by The eXo Platform SAS. RestRepositoryService is a RESTfull service allowing to manage the repositories.
    Version:
    $Id: NamesList.java 111 2008-11-11 11:11:11Z rainf0x $
    Author:
    Alex Reshetnyak
    • Constructor Summary

      Constructors 
      Constructor Description
      RestRepositoryService​(org.exoplatform.services.jcr.RepositoryService repositoryService)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      javax.ws.rs.core.Response createRepository​(javax.ws.rs.core.UriInfo uriInfo, org.exoplatform.services.jcr.config.RepositoryEntry newRepository)
      Creates a repository based on the given repository configuration
      javax.ws.rs.core.Response createWorkspace​(javax.ws.rs.core.UriInfo uriInfo, String repositoryName, org.exoplatform.services.jcr.config.WorkspaceEntry newWorkspace)
      Adds a new workspace based on the given configuration to the given repository.
      javax.ws.rs.core.Response getDefaultWorkspaceConfig​(String repositoryName)
      Gives the configuration of the default workspace of the given repository
      javax.ws.rs.core.Response getRepositoryNames()
      Gives the name of all the existing repositories.
      javax.ws.rs.core.Response getRepositoryServiceConfiguration()
      Gives the repository service configuration which is composed of the configuration of all the repositories and workspaces
      javax.ws.rs.core.Response getWorkspaceNames​(String repositoryName)
      Gives the name of all the existing workspaces for a given repository.
      javax.ws.rs.core.Response removeRepository​(javax.ws.rs.core.UriInfo uriInfo, String repositoryName, Boolean forseSessionClose)
      Removes an existing repository
      javax.ws.rs.core.Response removeWorkspace​(javax.ws.rs.core.UriInfo uriInfo, String repositoryName, String workspaceName, Boolean forseSessionClose)
      Removes an existing workspace from a given repository.
      javax.ws.rs.core.Response updateWorkspaceConfiguration​(String repositoryName, String workspaceName, org.exoplatform.services.jcr.config.WorkspaceEntry workspaceEntry)
      Updates the configuration of a given workspace.
    • Constructor Detail

      • RestRepositoryService

        public RestRepositoryService​(org.exoplatform.services.jcr.RepositoryService repositoryService)
        Parameters:
        repositoryService -
    • Method Detail

      • getRepositoryServiceConfiguration

        @RolesAllowed("administrators")
        public javax.ws.rs.core.Response getRepositoryServiceConfiguration()
        Gives the repository service configuration which is composed of the configuration of all the repositories and workspaces
        Returns:
        Response return the Response with RepositoryServiceConf
        eXo level API
        Experimental
        eXo response for generated doc on REST API
        {code:json} {"repositoryEntry": the configuration of the repository } {code}
      • getDefaultWorkspaceConfig

        @RolesAllowed("administrators")
        public javax.ws.rs.core.Response getDefaultWorkspaceConfig​(String repositoryName)
        Gives the configuration of the default workspace of the given repository
        Parameters:
        repositoryName - the name of the repository
        Returns:
        Response return the Response with WorkspaceEntry
        eXo level API
        Experimental
        eXo response for generated doc on REST API
        {code:json} {"workspaceEntry" : the configuration of the default workspace } {code}
      • createRepository

        @RolesAllowed("administrators")
        public javax.ws.rs.core.Response createRepository​(@Context
                                                          javax.ws.rs.core.UriInfo uriInfo,
                                                          org.exoplatform.services.jcr.config.RepositoryEntry newRepository)
                                                   throws URISyntaxException
        Creates a repository based on the given repository configuration
        Parameters:
        uriInfo - the uri location
        newRepository - the configuration of the new repository
        Returns:
        Response return the Response
        Throws:
        URISyntaxException - will be generated the URISyntaxException
        eXo level API
        Experimental
        eXo anchor for generated doc on REST API
        {code:json} {"newRepository": the configuration of the new repository } {code}
      • createWorkspace

        @RolesAllowed("administrators")
        public javax.ws.rs.core.Response createWorkspace​(@Context
                                                         javax.ws.rs.core.UriInfo uriInfo,
                                                         String repositoryName,
                                                         org.exoplatform.services.jcr.config.WorkspaceEntry newWorkspace)
                                                  throws URISyntaxException
        Adds a new workspace based on the given configuration to the given repository.
        Parameters:
        uriInfo - the uri location
        repositoryName - the name of the repository
        newWorkspace - the configuration of the new workspace
        Returns:
        Response return the Response
        Throws:
        URISyntaxException - will be generated the URISyntaxException
        eXo level API
        Experimental
        eXo anchor for generated doc on REST API
        {code:json} {"newWorkspace" : the configuration of the new workspace} {code}
      • removeRepository

        @RolesAllowed("administrators")
        public javax.ws.rs.core.Response removeRepository​(@Context
                                                          javax.ws.rs.core.UriInfo uriInfo,
                                                          String repositoryName,
                                                          Boolean forseSessionClose)
        Removes an existing repository
        Parameters:
        uriInfo - the uri location
        repositoryName - the name of the repository
        forseSessionClose - a flag indicating whether or not the current sessions must be closed
        Returns:
        Response return the Response
        eXo level API
        Experimental
      • removeWorkspace

        @RolesAllowed("administrators")
        public javax.ws.rs.core.Response removeWorkspace​(@Context
                                                         javax.ws.rs.core.UriInfo uriInfo,
                                                         String repositoryName,
                                                         String workspaceName,
                                                         Boolean forseSessionClose)
        Removes an existing workspace from a given repository.
        Parameters:
        uriInfo - the uri location
        repositoryName - the name of the repository
        workspaceName - the name of the workspace
        forseSessionClose - a flag indicating whether or not the current sessions must be closed
        Returns:
        Response return the Response
        eXo level API
        Experimental
      • getRepositoryNames

        @RolesAllowed("administrators")
        public javax.ws.rs.core.Response getRepositoryNames()
        Gives the name of all the existing repositories.
        Returns:
        Response return the Response with list of repository names
        eXo level API
        Experimental
        eXo response for generated doc on REST API
        {code:json} {"names" : the name of all the existing repositories } {code}
      • getWorkspaceNames

        @RolesAllowed("administrators")
        public javax.ws.rs.core.Response getWorkspaceNames​(String repositoryName)
        Gives the name of all the existing workspaces for a given repository.
        Parameters:
        repositoryName - the name of the repository
        Returns:
        Response return the Response with list of workspace names
        eXo level API
        Experimental
        eXo response for generated doc on REST API
        {code:json} {"names" : the name of all the existing workspaces for a given repository } {code}
      • updateWorkspaceConfiguration

        @RolesAllowed("administrators")
        public javax.ws.rs.core.Response updateWorkspaceConfiguration​(String repositoryName,
                                                                      String workspaceName,
                                                                      org.exoplatform.services.jcr.config.WorkspaceEntry workspaceEntry)
        Updates the configuration of a given workspace.
        Parameters:
        repositoryName - the name of the repository
        workspaceName - the name of the workspace
        workspaceEntry - the configuration of the workspace
        Returns:
        Response return the Response
        eXo level API
        Unsupported
        eXo anchor for generated doc on REST API
        {code:json} {"workspaceEntry" : the configuration of the workspace} {code}