org.pentaho.platform.api.repository
Interface ISolutionRepositoryService

All Known Implementing Classes:
SolutionRepositoryServiceImpl, SolutionRepositoryServiceImplFast

public interface ISolutionRepositoryService

This interface provides access to high level information about the solution repository in XML format.


Method Summary
 boolean createFolder(IPentahoSession userSession, String solution, String path, String name, String desc)
          This method creates a folder along with it's index.xml file.
 boolean delete(IPentahoSession userSession, String solution, String path, String name)
          This method will delete a file from the ISolutionRepository and respects IPentahoAclEntry.PERM_DELETE.
 String getAclXml(String solution, String path, String filename, IPentahoSession userSession)
           
 Document getSolutionRepositoryDoc(IPentahoSession session, String[] filters)
           
 Document getSolutionRepositoryFileDetails(IPentahoSession session, String fullPath)
          Returns an XML snippet consisting of a single file element.
 void setAcl(String solution, String path, String filename, String strAclXml, IPentahoSession userSession)
           
 

Method Detail

getSolutionRepositoryDoc

Document getSolutionRepositoryDoc(IPentahoSession session,
                                  String[] filters)
                                  throws ParserConfigurationException
Throws:
ParserConfigurationException

getSolutionRepositoryFileDetails

Document getSolutionRepositoryFileDetails(IPentahoSession session,
                                          String fullPath)
                                          throws ParserConfigurationException
Returns an XML snippet consisting of a single file element. The file element is the same as would have been returned by getSolutionRepositoryDoc.

Parameters:
session - current session
Returns:
doc
Throws:
ParserConfigurationException

createFolder

boolean createFolder(IPentahoSession userSession,
                     String solution,
                     String path,
                     String name,
                     String desc)
                     throws IOException
This method creates a folder along with it's index.xml file. This method also verifies that the user has PERM_CREATE permissions before creating the folder.

Parameters:
userSession - the current user
solution - the solution path
path - the folder path
name - the name of the new folder
desc - the description of the new folder
Returns:
true if success
Throws:
IOException

delete

boolean delete(IPentahoSession userSession,
               String solution,
               String path,
               String name)
               throws IOException
This method will delete a file from the ISolutionRepository and respects IPentahoAclEntry.PERM_DELETE.

Parameters:
userSession - An IPentahoSession for the user requesting the delete operation
solution - The name of the solution, such as 'steel-wheels'
path - The path within the solution to the file/folder to be deleted (does not include the file/folder itself)
name - The name of the file or folder which will be deleted in the given solution/path
Returns:
Success of the delete operation is returned
Throws:
IOException

setAcl

void setAcl(String solution,
            String path,
            String filename,
            String strAclXml,
            IPentahoSession userSession)
            throws SolutionRepositoryServiceException,
                   IOException,
                   PentahoAccessControlException
Throws:
SolutionRepositoryServiceException
IOException
PentahoAccessControlException

getAclXml

String getAclXml(String solution,
                 String path,
                 String filename,
                 IPentahoSession userSession)
                 throws SolutionRepositoryServiceException,
                        IOException
Throws:
SolutionRepositoryServiceException
IOException