Class DataContent

  • All Implemented Interfaces:
    DSL<DataContent>

    @Service
    @Scope("prototype")
    public class DataContent
    extends TestData<DataContent>
    Utility for creating files and folders, asserting they exist in repository
    • Constructor Detail

      • DataContent

        public DataContent()
    • Method Detail

      • getContentActions

        public org.alfresco.dataprep.ContentActions getContentActions()
      • createFolder

        public FolderModel createFolder()
        It will create a new folder in current resource FolderModel newRandomFolder = FolderModel.getRandomFolderModel(); dataContent.usingUser(testUser).usingSite(testSite).createFolder(newRandomFolder);
      • createFolder

        public FolderModel createFolder​(FolderModel folderModel)
        This is the entry point of the createFolder() method to make REST API or CMIS call. If the Alfresco version is at least 5.2 then the v1 REST API will be used.
      • createFolder

        public FolderModel createFolder​(FolderModel folderModel,
                                        boolean useV1API)
        Create a folder.
        Parameters:
        folderModel - The folder to create.
        useV1API - If true then the v1 REST API will be used, otherwise CMIS will be used.
        Returns:
        The folder.
      • createFolderV1Api

        public FolderModel createFolderV1Api​(org.alfresco.dataprep.AlfrescoHttpClient client,
                                             FolderModel folderModel,
                                             java.lang.String username,
                                             java.lang.String password)
        It will create a random folder in current resource using REST API dataContent.usingUser(testUser).usingSite(testSite).createFolder();
      • createFolderCmisApi

        public FolderModel createFolderCmisApi​(java.lang.String folderName)
        It will create a random folder in current resource using CMIS dataContent.usingUser(testUser).usingSite(testSite).createFolder();
      • deleteContent

        public void deleteContent()
        Use this to delete the last resource, either file or folder dataContent.usingUser(adminUser).usingSite(siteModel).usingResource(repoFile).deleteContent();
      • deleteContentV1RestApi

        public void deleteContentV1RestApi​(org.alfresco.dataprep.AlfrescoHttpClient client)
        Use this to delete the last resource, either file or folder using V1 RestApi dataContent.usingUser(adminUser).usingSite(siteModel).usingResource(repoFile).deleteContent();
      • deleteContentCmisApi

        public void deleteContentCmisApi()
        Use this to delete the last resource, either file or folder using CmisApi dataContent.usingUser(adminUser).usingSite(siteModel).usingResource(repoFile).deleteContent();
      • renameContent

        public void renameContent​(ContentModel newContent)
        Use this to rename a file or a folder dataContent.usingUser(adminUser).usingSite(siteModel).usingResource(repoFolder).renameContent(newRepoFolder);
        Parameters:
        newContent -
      • addEmailAlias

        public java.lang.String addEmailAlias​(java.lang.String alias)
        Add Email Alias aspect (emailserver:aliasable) dataContent.usingSite(testSite).usingResource(testFolder).addEmailAlias("aliasTas");
        Parameters:
        alias -
        Returns:
      • createContent

        public FileModel createContent()
        It will create a new file in current resource FileModel newRandomFile = FileModel.getRandomFileModel(); dataContent.usingUser(testUser).usingSite(testSite).createContent(newRandomFile);
      • createContent

        public FileModel createContent​(FileModel fileModel)
        This is the entry point of the createContent() method to make REST API or CMIS call
      • createContentV1Api

        public FileModel createContentV1Api​(org.alfresco.dataprep.AlfrescoHttpClient client,
                                            FileModel fileModel)
        Creates a file using REST API Return the FileModel object on success creation
        Parameters:
        client -
        fileModel -
        Returns:
      • updateContent

        public void updateContent​(org.alfresco.dataprep.AlfrescoHttpClient client,
                                  FileModel fileModel)
        This method updates the content of the created document
        Parameters:
        client -
        fileModel -
      • createContentCmisApi

        public FileModel createContentCmisApi​(FileModel fileModel)
                                       throws DataPreparationException
        Creates a random document based on CMISUtil.DocumentType passed using CMIS Return the Document object on success creation dataContent.usingSite(site).createContent(sourceFile);
        Parameters:
        fileModel -
        Returns:
        Throws:
        DataPreparationException
      • createContentDocTypeV1Api

        public FileModel createContentDocTypeV1Api​(org.alfresco.dataprep.AlfrescoHttpClient client,
                                                   FileModel fileModel,
                                                   org.alfresco.dataprep.CMISUtil.DocumentType documentType)
        Creates a random document based on CMISUtil.DocumentType passed using REST API Return the Document object on success creation dataContent.usingUser(userModel).usingResource(myFolder).createContent(DocumentType.TEXT_PLAIN);
        Parameters:
        client -
        fileModel -
        documentType -
        Returns:
        Throws:
        DataPreparationException
      • updateContent

        public void updateContent​(org.alfresco.dataprep.AlfrescoHttpClient client,
                                  FileModel fileModel,
                                  org.alfresco.dataprep.CMISUtil.DocumentType documentType)
        This method updates the content of the created document
        Parameters:
        client -
        fileModel -
        documentType -
      • createContentDocTypeCmisApi

        public FileModel createContentDocTypeCmisApi​(org.alfresco.dataprep.CMISUtil.DocumentType documentType)
                                              throws DataPreparationException
        Creates a random document based on CMISUtil.DocumentType passed using CMIS Return the Document object on success creation dataContent.usingUser(userModel).usingResource(myFolder).createContent(DocumentType.TEXT_PLAIN);
        Parameters:
        documentType -
        Returns:
        Throws:
        DataPreparationException
      • waitUntilContentIsDeleted

        public void waitUntilContentIsDeleted​(java.lang.String fullPath)
      • waitUntilContentIsCreated

        public void waitUntilContentIsCreated​(java.lang.String fullPath)
        Wait and retry for 15 seconds checking if a resource is created
        Parameters:
        fullPath -
      • waitUntilContentIsCreatedInLinux

        public void waitUntilContentIsCreatedInLinux​(java.lang.String fullPath)
        Wait and retry for 15 seconds checking if a resource is created for Linux OS
        Parameters:
        fullPath -
      • deleteSite

        public void deleteSite​(SiteModel site)
        Delete a site
        Parameters:
        site -
      • deleteTree

        public void deleteTree​(FolderModel from)
        Delete parent folder along with all children in it
        Parameters:
        from -
      • setCustomModel

        public void setCustomModel​(java.lang.String localModelXMLFilePath)
        Deploy a custom content model to repository http://docs.alfresco.com/5.1/tasks/deploy-dynamic.html
        Parameters:
        localModelXMLFilePath -
        Throws:
        TestConfigurationException
      • getCustomModel

        public FileModel getCustomModel()
        Returns customModel file is one exists or is deployed using deployContentModel otherwise null
      • getContentStream

        public org.apache.chemistry.opencmis.commons.data.ContentStream getContentStream​(java.lang.String fileName,
                                                                                         java.lang.String content)
        Create a content stream from some content.
        Parameters:
        fileName - A name for the content stream.
        content - The content.
        Returns:
        The stream.
        Throws:
        IORuntimeException - if there is an issue creating the stream.
      • closeContentStream

        public void closeContentStream​(org.apache.chemistry.opencmis.commons.data.ContentStream contentStream)
      • assertContentHasTag

        public void assertContentHasTag​(java.lang.String cmisObjectPath,
                                        TagModel model)
        Verify content has tag
        Parameters:
        cmisObjectPath -
        model -
      • getCMISDocument

        public org.apache.chemistry.opencmis.client.api.Document getCMISDocument​(java.lang.String filePath)
        Get the corresponding CMIS Document Object of a file using only the file path
        Parameters:
        filePath -
        Returns:
        Document
      • getCMISFolder

        public org.apache.chemistry.opencmis.client.api.Folder getCMISFolder​(java.lang.String folderPath)
        Get the corresponding CMIS Folder Object of a file using only the file path
        Parameters:
        filePath -
        Returns:
        Folder
      • addAspect

        public void addAspect​(java.util.List<XMLAspectData> aspects)
        Adding aspects to ContentModels
        Parameters:
        object -
      • assertContentVersionIs

        public void assertContentVersionIs​(java.lang.String version)
        Asserting the version of the content
        Parameters:
        version -
      • assertContentSizeIs

        public void assertContentSizeIs​(long sizeInBytes)
        Asserting the size of the content
        Parameters:
        sizeInBytes - size in bytes
      • checkOutDocument

        public void checkOutDocument()
        Check out document
      • cancelCheckOut

        public void cancelCheckOut()
        Check out document
      • updateContent

        public void updateContent​(java.lang.String newContent)
        Update document content
        Parameters:
        newContent -
      • checkIn

        public void checkIn​(java.lang.String newContent,
                            boolean majorVersion,
                            java.lang.String checkInComment)
        Check in document.
        Parameters:
        newContent -
        majorVersion - true to set major version(e.g. 2.0)
        checkInComment -
      • setInheritPermissions

        public void setInheritPermissions​(boolean inheritPermissions)
      • emptyUserTrashcan

        public void emptyUserTrashcan​(UserModel user)