diff --git a/.gitignore b/.gitignore index 5cd20fa5aa..ff04b28cf1 100644 --- a/.gitignore +++ b/.gitignore @@ -32,3 +32,6 @@ target # virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml hs_err_pid* +alf_data +/src/main/resources/alfresco-global.properties +/src/main/resources/alfresco/extension/custom-log4j.properties diff --git a/pom.xml b/pom.xml index f1290e53d2..804c0f5cd5 100644 --- a/pom.xml +++ b/pom.xml @@ -40,7 +40,7 @@ 6.0 6.13 6.0 - 6.17 + 6.18 6.3 1.0 diff --git a/src/main/java/org/alfresco/opencmis/AlfrescoCmisServiceImpl.java b/src/main/java/org/alfresco/opencmis/AlfrescoCmisServiceImpl.java index 0e01b2d199..6da2629133 100644 --- a/src/main/java/org/alfresco/opencmis/AlfrescoCmisServiceImpl.java +++ b/src/main/java/org/alfresco/opencmis/AlfrescoCmisServiceImpl.java @@ -1283,11 +1283,6 @@ public class AlfrescoCmisServiceImpl extends AbstractCmisService implements Alfr throw new CmisConstraintException("This document type does requires content!"); } - if (docType.isVersionable() && (versioningState == VersioningState.NONE)) - { - throw new CmisConstraintException("This document type is versionable!"); - } - if (!docType.isVersionable() && (versioningState != VersioningState.NONE)) { throw new CmisConstraintException("This document type is not versionable!"); diff --git a/src/main/resources/alfresco-global.properties.sample b/src/main/resources/alfresco-global.properties.sample index a76e00e0a1..781a79a9db 100644 --- a/src/main/resources/alfresco-global.properties.sample +++ b/src/main/resources/alfresco-global.properties.sample @@ -29,7 +29,6 @@ # #img.coders=${img.root}/modules/coders #img.config=${img.root}/config -#img.gslib=${img.root}/lib # # Property to control whether schema updates are performed automatically. @@ -69,16 +68,16 @@ #db.url=jdbc:postgresql://localhost:5432/alfresco # -# DB2 connection -# -#db.driver=com.ibm.db2.jcc.DB2Driver -#db.url=jdbc:db2://localhost:50000/alfresco:retrieveMessagesFromServerOnGetMessage=true; +# DB2 connection +# +#db.driver=com.ibm.db2.jcc.DB2Driver +#db.url=jdbc:db2://localhost:50000/alfresco:retrieveMessagesFromServerOnGetMessage=true; # # When schema is used which does not match DB2 username then currentSchema and hibernate.default_schema should be set #db.url=jdbc:db2://localhost:50000/alfresco:retrieveMessagesFromServerOnGetMessage=true;currentSchema=${hibernate.default_schema}; #hibernate.default_schema=SAMPLE_SCHEMA - -# + +# # Index Recovery Mode #------------- #index.recovery.mode=AUTO @@ -142,11 +141,11 @@ #imap.server.port=143 #imap.server.host=localhost -# Default value of alfresco.rmi.services.host is 0.0.0.0 which means 'listen on all adapters'. -# This allows connections to JMX both remotely and locally. +# Default value of alfresco.rmi.services.host is 0.0.0.0 which means 'listen on all adapters'. +# This allows connections to JMX both remotely and locally. # -alfresco.rmi.services.host=0.0.0.0 - +alfresco.rmi.services.host=0.0.0.0 + # # # Assign individual ports for each service for best performance diff --git a/src/main/resources/alfresco/subsystems/thirdparty/default/alfresco-pdf-renderer-transform-context.xml b/src/main/resources/alfresco/subsystems/thirdparty/default/alfresco-pdf-renderer-transform-context.xml index 08d4cacf74..024e724778 100644 --- a/src/main/resources/alfresco/subsystems/thirdparty/default/alfresco-pdf-renderer-transform-context.xml +++ b/src/main/resources/alfresco/subsystems/thirdparty/default/alfresco-pdf-renderer-transform-context.xml @@ -20,7 +20,7 @@ - + @@ -47,7 +47,7 @@ - + @@ -57,7 +57,7 @@ - + diff --git a/src/main/resources/alfresco/subsystems/thirdparty/default/imagemagick-transform-context.xml b/src/main/resources/alfresco/subsystems/thirdparty/default/imagemagick-transform-context.xml index 5fc1f0c57f..6874cc5be2 100644 --- a/src/main/resources/alfresco/subsystems/thirdparty/default/imagemagick-transform-context.xml +++ b/src/main/resources/alfresco/subsystems/thirdparty/default/imagemagick-transform-context.xml @@ -22,7 +22,7 @@ - + @@ -50,7 +50,7 @@ - + @@ -62,9 +62,6 @@ ${img.config} - - ${img.gslib} - ${img.dyn} @@ -75,7 +72,7 @@ - + diff --git a/src/main/resources/alfresco/subsystems/thirdparty/default/imagemagick-transform.properties b/src/main/resources/alfresco/subsystems/thirdparty/default/imagemagick-transform.properties index 281e763a3b..0c0512e3be 100644 --- a/src/main/resources/alfresco/subsystems/thirdparty/default/imagemagick-transform.properties +++ b/src/main/resources/alfresco/subsystems/thirdparty/default/imagemagick-transform.properties @@ -4,4 +4,3 @@ img.dyn=${img.root}/lib img.exe=${img.root}/bin/convert img.coders=${img.root}/modules/coders img.config=${img.root}/config -img.gslib= diff --git a/src/test/java/org/alfresco/opencmis/CMISTest.java b/src/test/java/org/alfresco/opencmis/CMISTest.java index dc1043a8a6..b0a69bb7cb 100644 --- a/src/test/java/org/alfresco/opencmis/CMISTest.java +++ b/src/test/java/org/alfresco/opencmis/CMISTest.java @@ -3668,6 +3668,64 @@ public class CMISTest AuthenticationUtil.popAuthentication(); } } + + @Test + public void testCreateDocWithVersioningStateNone() throws Exception + { + AuthenticationUtil.pushAuthentication(); + AuthenticationUtil.setFullyAuthenticatedUser(AuthenticationUtil.getAdminUserName()); + + try + { + // get repository id + final String repositoryId = withCmisService(new CmisServiceCallback() + { + @Override + public String execute(CmisService cmisService) + { + List repositories = cmisService.getRepositoryInfos(null); + assertTrue(repositories.size() > 0); + RepositoryInfo repo = repositories.get(0); + final String repositoryId = repo.getId(); + return repositoryId; + } + }, CmisVersion.CMIS_1_1); + + final NodeRef documentNodeRef = withCmisService(new CmisServiceCallback() + { + @Override + public NodeRef execute(CmisService cmisService) + { + final PropertiesImpl properties = new PropertiesImpl(); + String objectTypeId = "cmis:document"; + properties.addProperty(new PropertyIdImpl(PropertyIds.OBJECT_TYPE_ID, objectTypeId)); + String fileName = "textFile" + GUID.generate(); + properties.addProperty(new PropertyStringImpl(PropertyIds.NAME, fileName)); + final ContentStreamImpl contentStream = new ContentStreamImpl(fileName, MimetypeMap.MIMETYPE_TEXT_PLAIN, "Simple text plain document"); + + String nodeId = cmisService.create(repositoryId, properties, repositoryHelper.getCompanyHome().getId(), contentStream, VersioningState.NONE, null, null); + return new NodeRef(nodeId.substring(0, nodeId.indexOf(';'))); + } + }, CmisVersion.CMIS_1_1); + + // check versioning properties + transactionService.getRetryingTransactionHelper().doInTransaction(new RetryingTransactionCallback>() + { + @Override + public List execute() throws Throwable + { + assertTrue(nodeService.exists(documentNodeRef)); + assertFalse(nodeService.hasAspect(documentNodeRef, ContentModel.ASPECT_VERSIONABLE)); + + return null; + } + }); + } + finally + { + AuthenticationUtil.popAuthentication(); + } + } /** * MNT-14951: Test that the list of parents can be retrieved for a folder. diff --git a/src/test/java/org/alfresco/repo/content/transform/magick/ImageMagickContentTransformerTest.java b/src/test/java/org/alfresco/repo/content/transform/magick/ImageMagickContentTransformerTest.java index 1970caccd9..c7865b0bc8 100644 --- a/src/test/java/org/alfresco/repo/content/transform/magick/ImageMagickContentTransformerTest.java +++ b/src/test/java/org/alfresco/repo/content/transform/magick/ImageMagickContentTransformerTest.java @@ -1,28 +1,28 @@ -/* - * #%L - * Alfresco Repository - * %% - * Copyright (C) 2005 - 2016 Alfresco Software Limited - * %% - * This file is part of the Alfresco software. - * If the software was purchased under a paid Alfresco license, the terms of - * the paid license agreement will prevail. Otherwise, the software is - * provided under the following open source license terms: - * - * Alfresco is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * Alfresco is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with Alfresco. If not, see . - * #L% - */ +/* + * #%L + * Alfresco Repository + * %% + * Copyright (C) 2005 - 2016 Alfresco Software Limited + * %% + * This file is part of the Alfresco software. + * If the software was purchased under a paid Alfresco license, the terms of + * the paid license agreement will prevail. Otherwise, the software is + * provided under the following open source license terms: + * + * Alfresco is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * Alfresco is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with Alfresco. If not, see . + * #L% + */ package org.alfresco.repo.content.transform.magick; import java.io.File; @@ -120,12 +120,24 @@ public class ImageMagickContentTransformerTest extends AbstractContentTransforme } } + public void testGifToPng() throws Exception + { + ImageTransformationOptions options = new ImageTransformationOptions(); + transform(MimetypeMap.MIMETYPE_IMAGE_GIF, MimetypeMap.MIMETYPE_IMAGE_PNG, options); + } + + public void testJpegToPng() throws Exception + { + ImageTransformationOptions options = new ImageTransformationOptions(); + transform(MimetypeMap.MIMETYPE_IMAGE_JPEG, MimetypeMap.MIMETYPE_IMAGE_PNG, options); + } + public void testPageSourceOptions() throws Exception { // Test empty source options ImageTransformationOptions options = new ImageTransformationOptions(); this.transform(MimetypeMap.MIMETYPE_PDF, MimetypeMap.MIMETYPE_IMAGE_PNG, options); - + // Test first page options = new ImageTransformationOptions(); List sourceOptionsList = new ArrayList();