Class NodeFormProcessor

  • All Implemented Interfaces:
    FormProcessor

    public class NodeFormProcessor
    extends ContentModelFormProcessor<org.alfresco.service.cmr.repository.NodeRef,​org.alfresco.service.cmr.repository.NodeRef>
    FormProcessor implementation that can generate and persist Form objects for repository nodes.
    Author:
    Gavin Cornwell, Nick Smith
    • Constructor Detail

      • NodeFormProcessor

        public NodeFormProcessor()
    • Method Detail

      • getLogger

        protected org.apache.commons.logging.Log getLogger()
        Description copied from class: FilteredFormProcessor
        Retrieves a logger instance to log to.
        Specified by:
        getLogger in class FilteredFormProcessor<org.alfresco.service.cmr.repository.NodeRef,​org.alfresco.service.cmr.repository.NodeRef>
        Returns:
        Log instance to log to.
      • getTypedItem

        protected org.alfresco.service.cmr.repository.NodeRef getTypedItem​(Item item)
        Description copied from class: FilteredFormProcessor
        Returns a typed Object representing the given item.

        Subclasses that represent a form type will return a typed object that is then passed to each of it's handlers, the handlers can therefore safely cast the Object to the type they expect.

        Specified by:
        getTypedItem in class FilteredFormProcessor<org.alfresco.service.cmr.repository.NodeRef,​org.alfresco.service.cmr.repository.NodeRef>
        Parameters:
        item - The item to get a typed object for
        Returns:
        The typed object
      • getItemType

        protected java.lang.String getItemType​(org.alfresco.service.cmr.repository.NodeRef item)
        Description copied from class: FilteredFormProcessor
        Returns a String describing the type fo the specified item.
        Specified by:
        getItemType in class FilteredFormProcessor<org.alfresco.service.cmr.repository.NodeRef,​org.alfresco.service.cmr.repository.NodeRef>
        Parameters:
        item - ItemType
        Returns:
        String
      • getItemURI

        protected java.lang.String getItemURI​(org.alfresco.service.cmr.repository.NodeRef item)
        Description copied from class: FilteredFormProcessor
        Returns the URI location of the specified item.
        Specified by:
        getItemURI in class FilteredFormProcessor<org.alfresco.service.cmr.repository.NodeRef,​org.alfresco.service.cmr.repository.NodeRef>
        Parameters:
        item - ItemType
        Returns:
        String
      • getPropertyValues

        protected java.util.Map<org.alfresco.service.namespace.QName,​java.io.Serializable> getPropertyValues​(org.alfresco.service.cmr.repository.NodeRef nodeRef)
        Specified by:
        getPropertyValues in class ContentModelFormProcessor<org.alfresco.service.cmr.repository.NodeRef,​org.alfresco.service.cmr.repository.NodeRef>
      • getAssociationValues

        protected java.util.Map<org.alfresco.service.namespace.QName,​java.io.Serializable> getAssociationValues​(org.alfresco.service.cmr.repository.NodeRef item)
        Specified by:
        getAssociationValues in class ContentModelFormProcessor<org.alfresco.service.cmr.repository.NodeRef,​org.alfresco.service.cmr.repository.NodeRef>
      • getTransientValues

        protected java.util.Map<java.lang.String,​java.lang.Object> getTransientValues​(org.alfresco.service.cmr.repository.NodeRef item)
        Specified by:
        getTransientValues in class ContentModelFormProcessor<org.alfresco.service.cmr.repository.NodeRef,​org.alfresco.service.cmr.repository.NodeRef>
      • getAspectNames

        protected java.util.Set<org.alfresco.service.namespace.QName> getAspectNames​(org.alfresco.service.cmr.repository.NodeRef nodeRef)
        Overrides:
        getAspectNames in class ContentModelFormProcessor<org.alfresco.service.cmr.repository.NodeRef,​org.alfresco.service.cmr.repository.NodeRef>
      • getBaseType

        protected org.alfresco.service.cmr.dictionary.TypeDefinition getBaseType​(org.alfresco.service.cmr.repository.NodeRef nodeRef)
        Specified by:
        getBaseType in class ContentModelFormProcessor<org.alfresco.service.cmr.repository.NodeRef,​org.alfresco.service.cmr.repository.NodeRef>
      • processWorkingCopy

        protected void processWorkingCopy​(org.alfresco.service.cmr.repository.NodeRef nodeRef,
                                          Form form)
        Determines whether the given node represents a working copy, if it does the name field is searched for and set to protected as the name field should not be edited for a working copy. If the node is not a working copy this method has no effect.
        Parameters:
        nodeRef - NodeRef of node to check and potentially process
        form - The generated form
      • internalGenerate

        protected void internalGenerate​(org.alfresco.service.cmr.repository.NodeRef item,
                                        java.util.List<java.lang.String> fields,
                                        java.util.List<java.lang.String> forcedFields,
                                        Form form,
                                        java.util.Map<java.lang.String,​java.lang.Object> context)
        Description copied from class: FilteredFormProcessor
        Generates the form.
        Overrides:
        internalGenerate in class FilteredFormProcessor<org.alfresco.service.cmr.repository.NodeRef,​org.alfresco.service.cmr.repository.NodeRef>
        Parameters:
        item - The object to generate a form for
        fields - Restricted list of fields to include
        forcedFields - List of fields to forcibly include
        form - The form object being generated
        context - Map representing optional context that can be used during retrieval of the form
      • internalPersist

        protected org.alfresco.service.cmr.repository.NodeRef internalPersist​(org.alfresco.service.cmr.repository.NodeRef item,
                                                                              FormData data)
        Description copied from class: FilteredFormProcessor
        Persists the form data.
        Specified by:
        internalPersist in class FilteredFormProcessor<org.alfresco.service.cmr.repository.NodeRef,​org.alfresco.service.cmr.repository.NodeRef>
        Parameters:
        item - The object to persist the form for
        data - The data to persist
        Returns:
        The object that got created or modified