Class ContentPackageBuilder


  • public final class ContentPackageBuilder
    extends java.lang.Object
    Builds a ContentPackage instance with metadata. This class is not thread-safe.
    • Constructor Detail

      • ContentPackageBuilder

        public ContentPackageBuilder()
    • Method Detail

      • name

        public ContentPackageBuilder name​(java.lang.String value)
        Set content package name.
        Parameters:
        value - Package name
        Returns:
        this
      • group

        public ContentPackageBuilder group​(java.lang.String value)
        Set content package group.
        Parameters:
        value - Package group
        Returns:
        this
      • description

        public ContentPackageBuilder description​(java.lang.String value)
        Set content package description.
        Parameters:
        value - Package description
        Returns:
        this
      • createdBy

        public ContentPackageBuilder createdBy​(java.lang.String value)
        Set use name who created the package.
        Parameters:
        value - Created by user name (default: 'admin')
        Returns:
        this
      • created

        public ContentPackageBuilder created​(java.util.Date value)
        Set timestamp for package creation.
        Parameters:
        value - Creation timestamp (default: now)
        Returns:
        this
      • version

        public ContentPackageBuilder version​(java.lang.String value)
        Set package version.
        Parameters:
        value - Package version
        Returns:
        this
      • acHandling

        public ContentPackageBuilder acHandling​(AcHandling value)
        Set access control handling.
        Parameters:
        value - Access control handling mode
        Returns:
        this
      • packageType

        public ContentPackageBuilder packageType​(java.lang.String value)
        Set package type.
        Parameters:
        value - Package type.
        Returns:
        this
      • requiresRoot

        public ContentPackageBuilder requiresRoot​(boolean value)
        Set requires root status
        Parameters:
        value - Requires root status
        Returns:
        this
      • requiresRestart

        public ContentPackageBuilder requiresRestart​(boolean value)
        Set requires restart status
        Parameters:
        value - Requires restart status
        Returns:
        this
      • allowIndexDefinitions

        public ContentPackageBuilder allowIndexDefinitions​(boolean value)
        Set allow index definitions root status
        Parameters:
        value - allow index definitions status
        Returns:
        this
      • rootPath

        public ContentPackageBuilder rootPath​(java.lang.String value)
        Creates a package filter with this root path. This implicitly adds a PackageFilter with this pah and no further rules. If this is executed multiple times multiple filters are addded.
        Parameters:
        value - Root path for package
        Returns:
        this
      • filter

        public ContentPackageBuilder filter​(PackageFilter value)
        Add package filter. If this is executed multiple times multiple filters are added.
        Parameters:
        value - Package filter optionally with include/exclude rules.
        Returns:
        this
      • property

        public ContentPackageBuilder property​(java.lang.String property,
                                              java.lang.Object value)
        Add custom package metadata property.
        Parameters:
        property - Property name
        value - Property value
        Returns:
        this
      • xmlNamespace

        public ContentPackageBuilder xmlNamespace​(java.lang.String prefix,
                                                  java.lang.String uri)
        Register a XML namespace that is used by your content added to the JCR XML. This method can be called multiple times to register multiple namespaces. The JCR namespaces "jcr", "nt", "cq" and "sling" are registered by default.
        Parameters:
        prefix - Namespace prefix
        uri - Namespace URI
        Returns:
        this
      • thumbnailImage

        public ContentPackageBuilder thumbnailImage​(java.io.InputStream is)
                                             throws java.io.IOException
        Set thumbnail PNG image.
        Parameters:
        is - Input stream with Thumbnail PNG image binary data
        Returns:
        this
        Throws:
        java.io.IOException - I/O exception
      • build

        public ContentPackage build​(java.io.OutputStream outputStream)
                             throws java.io.IOException
        Build ContentPackage to which additional content (Pages or binary files) can be added. Please make sure you call the ContentPackage.close() method when all content was added.
        Parameters:
        outputStream - Output stream
        Returns:
        Content package
        Throws:
        java.io.IOException - I/O exception
      • build

        public ContentPackage build​(java.io.File file)
                             throws java.io.IOException
        Build ContentPackage to which additional content (Pages or binary files) can be added. Please make sure you call the ContentPackage.close() method when all content was added.
        Parameters:
        file - Output file
        Returns:
        Content package
        Throws:
        java.io.IOException - I/O exception