Class CmsContainerElementBean

    • Constructor Detail

      • CmsContainerElementBean

        public CmsContainerElementBean​(CmsFile file,
                                       CmsUUID formatterId,
                                       java.util.Map<java.lang.String,​java.lang.String> individualSettings,
                                       boolean inMemoryOnly,
                                       java.lang.String editorHash,
                                       boolean createNew)
        Creates a new container page element bean.

        Parameters:
        file - the element's file
        formatterId - the formatter's structure id, could be null
        individualSettings - the element settings as a map of name/value pairs
        inMemoryOnly - the in memory flag
        editorHash - the editor hash to use
        createNew - true if a new element should be created replacing the given one on first edit of a container-page
      • CmsContainerElementBean

        public CmsContainerElementBean​(CmsUUID elementId,
                                       CmsUUID formatterId,
                                       java.util.Map<java.lang.String,​java.lang.String> individualSettings,
                                       boolean createNew)
        Creates a new container page element bean.

        Parameters:
        elementId - the element's structure id
        formatterId - the formatter's structure id, could be null
        individualSettings - the element settings as a map of name/value pairs
        createNew - true if a new element should be created replacing the given one on first edit of a container-page
    • Method Detail

      • cloneWithSettings

        public static CmsContainerElementBean cloneWithSettings​(CmsContainerElementBean source,
                                                                java.util.Map<java.lang.String,​java.lang.String> settings)
        Clones the given element bean with a different set of settings.

        Parameters:
        source - the element to clone
        settings - the new settings
        Returns:
        the element bean
      • createElementForResourceType

        public static CmsContainerElementBean createElementForResourceType​(CmsObject cms,
                                                                           I_CmsResourceType resourceType,
                                                                           java.lang.String targetFolder,
                                                                           java.util.Map<java.lang.String,​java.lang.String> individualSettings,
                                                                           boolean isCopyModels,
                                                                           java.util.Locale locale)
                                                                    throws CmsException
        Creates an element bean for the given resource type.

        The represented resource will be in memory only and not in the VFS!!!.

        Parameters:
        cms - the CMS context
        resourceType - the resource type
        targetFolder - the parent folder of the resource
        individualSettings - the element settings as a map of name/value pairs
        isCopyModels - if this element when used in models should be copied instead of reused
        locale - the locale to use
        Returns:
        the created element bean
        Throws:
        CmsException - if something goes wrong creating the element
        java.lang.IllegalArgumentException - if the resource type not instance of CmsResourceTypeXmlContent
      • addFormatterSetting

        public void addFormatterSetting​(java.lang.String containerName,
                                        java.lang.String formatterId)
        Adds a formatter setting.

        Parameters:
        containerName - the container name
        formatterId - the formatter id
      • editorHash

        public java.lang.String editorHash()
        Returns the ADE client editor has value.

        Returns:
        the ADE client editor has value
      • ensureNewInstanceId

        public void ensureNewInstanceId()
        Ensures the element has a new element instance id.

      • equals

        public boolean equals​(java.lang.Object obj)
        Overrides:
        equals in class java.lang.Object
        See Also:
        Object.equals(java.lang.Object)
      • getFormatterId

        public CmsUUID getFormatterId()
        Returns the structure id of the formatter of this element.

        Returns:
        the structure id of the formatter of this element
      • getId

        public CmsUUID getId()
        Returns the structure id of the resource of this element.

        Returns:
        the structure id of the resource of this element
      • getIndividualSettings

        public java.util.Map<java.lang.String,​java.lang.String> getIndividualSettings()
        Returns the settings of this element.

        Returns:
        the settings of this element
      • getInstanceId

        public java.lang.String getInstanceId()
        Returns the element instance id.

        Returns:
        the element instance id
      • getSettings

        public java.util.Map<java.lang.String,​java.lang.String> getSettings()
        Returns the element settings including default values for settings not set.

        Will return null if the element bean has not been initialized with initResource(org.opencms.file.CmsObject).

        Returns:
        the element settings
      • getTypeName

        public java.lang.String getTypeName()
        Returns the resource type name.

        Returns:
        the type name
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
        See Also:
        Object.hashCode()
      • initResource

        public void initResource​(CmsObject cms)
                          throws CmsException
        Initializes the resource and the site path of this element.

        Parameters:
        cms - the CMS context
        Throws:
        CmsException - if something goes wrong reading the element resource
      • initSettings

        public void initSettings​(CmsObject cms,
                                 CmsADEConfigData config,
                                 I_CmsFormatterBean formatterBean,
                                 java.util.Locale locale,
                                 javax.servlet.ServletRequest request,
                                 java.util.Map<java.lang.String,​java.lang.String> presets)
        Initializes the element settings.

        Parameters:
        cms - the CMS context
        formatterBean - the formatter configuration bean
        locale - the content locale
        request - the current request, if available
        presets - the presets for container element settings
      • isCopyModel

        public boolean isCopyModel()
        Returns if the given element should be used as a copy model.

        Returns:
        true if the given element should be used as a copy model
      • isCreateNew

        public boolean isCreateNew()
        Returns if a new element should be created replacing the given one on first edit of a container-page.

        Returns:
        true if a new element should be created replacing the given one on first edit of a container-page
      • isDoNotCache

        public boolean isDoNotCache()
        Checks if the element is uncacheable.
        Returns:
        true if the element is uncacheable
      • isGroupContainer

        public boolean isGroupContainer​(CmsObject cms)
                                 throws CmsException
        Tests whether this element refers to a group container.

        Parameters:
        cms - the CmsObject used for VFS operations
        Returns:
        true if the container element refers to a group container
        Throws:
        CmsException - if something goes wrong
      • isHistoryContent

        public boolean isHistoryContent()
        Checks if the element is used for displaying a historical content (usually from the history dialog).
        Returns:
        true if the element is used for displaying a historical content
      • isInheritedContainer

        public boolean isInheritedContainer​(CmsObject cms)
                                     throws CmsException
        Returns whether this element refers to an inherited container element.

        Parameters:
        cms - the CmsObject used for VFS operations
        Returns:
        true if the container element refers to an inherited container
        Throws:
        CmsException - if something goes wrong
      • isInMemoryOnly

        public boolean isInMemoryOnly()
        Returns if the represented resource is in memory only and not persisted in the VFS.

        Returns:
        true if the represented resource is in memory only and not persisted in the VFS
      • isModelGroup

        public boolean isModelGroup()
        Returns if the given element is a model group.

        Returns:
        true if the given element is a model group
      • isModelGroupAlwaysReplace

        public boolean isModelGroupAlwaysReplace()
        Returns if all instances of this element should be replaced within a copy model.

        Returns:
        true if all instances of this element should be replaced within a copy model
      • isReleasedAndNotExpired

        public boolean isReleasedAndNotExpired()
        Returns if the element resource is released and not expired.

        Returns:
        true if the element resource is released and not expired
      • isTemporaryContent

        public boolean isTemporaryContent()
        Returns if the element resource contains temporary file content.

        Returns:
        true if the element resource contains temporary file content
      • setDoNotCache

        public void setDoNotCache​(boolean doNotCache)
        Enables / disables 'do not cache' status, which prevents the element from being cached in the session cache.
        Parameters:
        doNotCache - the new value
      • setFormatterId

        public void setFormatterId​(CmsUUID formatterId)
        Sets the formatter id.

        Parameters:
        formatterId - the formatter id
      • setHistoryFile

        public void setHistoryFile​(CmsFile file)
        Sets a historical file.

        Parameters:
        file - the historical file
      • setInheritanceInfo

        public void setInheritanceInfo​(CmsInheritanceInfo inheritanceInfo)
        Sets the inheritance info for this element.

        Parameters:
        inheritanceInfo - the inheritance info
      • setTemporaryFile

        public void setTemporaryFile​(CmsFile elementFile)
        Sets the element resource as a temporary file.

        Parameters:
        elementFile - the temporary file
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
        See Also:
        Object.toString()
      • updateIndividualSettings

        public void updateIndividualSettings​(java.util.Map<java.lang.String,​java.lang.String> newSettings)
        Updates the individual settings.

        This causes all merged settings (from defaults etc.) to be lost.

        Parameters:
        newSettings - the new settings