public class

HibernateDraftDao

extends HibernateObjectDao
implements DraftDao
java.lang.Object
   ↳ org.springframework.dao.support.DaoSupport
     ↳ org.springframework.orm.hibernate.support.HibernateDaoSupport
       ↳ com.atlassian.hibernate.HibernateObjectDao
         ↳ com.atlassian.confluence.pages.persistence.dao.hibernate.HibernateDraftDao

Class Overview

Database storage for drafts. Does not permit anonymous drafts (i.e. those with a null username), which should be stored in non-permanent storage like the HTTP session.

See Also

Summary

[Expand]
Inherited Fields
From class com.atlassian.hibernate.HibernateObjectDao
From class org.springframework.dao.support.DaoSupport
Public Constructors
HibernateDraftDao()
Public Methods
List<Draft> findByCreatorName(String creatorName)
Returns the drafts stored against the given username.
List<Draft> getAllDraftsForSpace(String spaceKey)
Draft getDraft(String pageId, String creatorName, String draftType, String spaceKey)
Finds and returns a draft object with all the specified properties or null if none is found.
Draft getDraft(long draftId)
Returns the draft with the given ID, or null if no draft is found with that ID.
Class getPersistentClass()
void remove(Draft draft)
Removes a draft based on its page ID, owner and type.
void remove(long id)
Remove a draft based on its ID.
void removeAll()
Removes all drafts in the data store.
void saveOrUpdate(Draft draft)
Saves the draft.
void updateSpaceKey(String newSpaceKey, String oldSpaceKey)
Changes all drafts with a space key of oldSpaceKey to have newSpaceKey.
[Expand]
Inherited Methods
From class com.atlassian.hibernate.HibernateObjectDao
From class org.springframework.orm.hibernate.support.HibernateDaoSupport
From class org.springframework.dao.support.DaoSupport
From class java.lang.Object
From interface bucket.core.persistence.ObjectDao
From interface com.atlassian.confluence.pages.persistence.dao.DraftDao
From interface org.springframework.beans.factory.InitializingBean

Public Constructors

public HibernateDraftDao ()

Public Methods

public List<Draft> findByCreatorName (String creatorName)

Returns the drafts stored against the given username.

public List<Draft> getAllDraftsForSpace (String spaceKey)

public Draft getDraft (String pageId, String creatorName, String draftType, String spaceKey)

Finds and returns a draft object with all the specified properties or null if none is found.

Parameters
pageId the id of the page which this draft is associated with
creatorName the owner of the draft
draftType the type of draft, which is usually the result of calling ContentEntityObject#getType()
spaceKey space key, if relevant for the draft. This is used to enable NEW page drafts across multiple spaces
Returns
  • a draft object with all the specified properties or null if no valid draft could be found

public Draft getDraft (long draftId)

Returns the draft with the given ID, or null if no draft is found with that ID.

public Class getPersistentClass ()

public void remove (Draft draft)

Removes a draft based on its page ID, owner and type. Does nothing if such a draft is not found in the data store.

public void remove (long id)

Remove a draft based on its ID. Does nothing if such a draft is not found in the data store.

public void removeAll ()

Removes all drafts in the data store.

public void saveOrUpdate (Draft draft)

Saves the draft.

public void updateSpaceKey (String newSpaceKey, String oldSpaceKey)

Changes all drafts with a space key of oldSpaceKey to have newSpaceKey.

Parameters
newSpaceKey the new space key
oldSpaceKey the old space key