diff --git a/config/alfresco/blog-context.xml b/config/alfresco/blog-context.xml index 410d2dc7ae..040f104b72 100644 --- a/config/alfresco/blog-context.xml +++ b/config/alfresco/blog-context.xml @@ -5,7 +5,7 @@ - org.alfresco.repo.blog.BlogService + org.alfresco.service.cmr.blog.BlogService @@ -15,7 +15,7 @@ - + @@ -32,46 +32,30 @@ - - - - - - - - - - org.alfresco.repo.blog.BlogService.getDrafts=ACL_NODE.0.sys:base.ReadChildren,AFTER_ACL_NODE.sys:base.ReadProperties - org.alfresco.repo.blog.BlogService.getPublished=ACL_NODE.0.sys:base.ReadChildren,AFTER_ACL_NODE.sys:base.ReadProperties - org.alfresco.repo.blog.BlogService.getPublishedExternally=ACL_NODE.0.sys:base.ReadChildren,AFTER_ACL_NODE.sys:base.ReadProperties - org.alfresco.repo.blog.BlogService.getMyDraftsAndAllPublished=ACL_NODE.0.sys:base.ReadChildren,AFTER_ACL_NODE.sys:base.ReadProperties - org.alfresco.repo.blog.BlogService.*=ACL_ALLOW - - - - + + + - + - + - + - + diff --git a/config/alfresco/public-services-security-context.xml b/config/alfresco/public-services-security-context.xml index ba8390ba1b..c2b8e0e754 100644 --- a/config/alfresco/public-services-security-context.xml +++ b/config/alfresco/public-services-security-context.xml @@ -900,6 +900,26 @@ + + + + + + + + + + + org.alfresco.service.cmr.blog.BlogService.getDrafts=ACL_NODE.0.sys:base.ReadChildren,AFTER_ACL_NODE.sys:base.ReadProperties + org.alfresco.service.cmr.blog.BlogService.getPublished=ACL_NODE.0.sys:base.ReadChildren,AFTER_ACL_NODE.sys:base.ReadProperties + org.alfresco.service.cmr.blog.BlogService.getPublishedExternally=ACL_NODE.0.sys:base.ReadChildren,AFTER_ACL_NODE.sys:base.ReadProperties + org.alfresco.service.cmr.blog.BlogService.getMyDraftsAndAllPublished=ACL_NODE.0.sys:base.ReadChildren,AFTER_ACL_NODE.sys:base.ReadProperties + org.alfresco.service.cmr.blog.BlogService.*=ACL_ALLOW + + + + + diff --git a/source/java/org/alfresco/repo/blog/BlogServiceImpl.java b/source/java/org/alfresco/repo/blog/BlogServiceImpl.java index 90f7656606..20f35cbec1 100644 --- a/source/java/org/alfresco/repo/blog/BlogServiceImpl.java +++ b/source/java/org/alfresco/repo/blog/BlogServiceImpl.java @@ -36,6 +36,7 @@ import org.alfresco.repo.blog.cannedqueries.GetBlogPostsCannedQuery; import org.alfresco.repo.blog.cannedqueries.GetBlogPostsCannedQueryFactory; import org.alfresco.repo.content.MimetypeMap; import org.alfresco.repo.security.authentication.AuthenticationUtil; +import org.alfresco.service.cmr.blog.BlogService; import org.alfresco.service.cmr.repository.ChildAssociationRef; import org.alfresco.service.cmr.repository.ContentService; import org.alfresco.service.cmr.repository.ContentWriter; diff --git a/source/java/org/alfresco/repo/blog/BlogServiceImplTest.java b/source/java/org/alfresco/repo/blog/BlogServiceImplTest.java index f9d59b0093..0711a62797 100644 --- a/source/java/org/alfresco/repo/blog/BlogServiceImplTest.java +++ b/source/java/org/alfresco/repo/blog/BlogServiceImplTest.java @@ -31,11 +31,12 @@ import java.util.List; import org.alfresco.model.ContentModel; import org.alfresco.query.PagingRequest; import org.alfresco.query.PagingResults; -import org.alfresco.repo.blog.BlogService.BlogPostInfo; import org.alfresco.repo.policy.BehaviourFilter; import org.alfresco.repo.security.authentication.AuthenticationUtil; import org.alfresco.repo.site.SiteModel; import org.alfresco.repo.transaction.RetryingTransactionHelper; +import org.alfresco.service.cmr.blog.BlogService; +import org.alfresco.service.cmr.blog.BlogService.BlogPostInfo; import org.alfresco.service.cmr.dictionary.DataTypeDefinition; import org.alfresco.service.cmr.dictionary.DictionaryService; import org.alfresco.service.cmr.dictionary.PropertyDefinition; diff --git a/source/java/org/alfresco/repo/blog/cannedqueries/AbstractBlogPostsCannedQueryFactory.java b/source/java/org/alfresco/repo/blog/cannedqueries/AbstractBlogPostsCannedQueryFactory.java index a5d7b38442..18688098a8 100644 --- a/source/java/org/alfresco/repo/blog/cannedqueries/AbstractBlogPostsCannedQueryFactory.java +++ b/source/java/org/alfresco/repo/blog/cannedqueries/AbstractBlogPostsCannedQueryFactory.java @@ -29,12 +29,12 @@ import org.alfresco.query.CannedQueryPageDetails; import org.alfresco.query.CannedQuerySortDetails; import org.alfresco.query.PagingRequest; import org.alfresco.query.CannedQuerySortDetails.SortOrder; -import org.alfresco.repo.blog.BlogService.BlogPostInfo; import org.alfresco.repo.domain.node.NodeDAO; import org.alfresco.repo.domain.qname.QNameDAO; import org.alfresco.repo.domain.query.CannedQueryDAO; import org.alfresco.repo.security.permissions.impl.acegi.MethodSecurityBean; import org.alfresco.repo.tenant.TenantService; +import org.alfresco.service.cmr.blog.BlogService.BlogPostInfo; import org.alfresco.service.cmr.repository.InvalidNodeRefException; import org.alfresco.service.cmr.repository.NodeRef; import org.alfresco.service.namespace.QName; diff --git a/source/java/org/alfresco/repo/blog/cannedqueries/DraftsAndPublishedBlogPostsCannedQuery.java b/source/java/org/alfresco/repo/blog/cannedqueries/DraftsAndPublishedBlogPostsCannedQuery.java index 6bec70f147..0311022916 100644 --- a/source/java/org/alfresco/repo/blog/cannedqueries/DraftsAndPublishedBlogPostsCannedQuery.java +++ b/source/java/org/alfresco/repo/blog/cannedqueries/DraftsAndPublishedBlogPostsCannedQuery.java @@ -26,15 +26,14 @@ import java.util.List; import org.alfresco.query.CannedQuery; import org.alfresco.query.CannedQueryParameters; import org.alfresco.query.CannedQuerySortDetails.SortOrder; -import org.alfresco.repo.blog.BlogService; -import org.alfresco.repo.blog.BlogService.BlogPostInfo; import org.alfresco.repo.blog.cannedqueries.AbstractBlogPostsCannedQueryFactory.PropertyBasedComparator; import org.alfresco.repo.domain.query.CannedQueryDAO; import org.alfresco.repo.security.permissions.impl.acegi.AbstractCannedQueryPermissions; import org.alfresco.repo.security.permissions.impl.acegi.MethodSecurityBean; +import org.alfresco.service.cmr.blog.BlogService; +import org.alfresco.service.cmr.blog.BlogService.BlogPostInfo; import org.alfresco.service.cmr.repository.NodeRef; import org.alfresco.service.cmr.repository.datatype.DefaultTypeConverter; -import org.alfresco.service.cmr.tagging.TaggingService; import org.alfresco.service.namespace.QName; import org.alfresco.util.Pair; import org.apache.commons.logging.Log; diff --git a/source/java/org/alfresco/repo/blog/cannedqueries/DraftsAndPublishedBlogPostsCannedQueryFactory.java b/source/java/org/alfresco/repo/blog/cannedqueries/DraftsAndPublishedBlogPostsCannedQueryFactory.java index ecf904a1aa..98e9137fee 100644 --- a/source/java/org/alfresco/repo/blog/cannedqueries/DraftsAndPublishedBlogPostsCannedQueryFactory.java +++ b/source/java/org/alfresco/repo/blog/cannedqueries/DraftsAndPublishedBlogPostsCannedQueryFactory.java @@ -28,7 +28,7 @@ import org.alfresco.query.CannedQueryParameters; import org.alfresco.query.CannedQuerySortDetails; import org.alfresco.query.PagingRequest; import org.alfresco.query.CannedQuerySortDetails.SortOrder; -import org.alfresco.repo.blog.BlogService.BlogPostInfo; +import org.alfresco.service.cmr.blog.BlogService.BlogPostInfo; import org.alfresco.service.cmr.repository.NodeRef; import org.alfresco.util.ParameterCheck; diff --git a/source/java/org/alfresco/repo/blog/cannedqueries/GetBlogPostsCannedQuery.java b/source/java/org/alfresco/repo/blog/cannedqueries/GetBlogPostsCannedQuery.java index 1e372b23e5..42e6b22853 100644 --- a/source/java/org/alfresco/repo/blog/cannedqueries/GetBlogPostsCannedQuery.java +++ b/source/java/org/alfresco/repo/blog/cannedqueries/GetBlogPostsCannedQuery.java @@ -26,13 +26,13 @@ import java.util.List; import org.alfresco.query.CannedQuery; import org.alfresco.query.CannedQueryParameters; import org.alfresco.query.CannedQuerySortDetails.SortOrder; -import org.alfresco.repo.blog.BlogService; -import org.alfresco.repo.blog.BlogService.BlogPostInfo; import org.alfresco.repo.blog.cannedqueries.AbstractBlogPostsCannedQueryFactory.PropertyBasedComparator; import org.alfresco.repo.domain.node.AuditablePropertiesEntity; import org.alfresco.repo.domain.query.CannedQueryDAO; import org.alfresco.repo.security.permissions.impl.acegi.AbstractCannedQueryPermissions; import org.alfresco.repo.security.permissions.impl.acegi.MethodSecurityBean; +import org.alfresco.service.cmr.blog.BlogService; +import org.alfresco.service.cmr.blog.BlogService.BlogPostInfo; import org.alfresco.service.cmr.repository.datatype.DefaultTypeConverter; import org.alfresco.service.namespace.QName; import org.alfresco.util.Pair; diff --git a/source/java/org/alfresco/repo/blog/cannedqueries/GetBlogPostsCannedQueryFactory.java b/source/java/org/alfresco/repo/blog/cannedqueries/GetBlogPostsCannedQueryFactory.java index ea58b3243e..9dd713f75a 100644 --- a/source/java/org/alfresco/repo/blog/cannedqueries/GetBlogPostsCannedQueryFactory.java +++ b/source/java/org/alfresco/repo/blog/cannedqueries/GetBlogPostsCannedQueryFactory.java @@ -29,8 +29,8 @@ import org.alfresco.query.CannedQueryParameters; import org.alfresco.query.CannedQuerySortDetails; import org.alfresco.query.PagingRequest; import org.alfresco.query.CannedQuerySortDetails.SortOrder; -import org.alfresco.repo.blog.BlogService; -import org.alfresco.repo.blog.BlogService.BlogPostInfo; +import org.alfresco.service.cmr.blog.BlogService; +import org.alfresco.service.cmr.blog.BlogService.BlogPostInfo; import org.alfresco.service.cmr.repository.NodeRef; import org.alfresco.util.ParameterCheck; diff --git a/source/java/org/alfresco/repo/rendition/MockedTestServiceRegistry.java b/source/java/org/alfresco/repo/rendition/MockedTestServiceRegistry.java index 12ceb992fb..8c239c86d3 100644 --- a/source/java/org/alfresco/repo/rendition/MockedTestServiceRegistry.java +++ b/source/java/org/alfresco/repo/rendition/MockedTestServiceRegistry.java @@ -41,6 +41,7 @@ import org.alfresco.service.cmr.avm.AVMService; import org.alfresco.service.cmr.avm.deploy.DeploymentService; import org.alfresco.service.cmr.avm.locking.AVMLockingService; import org.alfresco.service.cmr.avmsync.AVMSyncService; +import org.alfresco.service.cmr.blog.BlogService; import org.alfresco.service.cmr.calendar.CalendarService; import org.alfresco.service.cmr.coci.CheckOutCheckInService; import org.alfresco.service.cmr.dictionary.DictionaryService; @@ -532,4 +533,12 @@ public class MockedTestServiceRegistry implements ServiceRegistry // TODO Auto-generated method stub return null; } + + + @Override + public BlogService getBlogService() + { + // TODO Auto-generated method stub + return null; + } } diff --git a/source/java/org/alfresco/repo/service/ServiceDescriptorRegistry.java b/source/java/org/alfresco/repo/service/ServiceDescriptorRegistry.java index 1fa862d27b..2f4218c12e 100644 --- a/source/java/org/alfresco/repo/service/ServiceDescriptorRegistry.java +++ b/source/java/org/alfresco/repo/service/ServiceDescriptorRegistry.java @@ -39,6 +39,7 @@ import org.alfresco.service.cmr.avm.AVMService; import org.alfresco.service.cmr.avm.deploy.DeploymentService; import org.alfresco.service.cmr.avm.locking.AVMLockingService; import org.alfresco.service.cmr.avmsync.AVMSyncService; +import org.alfresco.service.cmr.blog.BlogService; import org.alfresco.service.cmr.calendar.CalendarService; import org.alfresco.service.cmr.coci.CheckOutCheckInService; import org.alfresco.service.cmr.dictionary.DictionaryService; @@ -544,6 +545,15 @@ public class ServiceDescriptorRegistry return (NodeLocatorService)getService(NODE_LOCATOR_SERVICE); } + /* + * (non-Javadoc) + * @see org.alfresco.service.ServiceRegistry#getBlogService() + */ + public BlogService getBlogService() + { + return (BlogService)getService(BLOG_SERVICE); + } + /* * (non-Javadoc) * @see org.alfresco.service.ServiceRegistry#getCalendarService() diff --git a/source/java/org/alfresco/service/ServiceRegistry.java b/source/java/org/alfresco/service/ServiceRegistry.java index 9a2edda1bd..49f6657253 100644 --- a/source/java/org/alfresco/service/ServiceRegistry.java +++ b/source/java/org/alfresco/service/ServiceRegistry.java @@ -38,6 +38,7 @@ import org.alfresco.service.cmr.avm.AVMService; import org.alfresco.service.cmr.avm.deploy.DeploymentService; import org.alfresco.service.cmr.avm.locking.AVMLockingService; import org.alfresco.service.cmr.avmsync.AVMSyncService; +import org.alfresco.service.cmr.blog.BlogService; import org.alfresco.service.cmr.calendar.CalendarService; import org.alfresco.service.cmr.coci.CheckOutCheckInService; import org.alfresco.service.cmr.dictionary.DictionaryService; @@ -139,6 +140,7 @@ public interface ServiceRegistry static final QName RATING_SERVICE = QName.createQName(NamespaceService.ALFRESCO_URI, "RatingService"); static final QName REPO_ADMIN_SERVICE = QName.createQName(NamespaceService.ALFRESCO_URI, "RepoAdminService"); static final QName NODE_LOCATOR_SERVICE = QName.createQName(NamespaceService.ALFRESCO_URI, "nodeLocatorService"); + static final QName BLOG_SERVICE = QName.createQName(NamespaceService.ALFRESCO_URI, "BlogService"); static final QName CALENDAR_SERVICE = QName.createQName(NamespaceService.ALFRESCO_URI, "CalendarService"); // WCM / AVM @@ -519,9 +521,20 @@ public interface ServiceRegistry @NotAuditable NodeLocatorService getNodeLocatorService(); + /** + * Get the blog service (or null if one is not provided) + * @return + * + * @since 4.0 + */ + @NotAuditable + BlogService getBlogService(); + /** * Get the calendar service (or null if one is not provided) * @return + * + * @since 4.0 */ @NotAuditable CalendarService getCalendarService(); diff --git a/source/java/org/alfresco/repo/blog/BlogService.java b/source/java/org/alfresco/service/cmr/blog/BlogService.java similarity index 97% rename from source/java/org/alfresco/repo/blog/BlogService.java rename to source/java/org/alfresco/service/cmr/blog/BlogService.java index 0c8ba3d78f..bfe87fbc32 100644 --- a/source/java/org/alfresco/repo/blog/BlogService.java +++ b/source/java/org/alfresco/service/cmr/blog/BlogService.java @@ -16,7 +16,7 @@ * You should have received a copy of the GNU Lesser General Public License * along with Alfresco. If not, see . */ -package org.alfresco.repo.blog; +package org.alfresco.service.cmr.blog; import java.util.Date;