Class HibernateAttachmentDataDao

    • Constructor Detail

      • HibernateAttachmentDataDao

        public HibernateAttachmentDataDao()
        Deprecated, for removal: This API element is subject to removal in a future version.
    • Method Detail

      • findAll

        public @NonNull List findAll()
        Deprecated, for removal: This API element is subject to removal in a future version.
        Description copied from class: HibernateObjectDao
        Find all objects of the class provided by getPersistentClass()
        Specified by:
        findAll in interface ObjectDao
        Specified by:
        findAll in interface ObjectDaoInternal
        Overrides:
        findAll in class HibernateObjectDao
        Returns:
        a list of all objects of the appropriate class, or the empty list if no objects are found
      • findAllSorted

        public @NonNull List findAllSorted​(String s)
        Deprecated, for removal: This API element is subject to removal in a future version.
        Description copied from interface: ObjectDaoInternal
        Find all objects currently persisted of a particular type and sort results by named property.
        Specified by:
        findAllSorted in interface ObjectDao
        Specified by:
        findAllSorted in interface ObjectDaoInternal
        Overrides:
        findAllSorted in class HibernateObjectDao
        Parameters:
        s - the name of the property to be sorted on. This should be null if no sorting is required.
      • save

        public void save​(com.atlassian.core.bean.EntityObject objectToSave)
        Deprecated, for removal: This API element is subject to removal in a future version.
        Description copied from class: HibernateObjectDao
        Save an object. The object's last-modified time will be updated, and if the object is searchable it will be indexed.
        Specified by:
        save in interface ObjectDao
        Specified by:
        save in interface ObjectDaoInternal
        Overrides:
        save in class HibernateObjectDao
        Parameters:
        objectToSave - the object to save
      • getAttachmentDataForAttachment

        protected AttachmentData getAttachmentDataForAttachment​(Attachment attachment)
                                                         throws AttachmentDataNotFoundException
        Deprecated, for removal: This API element is subject to removal in a future version.
        Retrieves the attachment data object for a given attachment.
        Parameters:
        attachment - the attachment to retrieve data for
        Returns:
        attachment data for the provided attachment
        Throws:
        AttachmentDataNotFoundException - if the attachment data is not found
        org.springframework.dao.IncorrectResultSizeDataAccessException - if the database contains more than one data object associated with the given attachment
      • removeDataForAttachment

        public void removeDataForAttachment​(Attachment attachment,
                                            ContentEntityObject originalContent)
        Deprecated, for removal: This API element is subject to removal in a future version.
        Description copied from interface: AttachmentDataDao
        Removes all attachment data for the given attachment. Since Confluence 4.2 the contract of this method has been clarified. It now removes all versions of the given attachment.
        Specified by:
        removeDataForAttachment in interface AttachmentDataDao
        Parameters:
        attachment - the latest version of the attachment for which the data should be removed
        originalContent - the content the attachment belongs to
      • removeDataForAttachmentVersion

        public void removeDataForAttachmentVersion​(Attachment attachment,
                                                   ContentEntityObject originalContent)
        Deprecated, for removal: This API element is subject to removal in a future version.
        Description copied from interface: AttachmentDataDao
        Removes the attachment data for the given attachment version.
        Specified by:
        removeDataForAttachmentVersion in interface AttachmentDataDao
        Parameters:
        attachment - the version of the attachment for which the data should be removed
        originalContent - the content the attachment belongs to
      • removeDataForAttachmentVersion

        public void removeDataForAttachmentVersion​(Attachment attachmentVersion,
                                                   ContentEntityObject originalContent,
                                                   AttachmentDataStreamType dataStreamType)
        Deprecated, for removal: This API element is subject to removal in a future version.
        Description copied from interface: AttachmentDataDao
        Removes the attachment data of the specific stream type for the given attachment version.
        Specified by:
        removeDataForAttachmentVersion in interface AttachmentDataDao
        Parameters:
        attachmentVersion - the version of the attachment for which the data should be removed
        originalContent - the content the attachment belongs to
        dataStreamType - the data stream type
      • saveDataForAttachment

        public void saveDataForAttachment​(Attachment attachment,
                                          InputStream data)
        Deprecated, for removal: This API element is subject to removal in a future version.
        Description copied from interface: AttachmentDataDao
        Saves data to the attachment data store
        Specified by:
        saveDataForAttachment in interface AttachmentDataDao
        Parameters:
        attachment - the Attachment the data belongs to
        data - the InputStream to be written
      • saveDataForAttachmentVersion

        public void saveDataForAttachmentVersion​(Attachment attachment,
                                                 Attachment previousVersion,
                                                 InputStream data)
        Deprecated, for removal: This API element is subject to removal in a future version.
        Description copied from interface: AttachmentDataDao
        Saves data to the attachment data store, for an attachment that has been updated.

        This method assumes that the attachment has already been saved.

        Specified by:
        saveDataForAttachmentVersion in interface AttachmentDataDao
        Parameters:
        attachment - the new version of the attachment
        previousVersion - the previous version of the attachment
        data - the InputStream representing the data
      • replaceDataForAttachment

        public void replaceDataForAttachment​(Attachment attachment,
                                             InputStream data)
        Deprecated, for removal: This API element is subject to removal in a future version.
        Description copied from interface: AttachmentDataDao
        Sets the data for attachment

        This method will overwrite any existing data for the attachment.

        Specified by:
        replaceDataForAttachment in interface AttachmentDataDao
        Parameters:
        attachment - Attachment the data belongs to
        data - the data to be saved
      • isAttachmentPresent

        public boolean isAttachmentPresent​(Attachment attachment)
        Deprecated, for removal: This API element is subject to removal in a future version.
        Description copied from interface: AttachmentDataDao
        Check that an attachment exists
        Specified by:
        isAttachmentPresent in interface AttachmentDataDao
        Parameters:
        attachment - the Attachment to be checked
      • moveAttachment

        public void moveAttachment​(Attachment attachment,
                                   Attachment oldAttachment,
                                   ContentEntityObject newContent)
        Deprecated, for removal: This API element is subject to removal in a future version.
        Description copied from interface: AttachmentDataDao
        Moves an attachment to a new file name or content object
        Specified by:
        moveAttachment in interface AttachmentDataDao
        Parameters:
        attachment - the Attachment to be moved
        oldAttachment - the original version of the attachment
        newContent - the new content the Attachment belongs to
      • prepareForMigrationTo

        public void prepareForMigrationTo()
        Deprecated, for removal: This API element is subject to removal in a future version.
        This implementation clears out the Attachment data table, so we have a clean base for migration. It circumvents hibernate, so should only be called when nobody else can see the attachment data.
        Specified by:
        prepareForMigrationTo in interface AttachmentDataDao
      • afterMigrationFrom

        public void afterMigrationFrom()
        Deprecated, for removal: This API element is subject to removal in a future version.
        Once a data migration has occurred, remove all records from the table, as they are no longer necessary, and we don't want foreign key violations to occur when removing Attachments. It circumvents hibernate, so should only be called when nobody else can see the data.
        Specified by:
        afterMigrationFrom in interface AttachmentDataDao
      • getStorageType

        public AttachmentDataStorageType getStorageType()
        Deprecated, for removal: This API element is subject to removal in a future version.
        Description copied from interface: AttachmentDataDao
        Returns the storage type.

        The client code should be storage agnostic in general. Thus this method should only be used in rare cases in order to hide operations which are known to be not implemented for the specific type.

        Specified by:
        getStorageType in interface AttachmentDataDao
        Returns:
        the storage type
      • saveDataForAttachment

        public void saveDataForAttachment​(Attachment attachment,
                                          AttachmentDataStream dataStream)
        Deprecated, for removal: This API element is subject to removal in a future version.
        Description copied from interface: AttachmentDataDao
        Saves data to the attachment data store
        Specified by:
        saveDataForAttachment in interface AttachmentDataDao
        Parameters:
        attachment - the Attachment the data belongs to
        dataStream - the data stream to be written
      • saveDataForAttachmentVersion

        public void saveDataForAttachmentVersion​(Attachment attachment,
                                                 Attachment previousVersion,
                                                 AttachmentDataStream dataStream)
        Deprecated, for removal: This API element is subject to removal in a future version.
        Description copied from interface: AttachmentDataDao
        Saves data to the attachment data store, for an attachment that has been updated.

        This method assumes that the attachment has already been saved.

        Specified by:
        saveDataForAttachmentVersion in interface AttachmentDataDao
        Parameters:
        attachment - the new version of the attachment
        previousVersion - the previous version of the attachment
        dataStream - the InputStream representing the data
      • replaceDataForAttachment

        public void replaceDataForAttachment​(Attachment attachment,
                                             AttachmentDataStream dataStream)
        Deprecated, for removal: This API element is subject to removal in a future version.
        Description copied from interface: AttachmentDataDao
        Sets the data for attachment

        This method will overwrite any existing data for the attachment.

        Specified by:
        replaceDataForAttachment in interface AttachmentDataDao
        Parameters:
        attachment - Attachment the data belongs to
        dataStream - the data to be saved