diff --git a/source/java/org/alfresco/repo/webdav/WebDAVHelper.java b/source/java/org/alfresco/repo/webdav/WebDAVHelper.java index 842aa7456e..06d9daa0ca 100644 --- a/source/java/org/alfresco/repo/webdav/WebDAVHelper.java +++ b/source/java/org/alfresco/repo/webdav/WebDAVHelper.java @@ -1093,18 +1093,18 @@ public class WebDAVHelper @Override public Event prepareEvent(String user, String networkId, String transactionId) { - SiteService siteService = getServiceRegistry().getSiteService(); - final String siteId = siteService.getSiteShortName(realNodeInfo.getNodeRef()); +// SiteService siteService = getServiceRegistry().getSiteService(); +// final String siteId = siteService.getSiteShortName(realNodeInfo.getNodeRef()); if (StringUtils.hasText(range)) { return new ContentReadRangeEvent(user, networkId, transactionId, realNodeInfo.getNodeRef().getId(), - siteId, realNodeInfo.getType().toString(), Client.webdav, mimetype, size, contentEncoding, range); + null, realNodeInfo.getType().toString(), Client.webdav, mimetype, size, contentEncoding, range); } else { return new ContentReadEvent(ContentReadEvent.DOWNLOAD, user, networkId, transactionId, realNodeInfo.getNodeRef().getId(), - siteId, realNodeInfo.getType().toString(), Client.webdav, mimetype, size, contentEncoding); + null, realNodeInfo.getType().toString(), Client.webdav, mimetype, size, contentEncoding); } } }); diff --git a/source/test-java/org/alfresco/repo/webdav/WebDAVHelperIntegrationTest.java b/source/test-java/org/alfresco/repo/webdav/WebDAVHelperIntegrationTest.java index 4df0e41148..b0f13c23e3 100644 --- a/source/test-java/org/alfresco/repo/webdav/WebDAVHelperIntegrationTest.java +++ b/source/test-java/org/alfresco/repo/webdav/WebDAVHelperIntegrationTest.java @@ -20,11 +20,12 @@ package org.alfresco.repo.webdav; import static org.junit.Assert.*; -import java.io.Serializable; -import java.util.Collections; +import java.util.List; import java.util.UUID; +import org.alfresco.events.types.ContentReadEvent; import org.alfresco.model.ContentModel; +import org.alfresco.repo.events.EventPublisherForTestingOnly; import org.alfresco.repo.security.authentication.AuthenticationUtil; import org.alfresco.service.cmr.model.FileFolderService; import org.alfresco.service.cmr.model.FileInfo; @@ -32,8 +33,8 @@ import org.alfresco.service.cmr.model.FileNotFoundException; import org.alfresco.service.cmr.repository.NodeRef; import org.alfresco.service.cmr.repository.NodeService; import org.alfresco.service.cmr.repository.StoreRef; -import org.alfresco.service.namespace.QName; import org.alfresco.util.ApplicationContextHelper; +import org.alfresco.util.FileFilterMode.Client; import org.junit.Before; import org.junit.BeforeClass; import org.junit.Test; @@ -52,6 +53,7 @@ public class WebDAVHelperIntegrationTest private NodeRef rootNodeRef; private NodeRef rootFolder; private NodeService nodeService; + private EventPublisherForTestingOnly eventPublisher; @BeforeClass public static void setUpSpring() @@ -73,6 +75,8 @@ public class WebDAVHelperIntegrationTest rootFolder = nodeService.createNode(rootNodeRef, ContentModel.ASSOC_CHILDREN, ContentModel.ASSOC_CHILDREN, ContentModel.TYPE_FOLDER).getChildRef(); + + eventPublisher = (EventPublisherForTestingOnly) ctx.getBean("eventPublisher"); } @Test @@ -132,4 +136,26 @@ public class WebDAVHelperIntegrationTest FileInfo found = webDAVHelper.getNodeForPath(rootFolder, "/"); assertEquals(rootFolder, found.getNodeRef()); } + + @Test + public void testPublishEvent() + { + FileInfo folderInfo = fileFolderService.create(rootFolder, "my_folder", ContentModel.TYPE_FOLDER); + FileInfo fileInfo = fileFolderService.create(folderInfo.getNodeRef(), "my_file.txt", ContentModel.TYPE_CONTENT); + webDAVHelper.publishReadEvent(fileInfo, "text", 2l, "UTF-8", null); + + List readEvents = eventPublisher.getQueueByType(ContentReadEvent.class); + boolean found = false; + for (ContentReadEvent event : readEvents) + { + if (fileInfo.getNodeRef().getId().equals(event.getNodeId())) + { + assertEquals(event.getMimeType(),("text")); + assertEquals(event.getClient(),Client.webdav); + found = true; + break; + } + } + assertTrue(found); + } }