Class ContentModelFormProcessor<ItemType,​PersistType>

    • Field Detail

      • nodeService

        protected org.alfresco.service.cmr.repository.NodeService nodeService
        Services
      • dictionaryService

        protected org.alfresco.service.cmr.dictionary.DictionaryService dictionaryService
      • namespaceService

        protected org.alfresco.service.namespace.NamespaceService namespaceService
      • permissionService

        protected org.alfresco.service.cmr.security.PermissionService permissionService
      • propertyNamePattern

        protected java.util.regex.Pattern propertyNamePattern
        A regular expression which can be used to match property names. These names will look like "prop_cm_name". The pattern can also be used to extract the "cm" and the "name" parts.
      • transientPropertyPattern

        protected java.util.regex.Pattern transientPropertyPattern
        A regular expression which can be used to match tranisent property names. These names will look like "prop_name". The pattern can also be used to extract the "name" part.
      • associationNamePattern

        protected java.util.regex.Pattern associationNamePattern
        A regular expression which can be used to match association names. These names will look like "assoc_cm_references_added". The pattern can also be used to extract the "cm", the "name" and the suffix parts.
    • Constructor Detail

      • ContentModelFormProcessor

        public ContentModelFormProcessor()
    • Method Detail

      • setNodeService

        public void setNodeService​(org.alfresco.service.cmr.repository.NodeService nodeService)
        Sets the node service
        Parameters:
        nodeService - The NodeService instance
      • setFileFolderService

        public void setFileFolderService​(FileFolderService fileFolderService)
        Sets the file folder service
        Parameters:
        fileFolderService - The FileFolderService instance
      • setDictionaryService

        public void setDictionaryService​(org.alfresco.service.cmr.dictionary.DictionaryService dictionaryService)
        Sets the data dictionary service
        Parameters:
        dictionaryService - The DictionaryService instance
      • setNamespaceService

        public void setNamespaceService​(org.alfresco.service.namespace.NamespaceService namespaceService)
        Sets the namespace service
        Parameters:
        namespaceService - The NamespaceService instance
      • setContentService

        public void setContentService​(ContentService contentService)
        Sets the content service
        Parameters:
        contentService - The ContentService instance
      • setPermissionService

        public void setPermissionService​(org.alfresco.service.cmr.security.PermissionService permissionService)
        Sets the content service
        Parameters:
        permissionService - The PermissionService instance
      • addPropertyDataIfRequired

        protected void addPropertyDataIfRequired​(org.alfresco.service.namespace.QName propName,
                                                 Form form,
                                                 ContentModelItemData<?> itemData)
      • getDefaultIgnoredFields

        protected java.util.List<java.lang.String> getDefaultIgnoredFields()
        Description copied from class: FilteredFormProcessor
        When a Form is generated with no field names specifically set then a default Form is created. The default Form contains all the properties and associations related to the Item, excluding a blacklist of ignored fields which defaults to the return value of this method. The default ignored values can be overridden by setting the property ignoredFields.
        Specified by:
        getDefaultIgnoredFields in class FilteredFormProcessor<ItemType,​PersistType>
        Returns:
        the names of all the fields to be excluded from the default Form if no defaultFields property is explicitly set.
      • getAspectNames

        protected java.util.Set<org.alfresco.service.namespace.QName> getAspectNames​(ItemType item)
      • getAssociationValues

        protected abstract java.util.Map<org.alfresco.service.namespace.QName,​java.io.Serializable> getAssociationValues​(ItemType item)
      • getPropertyValues

        protected abstract java.util.Map<org.alfresco.service.namespace.QName,​java.io.Serializable> getPropertyValues​(ItemType item)
      • getTransientValues

        protected abstract java.util.Map<java.lang.String,​java.lang.Object> getTransientValues​(ItemType item)
      • getBaseType

        protected abstract org.alfresco.service.cmr.dictionary.TypeDefinition getBaseType​(ItemType item)
      • persistNode

        protected void persistNode​(org.alfresco.service.cmr.repository.NodeRef nodeRef,
                                   FormData data)
        Persists the given FormData on the given NodeRef
        Parameters:
        nodeRef - The NodeRef to persist the form data on
        data - The FormData to persist
      • processPropertyPersist

        protected void processPropertyPersist​(org.alfresco.service.cmr.repository.NodeRef nodeRef,
                                              java.util.Map<org.alfresco.service.namespace.QName,​org.alfresco.service.cmr.dictionary.PropertyDefinition> propDefs,
                                              FormData.FieldData fieldData,
                                              java.util.Map<org.alfresco.service.namespace.QName,​java.io.Serializable> propsToPersist,
                                              FormData data)
        Processes the given field data for persistence as a property.
        Parameters:
        nodeRef - The NodeRef to persist the properties on
        propDefs - Map of PropertyDefinition's for the node being persisted
        fieldData - Data to persist for the property
        propsToPersist - Map of properties to be persisted
        data - The FormData to persist
      • processAssociationPersist

        protected void processAssociationPersist​(org.alfresco.service.cmr.repository.NodeRef nodeRef,
                                                 java.util.Map<org.alfresco.service.namespace.QName,​org.alfresco.service.cmr.dictionary.AssociationDefinition> assocDefs,
                                                 java.util.Map<org.alfresco.service.namespace.QName,​org.alfresco.service.cmr.dictionary.ChildAssociationDefinition> childAssocDefs,
                                                 FormData.FieldData fieldData,
                                                 java.util.List<org.alfresco.repo.forms.processor.node.AbstractAssocCommand> assocCommands)
        Processes the given field data for persistence as an association.
        Parameters:
        nodeRef - The NodeRef to persist the associations on
        fieldData - Data to persist for the associations
        assocCommands - List of associations to be persisted
      • processNamePropertyPersist

        protected void processNamePropertyPersist​(org.alfresco.service.cmr.repository.NodeRef nodeRef,
                                                  FormData.FieldData fieldData,
                                                  java.util.Map<org.alfresco.service.namespace.QName,​java.io.Serializable> propsToPersist)
        Persists the given field data as the name property
        Parameters:
        nodeRef - The NodeRef to update the name for
        fieldData - The data representing the new name value
        propsToPersist - Map of properties to be persisted
      • processMimetypePropertyPersist

        protected void processMimetypePropertyPersist​(org.alfresco.service.cmr.repository.NodeRef nodeRef,
                                                      FormData.FieldData fieldData,
                                                      java.util.Map<org.alfresco.service.namespace.QName,​java.io.Serializable> propsToPersist)
        Persists the given field data as the mimetype property
        Parameters:
        nodeRef - The NodeRef to update the mimetype for
        fieldData - The data representing the new mimetype value
        propsToPersist - Map of properties to be persisted
      • processEncodingPropertyPersist

        protected void processEncodingPropertyPersist​(org.alfresco.service.cmr.repository.NodeRef nodeRef,
                                                      FormData.FieldData fieldData,
                                                      java.util.Map<org.alfresco.service.namespace.QName,​java.io.Serializable> propsToPersist)
        Persists the given field data as the encoding property
        Parameters:
        nodeRef - The NodeRef to update the encoding for
        fieldData - The data representing the new encoding value
        propsToPersist - Map of properties to be persisted
      • processContentPropertyPersist

        protected void processContentPropertyPersist​(org.alfresco.service.cmr.repository.NodeRef nodeRef,
                                                     FormData.FieldData fieldData,
                                                     java.util.Map<org.alfresco.service.namespace.QName,​java.io.Serializable> propsToPersist,
                                                     FormData data)
        Persists the given field data as the content
        Parameters:
        nodeRef - The NodeRef to update the content for
        fieldData - The data representing the new content
        propsToPersist - Map of properties to be persisted
        data - The form data being persisted
      • determineDefaultMimetype

        protected java.lang.String determineDefaultMimetype​(FormData data)
        Looks through the form data for the 'mimetype' transient field and returns it's value if found, otherwise the default 'text/plain' is returned
        Parameters:
        data - Form data being persisted
        Returns:
        The default mimetype