Class TemplateNode

  • All Implemented Interfaces:
    Serializable, TemplateContent, TemplateNodeRef, TemplatePermissions, TemplateProperties, org.alfresco.service.namespace.NamespacePrefixResolverProvider
    Direct Known Subclasses:
    CategoryTemplateNode

    public class TemplateNode
    extends BasePermissionsNode
    implements org.alfresco.service.namespace.NamespacePrefixResolverProvider
    Node class specific for use by Template pages that support Bean objects as part of the model. The default template engine FreeMarker can use these objects and they are provided to support it. A single method is completely freemarker specific - getXmlNodeModel()

    The class exposes Node properties, children as dynamically populated maps and lists.

    Various helper methods are provided to access common and useful node variables such as the content url and type information.

    See Template_Guide

    Author:
    Kevin Roast
    See Also:
    Serialized Form
    • Field Detail

      • nodeRef

        protected org.alfresco.service.cmr.repository.NodeRef nodeRef
        Cached values
    • Constructor Detail

      • TemplateNode

        public TemplateNode​(org.alfresco.service.cmr.repository.NodeRef nodeRef,
                            ServiceRegistry services,
                            TemplateImageResolver resolver)
        Constructor
        Parameters:
        nodeRef - The NodeRef this Node wrapper represents
        services - The ServiceRegistry the TemplateNode can use to access services
        resolver - Image resolver to use to retrieve icons
    • Method Detail

      • getStoreType

        public String getStoreType()
        Returns:
        the store type for the node
      • getStoreId

        public String getStoreId()
        Returns:
        the store id for the node
      • getNodeRef

        public org.alfresco.service.cmr.repository.NodeRef getNodeRef()
        Specified by:
        getNodeRef in interface TemplateNodeRef
        Returns:
        Returns the NodeRef this Node object represents
      • getExists

        public boolean getExists()
        Returns:
        true if this node still exists
      • getIsWorkingCopy

        public boolean getIsWorkingCopy()
        Returns:
        true if this node is a working copy
      • getType

        public org.alfresco.service.namespace.QName getType()
        Specified by:
        getType in interface TemplateNodeRef
        Returns:
        Returns the type.
      • getParentTypeShort

        public String getParentTypeShort()
        Returns:
        Returns the type of the parent
      • getTypeShort

        public String getTypeShort()
        Returns:
        Returns the type in short format.
      • getAssocs

        public Map<String,​List<TemplateNode>> getAssocs()
        Returns:
        Target associations for this Node. As a Map of assoc name to a List of TemplateNodes.
      • getSourceAssocs

        public Map<String,​List<TemplateNode>> getSourceAssocs()
        Returns:
        Source associations for this Node. As a Map of assoc name to a List of TemplateNodes.
      • getChildAssocs

        public Map<String,​List<TemplateNode>> getChildAssocs()
        Returns:
        The child associations for this Node. As a Map of assoc name to a List of TemplateNodes.
      • getChildAssocsByType

        public List<TemplateNode> getChildAssocsByType​(String type)
        Returns:
        The list of children of this Node that match a specific object type.
      • getIsLocked

        public boolean getIsLocked()
        Returns:
        true if the node is currently locked
      • getIsCategory

        public boolean getIsCategory()
        Returns:
        true if the node is a Category instance
      • getPrimaryParentAssoc

        public org.alfresco.service.cmr.repository.ChildAssociationRef getPrimaryParentAssoc()
        Returns:
        the primary parent association so we can access the association QName and association type QName.
      • getXmlNodeModel

        public freemarker.ext.dom.NodeModel getXmlNodeModel()
        Returns:
        FreeMarker NodeModel for the XML content of this node, or null if no parsable XML found
      • getChildByNamePath

        public Map getChildByNamePath()
        Returns:
        A map capable of returning the TemplateNode at the specified Path as a child of this node.
      • getChildrenByXPath

        public Map getChildrenByXPath()
        Returns:
        A map capable of returning a List of TemplateNode objects from an XPath query as children of this node.
      • getChildrenBySavedSearch

        public Map getChildrenBySavedSearch()
        Returns:
        A map capable of returning a List of TemplateNode objects from an NodeRef to a Saved Search object. The Saved Search is executed and the resulting nodes supplied as a sequence.
      • getChildrenByLuceneSearch

        public Map getChildrenByLuceneSearch()
        Returns:
        A map capable of returning a List of TemplateNode objects from an NodeRef to a Lucene search string. The Saved Search is executed and the resulting nodes supplied as a sequence.
      • getNodeByReference

        public Map getNodeByReference()
        Returns:
        A map capable of returning a TemplateNode for a single specified NodeRef reference.
      • getImageResolver

        public TemplateImageResolver getImageResolver()
        Returns:
        the image resolver instance used by this node
      • getNamespacePrefixResolver

        public org.alfresco.service.namespace.NamespacePrefixResolver getNamespacePrefixResolver()
        Specified by:
        getNamespacePrefixResolver in interface org.alfresco.service.namespace.NamespacePrefixResolverProvider