Class ExportUtils


  • public class ExportUtils
    extends Object
    • Field Detail

      • PROP_BUILD_NUMBER

        public static final String PROP_BUILD_NUMBER
        build number of the earliest confluence version that this export can be imported by
        See Also:
        Constant Field Values
      • PROP_EXPORTED_SPACEKEY

        public static final String PROP_EXPORTED_SPACEKEY
        Indicates a specific space key which has been exported. Used for single-space backups only
        See Also:
        Constant Field Values
      • PROP_EXPORTED_SPACEKEYS

        public static final String PROP_EXPORTED_SPACEKEYS
        Indicates a collections of space keys which have been exported. Used for both single and multiple-space backups.
        See Also:
        Constant Field Values
      • PROP_CREATED_BY_BUILD_NUMBER

        public static final String PROP_CREATED_BY_BUILD_NUMBER
        build number of the version of confluence that was used to generate export
        See Also:
        Constant Field Values
      • PROP_DEFAULT_USERS_GROUP

        public static final String PROP_DEFAULT_USERS_GROUP
        Default users group for this instance, used to remap group permissions on import. See {#link com.atlassian.studio.confluence.importexport.PermissionsImportPreProcessor}
        See Also:
        Constant Field Values
      • PROP_PLUGIN_CREATED_BY_VERSION

        public static final String PROP_PLUGIN_CREATED_BY_VERSION
        Plugin version used to export (Mostly for ActiveObjects data)
        See Also:
        Constant Field Values
      • PROP_PLUGIN_EARLIEST_VERSION

        public static final String PROP_PLUGIN_EARLIEST_VERSION
        Earliest plugin version compatible with export
        See Also:
        Constant Field Values
    • Constructor Detail

      • ExportUtils

        public ExportUtils()
    • Method Detail

      • getTitleAsFilename

        public static String getTitleAsFilename​(ContentEntityObject ceo)

        Utility method to return a version of the content entity's title that's suitable to be used as a filename in an export. Falls back to using the content entity's ID if the title contains unsuitable characters.

        This method is used to centralise the code since symmetry is required in the creation of the files during export and the creation of the links to these files in the exported content.

        Parameters:
        ceo - the ContentEntityObject to retrieve a suitable filename for.
        Returns:
        a suitable filename for the object.
      • getTitleAsFilename

        public static String getTitleAsFilename​(SearchResult searchResult)

        Utility method to return a version of the search result's title that's suitable to be used as a filename in an export. Falls back to using the ID of the entity if the title contains unsuitable characters.

        This method is used to centralise the code since symmetry is required in the creation of the files during export and the creation of the links to these files in the exported content.

        Parameters:
        searchResult - the SearchResult to retrieve a suitable filename for.
        Returns:
        a suitable filename for the object.
      • getTitleAsHref

        public static String getTitleAsHref​(ContentEntityObject ceo)

        For a URL encoded filename to be used in a link it will need to be double encoded (since the browser will decode the single encoding when resolving the link, and we have files with encoded names on the filesystem).

        This utility method calls getTitleAsFilename(ContentEntityObject) to determine the name of the object on the filesystem. It will then perform a URL encode of the filename, making it suitable for use in links.

        This is centralised here since links are created both in Velocity (for the index page) and for individual pages as they are exported.

        Parameters:
        ceo - the ContentEntityObject to be made suitable for use in an href.
        Returns:
        the URL-safe version of the filename for the object.
      • getTitleAsHref

        public static String getTitleAsHref​(SearchResult searchResult)

        For a URL encoded filename to be used in a link it will need to be double encoded (since the browser will decode the single encoding when resolving the link, and we have files with encoded names on the filesystem).

        This utility method calls getTitleAsFilename(SearchResult) to determine the name of the object on the filesystem. It will then perform a URL encode of the filename, making it suitable for use in links.

        This is centralised here since links are created both in Velocity (for the index page) and for individual pages as they are exported.

        Parameters:
        searchResult - the SearchResult to be made suitable for use in an href.
        Returns:
        the URL-safe version of the filename for the object.