Package org.alfresco.service.cmr.blog
Interface BlogService
-
- All Known Implementing Classes:
BlogServiceImpl
public interface BlogServiceThe Blog Service handles the management (CRUD) of Alfresco blog data, namely the blog posts which are exposed in the Share UI under the "Blog" heading. TheBlogIntegrationService, a separate service, is concerned with the integration of Alfresco blog content with external Blog-hosting sites. Please note that this service is a work in progress and currently exists primarily to support the blogs REST API.- Since:
- 4.0
- Author:
- Neil Mc Erlean (based on existing webscript controllers in the REST API)
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static classBlogService.RangedDatePropertyA simple data object for expressing a date range search parameter.
-
Method Summary
All Methods Instance Methods Abstract Methods Deprecated Methods Modifier and Type Method Description BlogPostInfocreateBlogPost(String siteShortName, String blogTitle, String blogContent, boolean isDraft)Creates a new blog post in the specified siteBlogPostInfocreateBlogPost(org.alfresco.service.cmr.repository.NodeRef blogContainerNode, String blogTitle, String blogContent, boolean isDraft)Creates a new blog post within the specified container node.voiddeleteBlogPost(BlogPostInfo post)Deletes an existingBlogPostInfofrom the repository.org.alfresco.query.PagingResults<BlogPostInfo>findBlogPosts(String siteShortName, BlogService.RangedDateProperty dateRange, String tag, org.alfresco.query.PagingRequest pagingReq)Finds blog posts by the specified user tagged with the given tag string.org.alfresco.query.PagingResults<BlogPostInfo>findBlogPosts(org.alfresco.service.cmr.repository.NodeRef blogContainerNode, BlogService.RangedDateProperty dateRange, String tag, org.alfresco.query.PagingRequest pagingReq)Finds blog posts by the specified user tagged with the given tag string.BlogPostInfogetBlogPost(String siteShortName, String postName)Retrieves an existingBlogPostInfofrom the repository, which is within a siteBlogPostInfogetBlogPost(org.alfresco.service.cmr.repository.NodeRef parentNodeRef, String postName)Retrieves an existingBlogPostInfofrom the repository, which is attached to the specified Node.org.alfresco.query.PagingResults<BlogPostInfo>getDrafts(String siteShortName, String username, org.alfresco.query.PagingRequest pagingReq)Gets the draft blog posts created by the specified user.org.alfresco.query.PagingResults<BlogPostInfo>getDrafts(org.alfresco.service.cmr.repository.NodeRef blogContainerNode, String username, org.alfresco.query.PagingRequest pagingReq)Gets the draft blog posts created by the specified user.BlogPostInfogetForNodeRef(org.alfresco.service.cmr.repository.NodeRef nodeRef)For a given NodeRef corresponding to aBlogPostInfo, returns the object wrapping the Node.org.alfresco.query.PagingResults<BlogPostInfo>getMyDraftsAndAllPublished(org.alfresco.service.cmr.repository.NodeRef blogContainerNode, Date fromDate, Date toDate, org.alfresco.query.PagingRequest pagingReq)Deprecated.This method is a domain-specific query used by the Blog REST API and is not considered suitable for general use.org.alfresco.query.PagingResults<BlogPostInfo>getPublished(String siteShortName, Date fromDate, Date toDate, String byUser, org.alfresco.query.PagingRequest pagingReq)Gets the (internally, Alfresco-) published blog posts.org.alfresco.query.PagingResults<BlogPostInfo>getPublished(org.alfresco.service.cmr.repository.NodeRef blogContainerNode, Date fromDate, Date toDate, String byUser, org.alfresco.query.PagingRequest pagingReq)Gets the (internally, Alfresco-) published blog posts.org.alfresco.query.PagingResults<BlogPostInfo>getPublishedExternally(String siteShortName, org.alfresco.query.PagingRequest pagingReq)Gets blog posts published externally (i.e.org.alfresco.query.PagingResults<BlogPostInfo>getPublishedExternally(org.alfresco.service.cmr.repository.NodeRef blogContainerNode, org.alfresco.query.PagingRequest pagingReq)Gets blog posts published externally (i.e.booleanisDraftBlogPost(org.alfresco.service.cmr.repository.NodeRef blogPostNode)Deprecated.Add this to the BlogPostInfo shortlyBlogPostInfoupdateBlogPost(BlogPostInfo post)Updates an existingBlogPostInfoin the repository.
-
-
-
Method Detail
-
createBlogPost
BlogPostInfo createBlogPost(String siteShortName, String blogTitle, String blogContent, boolean isDraft)
Creates a new blog post in the specified site- Parameters:
siteShortName- the name of the site to add the post to.blogTitle- the title of the blog post.blogContent- text/html content of the blog post.isDraft- true if the blog post is a draft post, else false.- Returns:
- The
BlogPostInfoof the newly created blog post. - See Also:
to retrieve the blogContainerNode
-
createBlogPost
BlogPostInfo createBlogPost(org.alfresco.service.cmr.repository.NodeRef blogContainerNode, String blogTitle, String blogContent, boolean isDraft)
Creates a new blog post within the specified container node.- Parameters:
blogContainerNode- the container node for blog posts (under the site).blogTitle- the title of the blog post.blogContent- text/html content of the blog post.isDraft- true if the blog post is a draft post, else false.- Returns:
- The
BlogPostInfoof the newly created blog post. - See Also:
to retrieve the blogContainerNode
-
updateBlogPost
BlogPostInfo updateBlogPost(BlogPostInfo post)
Updates an existingBlogPostInfoin the repository.- Returns:
- The updated
BlogPostInfo
-
deleteBlogPost
void deleteBlogPost(BlogPostInfo post)
Deletes an existingBlogPostInfofrom the repository.
-
getForNodeRef
@NotAuditable BlogPostInfo getForNodeRef(org.alfresco.service.cmr.repository.NodeRef nodeRef)
For a given NodeRef corresponding to aBlogPostInfo, returns the object wrapping the Node. For anything else, the response is null.
-
getBlogPost
BlogPostInfo getBlogPost(String siteShortName, String postName)
Retrieves an existingBlogPostInfofrom the repository, which is within a site
-
getBlogPost
BlogPostInfo getBlogPost(org.alfresco.service.cmr.repository.NodeRef parentNodeRef, String postName)
Retrieves an existingBlogPostInfofrom the repository, which is attached to the specified Node. The parent Node should normally be a Site Container
-
getDrafts
org.alfresco.query.PagingResults<BlogPostInfo> getDrafts(String siteShortName, String username, org.alfresco.query.PagingRequest pagingReq)
Gets the draft blog posts created by the specified user.- Parameters:
siteShortName- the name of the site to add the post to.username- to limit results to blogs with this cm:creator. null means all users.pagingReq- an object defining the paging parameters for the result set.- Returns:
- a
PagingResultsobject containing some or all of the results (subject to paging). - See Also:
to retrieve the blogContainerNode
-
getDrafts
org.alfresco.query.PagingResults<BlogPostInfo> getDrafts(org.alfresco.service.cmr.repository.NodeRef blogContainerNode, String username, org.alfresco.query.PagingRequest pagingReq)
Gets the draft blog posts created by the specified user.- Parameters:
blogContainerNode- the container node for blog posts (under the site).username- to limit results to blogs with this cm:creator. null means all users.pagingReq- an object defining the paging parameters for the result set.- Returns:
- a
PagingResultsobject containing some or all of the results (subject to paging). - See Also:
to retrieve the blogContainerNode
-
getPublished
org.alfresco.query.PagingResults<BlogPostInfo> getPublished(String siteShortName, Date fromDate, Date toDate, String byUser, org.alfresco.query.PagingRequest pagingReq)
Gets the (internally, Alfresco-) published blog posts.- Parameters:
siteShortName- the name of the site to add the post to.fromDate- an inclusive date limit for the results (more recent than).toDate- an inclusive date limit for the results (before).byUser- if not null limits results to posts by the specified user. if null results will be by all users.pagingReq- an object defining the paging parameters for the result set.- Returns:
- a
PagingResultsobject containing some or all of the results (subject to paging). - See Also:
to retrieve the blogContainerNode
-
getPublished
org.alfresco.query.PagingResults<BlogPostInfo> getPublished(org.alfresco.service.cmr.repository.NodeRef blogContainerNode, Date fromDate, Date toDate, String byUser, org.alfresco.query.PagingRequest pagingReq)
Gets the (internally, Alfresco-) published blog posts.- Parameters:
blogContainerNode- the container node for blog posts (under the site).fromDate- an inclusive date limit for the results (more recent than).toDate- an inclusive date limit for the results (before).byUser- if not null limits results to posts by the specified user. if null results will be by all users.pagingReq- an object defining the paging parameters for the result set.- Returns:
- a
PagingResultsobject containing some or all of the results (subject to paging). - See Also:
to retrieve the blogContainerNode
-
getPublishedExternally
org.alfresco.query.PagingResults<BlogPostInfo> getPublishedExternally(String siteShortName, org.alfresco.query.PagingRequest pagingReq)
Gets blog posts published externally (i.e. to an external blog hosting site).- Parameters:
siteShortName- the name of the site to add the post to.pagingReq- an object defining the paging parameters for the result set.- Returns:
- a
PagingResultsobject containing some or all of the results (subject to paging). - See Also:
to retrieve the blogContainerNode
-
getPublishedExternally
org.alfresco.query.PagingResults<BlogPostInfo> getPublishedExternally(org.alfresco.service.cmr.repository.NodeRef blogContainerNode, org.alfresco.query.PagingRequest pagingReq)
Gets blog posts published externally (i.e. to an external blog hosting site).- Parameters:
blogContainerNode- the container node for blog posts (under the site).pagingReq- an object defining the paging parameters for the result set.- Returns:
- a
PagingResultsobject containing some or all of the results (subject to paging). - See Also:
to retrieve the blogContainerNode
-
getMyDraftsAndAllPublished
org.alfresco.query.PagingResults<BlogPostInfo> getMyDraftsAndAllPublished(org.alfresco.service.cmr.repository.NodeRef blogContainerNode, Date fromDate, Date toDate, org.alfresco.query.PagingRequest pagingReq)
Deprecated.This method is a domain-specific query used by the Blog REST API and is not considered suitable for general use.Gets draft blog posts by the currently authenticated user along with all published posts.- Parameters:
blogContainerNode- the container node for blog posts (under the site).fromDate- an inclusive date limit for the results (more recent than).toDate- an inclusive date limit for the results (before).pagingReq- an object defining the paging parameters for the result set.- Returns:
- a
PagingResultsobject containing some or all of the results (subject to paging). - See Also:
to retrieve the blogContainerNode
-
findBlogPosts
org.alfresco.query.PagingResults<BlogPostInfo> findBlogPosts(String siteShortName, BlogService.RangedDateProperty dateRange, String tag, org.alfresco.query.PagingRequest pagingReq)
Finds blog posts by the specified user tagged with the given tag string. This method allows date ranges to be applied to any validDataTypeDefinition.DATEorDataTypeDefinition.DATETIMEproperty. Examples includeContentModel.PROP_CREATEDorContentModel.PROP_PUBLISHED.- Parameters:
siteShortName- the name of the site to add the post to.dateRange- aBlogService.RangedDatePropertyparameter object. Can be null.tag- tag string.pagingReq- an object defining the paging parameters for the result set.- Returns:
- a
PagingResultsobject containing some or all of the results (subject to paging). - See Also:
to retrieve the blogContainerNode
-
findBlogPosts
org.alfresco.query.PagingResults<BlogPostInfo> findBlogPosts(org.alfresco.service.cmr.repository.NodeRef blogContainerNode, BlogService.RangedDateProperty dateRange, String tag, org.alfresco.query.PagingRequest pagingReq)
Finds blog posts by the specified user tagged with the given tag string. This method allows date ranges to be applied to any validDataTypeDefinition.DATEorDataTypeDefinition.DATETIMEproperty. Examples includeContentModel.PROP_CREATEDorContentModel.PROP_PUBLISHED.- Parameters:
blogContainerNode- the container node for blog posts (under the site).dateRange- aBlogService.RangedDatePropertyparameter object. Can be null.tag- tag string.pagingReq- an object defining the paging parameters for the result set.- Returns:
- a
PagingResultsobject containing some or all of the results (subject to paging). - See Also:
to retrieve the blogContainerNode
-
isDraftBlogPost
boolean isDraftBlogPost(org.alfresco.service.cmr.repository.NodeRef blogPostNode)
Deprecated.Add this to the BlogPostInfo shortlyReturns true if the specified blog-post node is a 'draft' blog post.- Parameters:
blogPostNode- a NodeRef representing a blog-post.- Returns:
- true if it is a draft post, else false.
-
-