public class CachingPageDao extends Object implements PageDao
NON_CACHEABLE
Constructor and Description |
---|
CachingPageDao(PageDao delegateDao,
PageIdCache pageIdCache)
Deprecated.
since 5.10 Use
CachingPageDao(PageDao, VCacheFactory) |
CachingPageDao(PageDao delegateDao,
com.atlassian.vcache.VCacheFactory cacheFactory) |
Modifier and Type | Method and Description |
---|---|
int |
countAllPages()
Counts the total number of all page entities across all spaces, including non-current pages
|
int |
countContentBySpaceIdAndStatus(long spaceId,
String status)
Retrieve the count of content for a given space with a particular status.
|
int |
countCurrentPages()
Counts the total number of current pages across all spaces
|
int |
countDraftPages()
Counts the number of pages that are drafts.
|
int |
countPagesInSubtree(Page page)
Return total descendant page including input page
|
int |
countPagesWithUnpublishedChanges()
Counts the number of published pages that have unpublished changes.
|
List |
findAll()
Find all objects currently persisted of a particular type.
|
List<ContentEntityObject> |
findAllDraftsFor(long contentId)
Retrieves a list of drafts for the given content if any drafts exist.
|
List |
findAllSorted(String s)
Find all objects currently persisted of a particular type and sort results by named property.
|
List |
findAllSorted(String s,
boolean cached,
int firstRow,
int maxRows)
Find all objects currently persisted of a particular type and sort results by named property.
|
List<AbstractPage> |
findBlogsWithCurrentOrHistoricalTitleInAllPermittedSpacesExcept(SpacePermissionQueryBuilder permissionQueryBuilder,
String blogTitle,
Space space,
int maxResultCount)
Searches for blog posts in all spaces except the one specified, looking for those that have the given title in a
current or previous version, and returns the first maxResultCount results.
|
List<AbstractPage> |
findBlogsWithCurrentOrHistoricalTitleInPermittedSpace(SpacePermissionQueryBuilder permissionQueryBuilder,
String blogTitle,
Space space,
int maxResultCount)
Searches for blogs in the space specified, looking for those that have the given title in a previous version, and
returns the first maxResultCount results.
|
<T> PageResponse<T> |
findByClassIds(Iterable<Long> ids,
LimitedRequest limitedRequest,
com.google.common.base.Predicate<? super T> filter)
Find a list of objects from the same persistent class.
|
List<ContentEntityObject> |
findContentBySpaceIdAndStatus(long spaceId,
String status,
int offset,
int count)
Retrieve content for a given space with a particular status.
|
PageResponse<ContentEntityObject> |
findContentBySpaceIdAndStatus(long spaceId,
String status,
LimitedRequest limitedRequest,
com.google.common.base.Predicate<Page> predicate)
Retrieve content for a given space with a particular status.
|
List<ContentPermissionSummary> |
findContentPermissionSummaryByIds(Collection<Long> ids)
Get Content creator for bulk permission checking
|
ContentEntityObject |
findDraftFor(long contentId)
Retrieves the draft for the given content if exists.
|
List |
findHistoricalVersionsAfterVersion(long originalContentId,
int version) |
long |
findLatestVersionsCount()
Returns the number of results for the latest versions
of the current persistent class.
|
Iterator |
findLatestVersionsIterator()
Returns an iterator for the latest versions of the current
persistent class.
|
List<AbstractPage> |
findPagesWithCurrentOrHistoricalTitleInAllPermittedSpacesExcept(SpacePermissionQueryBuilder permissionQueryBuilder,
String pageTitle,
Space space,
int maxResultCount)
Searches for pages in all spaces except the one specified, looking for those that have the given title in a
previous version, and returns the first maxResultCount results.
|
List<AbstractPage> |
findPagesWithCurrentOrHistoricalTitleInPermittedSpace(SpacePermissionQueryBuilder permissionQueryBuilder,
String pageTitle,
Space space,
int maxResultCount)
Searches for pages in the space specified, looking for those that have the given title in a previous version, and
returns the first maxResultCount results.
|
List<Page> |
findPagesWithHistoricalTitle(String pageTitle) |
List |
findPreviousVersions(long originalContentId) |
List<ContentEntityObject> |
findUnpublishedContentWithUserContributions(String username)
Retrives the drafts for the given
User |
PageResponse<AbstractPage> |
getAbstractPages(org.joda.time.DateTime date,
List<ContentStatus> statuses,
LimitedRequest pageRequest,
com.google.common.base.Predicate<? super AbstractPage> filter)
Returns the abstract pages created on the given date and are in the , that also match the given filter, limited
to the page request.
|
PageResponse<AbstractPage> |
getAbstractPages(List<ContentType> contentTypes,
List<ContentStatus> statuses,
LimitedRequest pageRequest,
com.google.common.base.Predicate<? super AbstractPage> filter)
Retrieves a page response of all pages found in this instance of Confluence, within any of the given statuses.
|
PageResponse<AbstractPage> |
getAbstractPages(Space space,
List<ContentType> contentTypes,
List<ContentStatus> statuses,
LimitedRequest pageRequest,
com.google.common.base.Predicate<? super AbstractPage> filter)
Retrieves a page response for all content (pages and/or blog posts) in the given space, within any of the
specified statuses and content types.
|
PageResponse<AbstractPage> |
getAbstractPages(Space space,
String title,
List<ContentStatus> statuses,
LimitedRequest pageRequest,
com.google.common.base.Predicate<? super AbstractPage> filter)
Returns the abstract pages from a space that exactly match the given title and are in any of the specified
statuses, and match the given filter, limited to the pagination request.
|
PageResponse<AbstractPage> |
getAbstractPages(String title,
List<ContentStatus> statuses,
LimitedRequest pageRequest,
com.google.common.base.Predicate<? super AbstractPage> filter)
Returns the abstract pages that exactly match the given title, are in any of the specified statuses, and match
the given filter, limited to the pagination request.
|
PageResponse<AbstractPage> |
getAbstractPagesByCreationDate(org.joda.time.DateTime date,
LimitedRequest pageRequest,
com.google.common.base.Predicate<? super AbstractPage> filter)
Returns the abstract pages created on the given date, that also match the given filter, limited to the page
request.
|
PageResponse<AbstractPage> |
getAbstractPagesByTitle(String title,
LimitedRequest pageRequest,
com.google.common.base.Predicate<? super AbstractPage> filter)
Returns the abstract pages that exactly match the given title, limited to the pagination request.
|
Iterator |
getAllCurrentEntities() |
Map<Long,List<Long>> |
getAncestorsFor(Collection<Long> ids)
Get the list page ids of the ancestors of the given page ids.
|
int |
getAuthoredPagesCountByUser(String username) |
PageResponse<BlogPost> |
getBlogPosts(Space space,
LimitedRequest pageRequest,
com.google.common.base.Predicate<? super BlogPost> filter)
Retrieves a page response of all the current blog posts in the give space.
|
ContentEntityObject |
getById(long id) |
PageResponse<Page> |
getChildren(Page page,
LimitedRequest pageRequest,
com.google.common.base.Predicate<? super Page> predicate,
Depth depth)
Returns the children of a page which have a status of CURRENT, limited to the pagination requested.
|
int |
getCommentCountOnPage(long id)
Count the number of comments on the passed in page.
|
List |
getContentAuthoredByUser(String username) |
Map<Long,ContributionStatus> |
getContributionStatusByUser(Collection<ContentId> contentIds,
com.atlassian.sal.api.user.UserKey userKey)
Identifies the most recent contributions made to a Collection of content by the given user.
|
PageDao |
getDelegateDao() |
List<Long> |
getDescendantIds(Page page)
Finds the ids of all descendant pages of the given page
|
List<Long> |
getDescendantIds(Page page,
ContentStatus... statuses)
Finds the ids of all descendant pages of the given page
|
List<Page> |
getDescendants(Page page)
Finds all descendant pages (recursive) of the given page
|
List<String> |
getDescendantTitles(Page page)
Finds all descendant titles of the given page
|
List<Long> |
getDescendentIds(Page page) |
List<Page> |
getDescendents(Page page) |
PageResponse<Page> |
getDraftChildren(Page page,
LimitedRequest pageRequest,
Depth depth)
Returns the children of a page which have a status of DRAFT, limited to the pagination requested.
|
ContentEntityObject |
getFirstVersionAfter(long originalVersionContentId,
int version) |
ContentEntityObject |
getFirstVersionBefore(long originalVersionContentId,
int version) |
List<ContentEntityObject> |
getLastEditedVersionsOf(ContentEntityObject content)
Retrieves all the last edited versions for each user who has contributed to the specified piece of content.
|
Integer |
getMaxSiblingPosition(Page page)
Gets the highest position value of all the page's siblings.
|
String |
getObjectType(long id) |
Date |
getOldestPageCreationDate()
Gets the creation date of the oldest page.
|
List<Page> |
getOrphanedPages(String spaceKey) |
Page |
getPage(Space space,
String pageTitle)
Get the page by space and title.
|
PageResponse<AbstractPage> |
getPageAndBlogPostsVersionsLastEditedByUser(com.atlassian.sal.api.user.UserKey userKey,
LimitedRequest request)
Retrieve a page of entities, either the current version or historical version, that have been modified by the user,
in order of the user's most recent modification.
|
PageResponse<AbstractPage> |
getPageAndBlogPostsVersionsLastEditedByUserIncludingDrafts(com.atlassian.sal.api.user.UserKey userKey,
LimitedRequest request)
Retrieve a page of entities, either the current version or historical version, that have been modified by the user,
in order of the user's most recent modification.
|
Page |
getPageById(long id)
Get the page with the given id.
|
Page |
getPageByIdWithComments(long id)
Get the page with the given id, and perform an eager load of the comments and their children.
|
long |
getPageCount(String spaceKey)
Get total number of current pages in a space
|
Collection<Long> |
getPageIds(Space space)
Get the ids of all pages (current and historical) in the given space.
|
List<Page> |
getPageInTrash(String spaceKey,
String title) |
PageResponse<Page> |
getPages(LimitedRequest pageRequest,
com.google.common.base.Predicate<? super Page> filter)
Retrieves a page response of all the current pages of the Confluence instance.
|
List<Page> |
getPages(Space space,
boolean currentOnly) |
PageResponse<Page> |
getPages(Space space,
LimitedRequest pageRequest,
com.google.common.base.Predicate<? super Page> filter)
Retrieves a page response of the current content in the given space.
|
List<Page> |
getPagesByIds(Iterable<Long> ids)
Get the pages with the given ids.
|
List<Page> |
getPagesCreatedOrUpdatedSinceDate(Date previousLoginDate) |
List<Page> |
getPagesStartingWith(Space space,
String s) |
List<Page> |
getPagesWithPermissions(Space space)
Get all current pages in a space and eagerly fetch permissions at the same time.
|
Page |
getPageWithComments(Space space,
String pageTitle)
Get the page by space and title, and perform an eager load of the comments and their children.
|
List<Page> |
getPermissionPages(Space space) |
Class |
getPersistentClass() |
Iterator |
getRecentlyAddedEntities(String spaceKey,
int maxResults) |
List<Page> |
getRecentlyAddedPages(int maxCount,
String spaceKey) |
List<Page> |
getRecentlyAuthoredPagesByUser(String username,
int maxCount) |
Iterator |
getRecentlyModifiedEntities(int maxResults) |
Iterator |
getRecentlyModifiedEntities(String spaceKey,
int maxResults) |
Iterator |
getRecentlyModifiedEntitiesForUser(String username) |
List |
getRecentlyModifiedForChangeDigest(Date fromDate)
Retrieves a list of
ContentEntityObject s that have been newly added or modified
since the date specified. |
List<Page> |
getRecentlyUpdatedPages(int maxCount,
String spaceKey) |
List<Page> |
getTopLevelPages(Space space) |
PageResponse<Page> |
getTopLevelPages(Space space,
LimitedRequest limitedRequest,
com.google.common.base.Predicate<? super Page> predicate) |
List |
getTrashedContent(String spaceKey) |
List<OutgoingLink> |
getUndefinedLinks(String spaceKey) |
List<Page> |
getUndefinedPages(String spaceKey) |
ContentEntityObject |
getVersion(long originalVersionContentId,
int version) |
Map<Long,List<ConfluenceUser>> |
getVersionEditContributors(Iterable<ContentEntityObject> originalVersions)
Get version edit contributors for a set of content identifiers.
|
List<VersionHistorySummary> |
getVersionHistorySummary(long originalContentId) |
PageResponse<VersionHistorySummary> |
getVersionHistorySummary(long originalContentId,
LimitedRequest request)
Get version history with pagination.
|
Map<Long,ContentEntityObject> |
getVersionsLastEditedByUser(Collection<Long> contentIds,
com.atlassian.sal.api.user.UserKey userKey)
Gets the
ContentEntityObject objects, either the current version or historical version relating to
given contentIds of the current version that was the most recent version edited by the given user. |
Map<Long,ContentEntityObject> |
getVersionsLastEditedByUserNew(Collection<Long> contentIds,
com.atlassian.sal.api.user.UserKey userKey)
Same as
ContentEntityObjectDao.getVersionsLastEditedByUser(Collection, UserKey) , but a refined implementation for
new Recently Worked On Drafts work. |
void |
refresh(com.atlassian.core.bean.EntityObject objectToRefresh)
Refreshes the object again with the fresh data from db.
|
void |
remove(com.atlassian.core.bean.EntityObject object)
Remove object from persistence.
|
void |
replicate(Object objectToReplicate)
Replicate the object.
|
void |
save(com.atlassian.core.bean.EntityObject objectToSave) |
void |
save(com.atlassian.core.bean.EntityObject objectToSave,
com.atlassian.core.bean.EntityObject originalObject) |
void |
saveRaw(com.atlassian.core.bean.EntityObject objectToSave)
saves the object.
|
@Deprecated public CachingPageDao(PageDao delegateDao, PageIdCache pageIdCache)
CachingPageDao(PageDao, VCacheFactory)
public CachingPageDao(PageDao delegateDao, com.atlassian.vcache.VCacheFactory cacheFactory)
public PageDao getDelegateDao()
public Page getPage(Space space, String pageTitle)
PageDao
public Page getPageWithComments(Space space, String pageTitle)
PageDao
getPageWithComments
in interface PageDao
space
- The space the page belongs topageTitle
- The title of the pagepublic void remove(com.atlassian.core.bean.EntityObject object)
ObjectDao
public void save(com.atlassian.core.bean.EntityObject objectToSave, com.atlassian.core.bean.EntityObject originalObject)
save
in interface VersionedObjectDao
public void save(com.atlassian.core.bean.EntityObject objectToSave)
public void saveRaw(com.atlassian.core.bean.EntityObject objectToSave)
ObjectDao
@Nonnull public List findAll()
ObjectDao
@Nonnull public List findAllSorted(String s)
ObjectDao
findAllSorted
in interface ObjectDao
s
- the name of the property to be sorted on. This should be null if no sorting is required.@Nonnull public List findAllSorted(String s, boolean cached, int firstRow, int maxRows)
ObjectDao
findAllSorted
in interface ObjectDao
s
- the name of the property to be sorted on. This should be null if no sorting is required.cached
- control whether the results should be cachedfirstRow
- the index of the first result to be returnedmaxRows
- the maximum number of results required. Use -1 to specify no limit.@Nonnull public <T> PageResponse<T> findByClassIds(Iterable<Long> ids, LimitedRequest limitedRequest, com.google.common.base.Predicate<? super T> filter)
ObjectDao
findByClassIds
in interface ObjectDao
T
- the type of entity to returnids
- - the ids of the entities to findlimitedRequest
- the pagination request defining the page size to fetchfilter
- a predicate to do in memory filtering of the result set before returningpublic long findLatestVersionsCount()
VersionedObjectDao
findLatestVersionsCount
in interface VersionedObjectDao
public Iterator findLatestVersionsIterator()
VersionedObjectDao
findLatestVersionsIterator
in interface VersionedObjectDao
public List<Page> findPagesWithHistoricalTitle(String pageTitle)
findPagesWithHistoricalTitle
in interface PageDao
public List findPreviousVersions(long originalContentId)
findPreviousVersions
in interface ContentEntityObjectDao
public List<AbstractPage> findPagesWithCurrentOrHistoricalTitleInPermittedSpace(SpacePermissionQueryBuilder permissionQueryBuilder, String pageTitle, Space space, int maxResultCount)
PageDao
Only pages in spaces the remote user is able to view will be returned.
findPagesWithCurrentOrHistoricalTitleInPermittedSpace
in interface PageDao
pageTitle
- title of a page in a previous version.space
- Space to search. Must not be null.maxResultCount
- maximum pages to returnpublic List<AbstractPage> findBlogsWithCurrentOrHistoricalTitleInPermittedSpace(SpacePermissionQueryBuilder permissionQueryBuilder, String blogTitle, Space space, int maxResultCount)
PageDao
Only blogs in spaces the remote user is able to view will be returned.
findBlogsWithCurrentOrHistoricalTitleInPermittedSpace
in interface PageDao
permissionQueryBuilder
- required to determine how to construct database queries for space permissions, for
the current userblogTitle
- title of a page in a previous version.space
- Space to search. Must not be null.maxResultCount
- maximum pages to returnpublic List<AbstractPage> findBlogsWithCurrentOrHistoricalTitleInAllPermittedSpacesExcept(SpacePermissionQueryBuilder permissionQueryBuilder, String blogTitle, Space space, int maxResultCount)
PageDao
Only pages in spaces the remote user is able to view will be returned.
findBlogsWithCurrentOrHistoricalTitleInAllPermittedSpacesExcept
in interface PageDao
blogTitle
- Title of the blog to findspace
- Space to exclude from search. If null, all spaces are searched.maxResultCount
- maximum blog posts to returnpublic List<AbstractPage> findPagesWithCurrentOrHistoricalTitleInAllPermittedSpacesExcept(SpacePermissionQueryBuilder permissionQueryBuilder, String pageTitle, Space space, int maxResultCount)
PageDao
Only pages in spaces the remote user is able to view will be returned.
findPagesWithCurrentOrHistoricalTitleInAllPermittedSpacesExcept
in interface PageDao
pageTitle
- title of a page in a previous version.space
- Space to exclude from search. If null, all spaces are searched.maxResultCount
- maximum pages to returnpublic List<ContentPermissionSummary> findContentPermissionSummaryByIds(Collection<Long> ids)
PageDao
findContentPermissionSummaryByIds
in interface PageDao
ids
- of Contentpublic Iterator getAllCurrentEntities()
getAllCurrentEntities
in interface ContentEntityObjectDao
public int getAuthoredPagesCountByUser(String username)
getAuthoredPagesCountByUser
in interface PageDao
public ContentEntityObject getById(long id)
getById
in interface ContentEntityObjectDao
public List getContentAuthoredByUser(String username)
getContentAuthoredByUser
in interface ContentEntityObjectDao
public List<Long> getDescendantIds(Page page)
PageDao
getDescendantIds
in interface PageDao
public List<Long> getDescendantIds(Page page, ContentStatus... statuses)
PageDao
getDescendantIds
in interface PageDao
public int countPagesInSubtree(Page page)
PageDao
countPagesInSubtree
in interface PageDao
public List<Long> getDescendentIds(Page page)
getDescendentIds
in interface PageDao
public List<Page> getDescendants(Page page)
PageDao
getDescendants
in interface PageDao
public List<String> getDescendantTitles(Page page)
PageDao
getDescendantTitles
in interface PageDao
public List<Page> getDescendents(Page page)
getDescendents
in interface PageDao
public ContentEntityObject getFirstVersionAfter(long originalVersionContentId, int version)
getFirstVersionAfter
in interface ContentEntityObjectDao
public ContentEntityObject getFirstVersionBefore(long originalVersionContentId, int version)
getFirstVersionBefore
in interface ContentEntityObjectDao
public String getObjectType(long id)
getObjectType
in interface ContentEntityObjectDao
public List<Page> getOrphanedPages(String spaceKey)
getOrphanedPages
in interface PageDao
public Page getPageById(long id)
PageDao
getPageById
in interface PageDao
id
- of the page to loadpublic List<Page> getPagesByIds(Iterable<Long> ids)
getPagesByIds
in interface PageDao
public Page getPageByIdWithComments(long id)
PageDao
getPageByIdWithComments
in interface PageDao
id
- of the page to loadpublic int getCommentCountOnPage(long id)
PageDao
getCommentCountOnPage
in interface PageDao
public List<Page> getPageInTrash(String spaceKey, String title)
getPageInTrash
in interface PageDao
public Map<Long,List<Long>> getAncestorsFor(Collection<Long> ids)
PageDao
getAncestorsFor
in interface PageDao
ids
- the list of page ids to get ancestor page ids forpublic List<Page> getPagesWithPermissions(Space space)
PageDao
getPagesWithPermissions
in interface PageDao
public PageResponse<Page> getPages(Space space, LimitedRequest pageRequest, com.google.common.base.Predicate<? super Page> filter)
PageDao
public PageResponse<Page> getPages(LimitedRequest pageRequest, com.google.common.base.Predicate<? super Page> filter)
PageDao
public PageResponse<BlogPost> getBlogPosts(Space space, LimitedRequest pageRequest, @Nullable com.google.common.base.Predicate<? super BlogPost> filter)
PageDao
getBlogPosts
in interface PageDao
space
- the space to locate the blog posts inpageRequest
- the start and offset of the pages to retrievefilter
- the predicate to filter the returned results by, may be nullpublic List<Page> getPagesCreatedOrUpdatedSinceDate(Date previousLoginDate)
getPagesCreatedOrUpdatedSinceDate
in interface PageDao
public List<Page> getPagesStartingWith(Space space, String s)
getPagesStartingWith
in interface PageDao
public List<Page> getPermissionPages(Space space)
getPermissionPages
in interface PageDao
public Class getPersistentClass()
getPersistentClass
in interface ObjectDao
public Iterator getRecentlyAddedEntities(String spaceKey, int maxResults)
getRecentlyAddedEntities
in interface ContentEntityObjectDao
public List<Page> getRecentlyAddedPages(int maxCount, String spaceKey)
getRecentlyAddedPages
in interface PageDao
public List<Page> getRecentlyAuthoredPagesByUser(String username, int maxCount)
getRecentlyAuthoredPagesByUser
in interface PageDao
public Iterator getRecentlyModifiedEntities(int maxResults)
getRecentlyModifiedEntities
in interface ContentEntityObjectDao
public Iterator getRecentlyModifiedEntities(String spaceKey, int maxResults)
getRecentlyModifiedEntities
in interface ContentEntityObjectDao
public Iterator getRecentlyModifiedEntitiesForUser(String username)
getRecentlyModifiedEntitiesForUser
in interface ContentEntityObjectDao
public List getRecentlyModifiedForChangeDigest(Date fromDate)
ContentEntityObjectDao
ContentEntityObject
s that have been newly added or modified
since the date specified. This list excludes drafts, space descriptions and mail.getRecentlyModifiedForChangeDigest
in interface ContentEntityObjectDao
fromDate
- content modified after this date will be returnedContentEntityObject
s that have been newly added or modified
since the date specifiedpublic List<Page> getRecentlyUpdatedPages(int maxCount, String spaceKey)
getRecentlyUpdatedPages
in interface PageDao
public List<Page> getTopLevelPages(Space space)
getTopLevelPages
in interface PageDao
public PageResponse<Page> getTopLevelPages(Space space, LimitedRequest limitedRequest, com.google.common.base.Predicate<? super Page> predicate)
getTopLevelPages
in interface PageDao
public PageResponse<Page> getChildren(Page page, LimitedRequest pageRequest, com.google.common.base.Predicate<? super Page> predicate, Depth depth)
PageDao
getChildren
in interface PageDao
page
- the page to find children forpageRequest
- the pagination requestedpredicate
- predicate used to entitiesdepth
- the depth to return children topublic PageResponse<Page> getDraftChildren(Page page, LimitedRequest pageRequest, Depth depth)
PageDao
getDraftChildren
in interface PageDao
page
- the page to find children forpageRequest
- the pagination requesteddepth
- the depth to return children topublic Integer getMaxSiblingPosition(Page page)
PageDao
getMaxSiblingPosition
in interface PageDao
page
- The page whose siblings from which to get the max positionpublic Collection<Long> getPageIds(Space space)
PageDao
getPageIds
in interface PageDao
space
- space to retrieve page ids from, can not be null.public PageResponse<AbstractPage> getAbstractPagesByTitle(String title, LimitedRequest pageRequest, com.google.common.base.Predicate<? super AbstractPage> filter)
PageDao
getAbstractPagesByTitle
in interface PageDao
title
- the title of the page to matchpageRequest
- the pagination requestedfilter
- the predicate to apply to the results before returningpublic PageResponse<AbstractPage> getAbstractPagesByCreationDate(org.joda.time.DateTime date, LimitedRequest pageRequest, com.google.common.base.Predicate<? super AbstractPage> filter)
PageDao
getAbstractPagesByCreationDate
in interface PageDao
date
- - the creation date to matchpageRequest
- the pagination requestfilter
- the predicate to apply to the results before returningpublic PageResponse<AbstractPage> getAbstractPages(List<ContentType> contentTypes, List<ContentStatus> statuses, LimitedRequest pageRequest, @Nullable com.google.common.base.Predicate<? super AbstractPage> filter)
PageDao
getAbstractPages
in interface PageDao
contentTypes
- list of content types to findstatuses
- list of statuses the pages can be inpageRequest
- the start and offset of the pages to retrievefilter
- the predicate to filter the returned results by, may be nullpublic PageResponse<AbstractPage> getAbstractPages(Space space, List<ContentType> contentTypes, List<ContentStatus> statuses, LimitedRequest pageRequest, @Nullable com.google.common.base.Predicate<? super AbstractPage> filter)
PageDao
getAbstractPages
in interface PageDao
space
- the space to locate the page incontentTypes
- list of content types to findstatuses
- list of statuses the pages can be inpageRequest
- the pagination requestfilter
- the predicate to pages the returned results by, may be nullpublic PageResponse<AbstractPage> getAbstractPages(Space space, String title, List<ContentStatus> statuses, LimitedRequest pageRequest, com.google.common.base.Predicate<? super AbstractPage> filter)
PageDao
getAbstractPages
in interface PageDao
space
- space the page belongs totitle
- the title of the page to matchstatuses
- list of statuses the content can be inpageRequest
- the pagination requestedfilter
- the predicate to apply to the results before returningpublic PageResponse<AbstractPage> getAbstractPages(String title, List<ContentStatus> statuses, LimitedRequest pageRequest, com.google.common.base.Predicate<? super AbstractPage> filter)
PageDao
getAbstractPages
in interface PageDao
title
- the title of the page to matchstatuses
- list of statuses the content can be inpageRequest
- the pagination requestedfilter
- the predicate to apply to the results before returningpublic PageResponse<AbstractPage> getAbstractPages(org.joda.time.DateTime date, List<ContentStatus> statuses, LimitedRequest pageRequest, com.google.common.base.Predicate<? super AbstractPage> filter)
PageDao
getAbstractPages
in interface PageDao
date
- the creation date to matchstatuses
- list of statuses the content can be inpageRequest
- the pagination requestfilter
- the predicate to apply to the results before returningpublic Date getOldestPageCreationDate()
ContentEntityObjectDao
getOldestPageCreationDate
in interface ContentEntityObjectDao
public List getTrashedContent(String spaceKey)
getTrashedContent
in interface ContentEntityObjectDao
public List<Page> getUndefinedPages(String spaceKey)
getUndefinedPages
in interface PageDao
public final List<OutgoingLink> getUndefinedLinks(@Nullable String spaceKey)
getUndefinedLinks
in interface PageDao
public ContentEntityObject getVersion(long originalVersionContentId, int version)
getVersion
in interface ContentEntityObjectDao
public List<VersionHistorySummary> getVersionHistorySummary(long originalContentId)
getVersionHistorySummary
in interface ContentEntityObjectDao
public PageResponse<VersionHistorySummary> getVersionHistorySummary(long originalContentId, LimitedRequest request)
ContentEntityObjectDao
getVersionHistorySummary
in interface ContentEntityObjectDao
originalContentId
- the content Id of latest version, the CURRENT versionrequest
- page request contains start, limit fields for pagination purpose.public Map<Long,List<ConfluenceUser>> getVersionEditContributors(Iterable<ContentEntityObject> originalVersions)
ContentEntityObjectDao
getVersionEditContributors
in interface ContentEntityObjectDao
originalVersions
- the contents of latest versions, the CURRENT versionspublic Map<Long,ContentEntityObject> getVersionsLastEditedByUser(Collection<Long> contentIds, com.atlassian.sal.api.user.UserKey userKey)
ContentEntityObjectDao
ContentEntityObject
objects, either the current version or historical version relating to
given contentIds of the current version that was the most recent version edited by the given user. Only content
with a "current" status are returned.getVersionsLastEditedByUser
in interface ContentEntityObjectDao
contentIds
- the ids of the content we're interested in. These *must* be ids of the latest version.userKey
- the userKey of the user that we're interested inContentEntityObject
objects relating to the version of the given contentIds that were last
edited by the given user.public Map<Long,ContentEntityObject> getVersionsLastEditedByUserNew(Collection<Long> contentIds, com.atlassian.sal.api.user.UserKey userKey)
ContentEntityObjectDao
ContentEntityObjectDao.getVersionsLastEditedByUser(Collection, UserKey)
, but a refined implementation for
new Recently Worked On Drafts work.
TODO: replace ContentEntityObjectDao.getVersionsLastEditedByUser(Collection, UserKey)
with the implementation of this methodgetVersionsLastEditedByUserNew
in interface ContentEntityObjectDao
public Map<Long,ContributionStatus> getContributionStatusByUser(Collection<ContentId> contentIds, com.atlassian.sal.api.user.UserKey userKey)
ContentEntityObjectDao
It takes a Collection of contentIds and returns a Map of contentIds to ContributionStatuses for the supplied Ids. If non existing ContentIds are used, they will not be present in the returned Map. If no contribution status can be found for the supplied contentIds, they will not be present in the returned Map. Anonymous users are not supported.
getContributionStatusByUser
in interface ContentEntityObjectDao
contentIds
- the IDs of the content we want to query. These *must* be IDs of the latest versionuserKey
- the userKey of the user who's changes we are interested inContributionStatus
of each contentpublic void refresh(com.atlassian.core.bean.EntityObject objectToRefresh)
ObjectDao
public void replicate(Object objectToReplicate)
ObjectDao
public List<ContentEntityObject> getLastEditedVersionsOf(ContentEntityObject content)
ContentEntityObjectDao
getLastEditedVersionsOf
in interface ContentEntityObjectDao
content
- content (must be the latest version)public List<ContentEntityObject> findContentBySpaceIdAndStatus(long spaceId, String status, int offset, int count)
ContentEntityObjectDao
findContentBySpaceIdAndStatus
in interface ContentEntityObjectDao
spaceId
- the id of the spacestatus
- the status of the content being retrieved (e.g. ContentEntityObject.DELETED
offset
- the offset of the first item to retrieve (0-based)count
- the maximum number of items to retrievepublic PageResponse<ContentEntityObject> findContentBySpaceIdAndStatus(long spaceId, String status, LimitedRequest limitedRequest, com.google.common.base.Predicate<Page> predicate)
ContentEntityObjectDao
findContentBySpaceIdAndStatus
in interface ContentEntityObjectDao
spaceId
- the id of the spacestatus
- the status of the content being retrieved (e.g. ContentEntityObject.DELETED
limitedRequest
- - the start and offset of the pages to retrievepredicate
- - a predicate to filter the returned results bypublic int countContentBySpaceIdAndStatus(long spaceId, String status)
ContentEntityObjectDao
countContentBySpaceIdAndStatus
in interface ContentEntityObjectDao
spaceId
- the id of the spacestatus
- the status of the content being retrieved (e.g. ContentEntityObject.DELETED
public List findHistoricalVersionsAfterVersion(long originalContentId, int version)
findHistoricalVersionsAfterVersion
in interface ContentEntityObjectDao
public List<ContentEntityObject> findAllDraftsFor(long contentId)
ContentEntityObjectDao
findAllDraftsFor
in interface ContentEntityObjectDao
contentId
- id of the content to retrieve the draft forContentEntityObject.DRAFT
public ContentEntityObject findDraftFor(long contentId)
ContentEntityObjectDao
findDraftFor
in interface ContentEntityObjectDao
contentId
- id of the content to retrieve the draft forContentEntityObject.DRAFT
public PageResponse<AbstractPage> getPageAndBlogPostsVersionsLastEditedByUser(com.atlassian.sal.api.user.UserKey userKey, LimitedRequest request)
ContentEntityObjectDao
getPageAndBlogPostsVersionsLastEditedByUser
in interface ContentEntityObjectDao
userKey
- the key for the user for whom to retrieve the modified contentrequest
- the requestpublic PageResponse<AbstractPage> getPageAndBlogPostsVersionsLastEditedByUserIncludingDrafts(com.atlassian.sal.api.user.UserKey userKey, LimitedRequest request)
ContentEntityObjectDao
getPageAndBlogPostsVersionsLastEditedByUserIncludingDrafts
in interface ContentEntityObjectDao
userKey
- the key for the user for whom to retrieve the modified contentrequest
- the requestpublic List<ContentEntityObject> findUnpublishedContentWithUserContributions(String username)
ContentEntityObjectDao
User
findUnpublishedContentWithUserContributions
in interface ContentEntityObjectDao
username
- the owner of the draftsContentEntityObject
with the
ContentEntityObject.DRAFT
statuspublic int countAllPages()
PageDao
countAllPages
in interface PageDao
public int countCurrentPages()
PageDao
countCurrentPages
in interface PageDao
public int countDraftPages()
PageDao
countDraftPages
in interface PageDao
public int countPagesWithUnpublishedChanges()
PageDao
countPagesWithUnpublishedChanges
in interface PageDao
public long getPageCount(@Nonnull String spaceKey)
PageDao
getPageCount
in interface PageDao
spaceKey
- the space to look for posts inCopyright © 2003–2017 Atlassian. All rights reserved.