Package org.nuxeo.template.service
Class TemplateProcessorComponent
- java.lang.Object
 - 
- org.nuxeo.runtime.model.DefaultComponent
 - 
- org.nuxeo.template.service.TemplateProcessorComponent
 
 
 
- 
- All Implemented Interfaces:
 Adaptable,Component,Extensible,TimestampedService,TemplateProcessorService
public class TemplateProcessorComponent extends DefaultComponent implements TemplateProcessorService
Runtime Component used to handle Extension Points and expose theTemplateProcessorServiceinterface- Author:
 - Tiry
 
 
- 
- 
Nested Class Summary
Nested Classes Modifier and Type Class Description static classTemplateProcessorComponent.TemplateProcessorInvalidationclassTemplateProcessorComponent.TemplateProcessorInvalidator 
- 
Field Summary
Fields Modifier and Type Field Description static StringCONTEXT_EXTENSION_XPprotected ContextFactoryRegistrycontextExtensionRegistryprotected TemplateProcessorComponent.TemplateProcessorInvalidatorinvalidatorprotected static org.apache.logging.log4j.Loggerlogstatic StringOUTPUT_FORMAT_EXTENSION_XPprotected OutputFormatRegistryoutputFormatRegistrystatic StringPROCESSOR_XPprotected TemplateProcessorRegistryprocessorRegistryprotected static StringTEMPLATE_PROCESSOR_INVAL_PUBSUB_TOPICprotected Map<String,List<String>>type2Template- 
Fields inherited from class org.nuxeo.runtime.model.DefaultComponent
lastModified, name 
 - 
 
- 
Constructor Summary
Constructors Constructor Description TemplateProcessorComponent() 
- 
Method Summary
- 
Methods inherited from class org.nuxeo.runtime.model.DefaultComponent
addRuntimeMessage, addRuntimeMessage, getAdapter, getDescriptor, getDescriptors, getLastModified, getRegistry, register, registerExtension, setLastModified, setModifiedNow, setName, unregister, unregisterExtension 
- 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait 
- 
Methods inherited from interface org.nuxeo.runtime.model.Component
applicationStarted, getApplicationStartedOrder 
 - 
 
 - 
 
- 
- 
Field Detail
- 
log
protected static final org.apache.logging.log4j.Logger log
 
- 
PROCESSOR_XP
public static final String PROCESSOR_XP
- See Also:
 - Constant Field Values
 
 
- 
CONTEXT_EXTENSION_XP
public static final String CONTEXT_EXTENSION_XP
- See Also:
 - Constant Field Values
 
 
- 
OUTPUT_FORMAT_EXTENSION_XP
public static final String OUTPUT_FORMAT_EXTENSION_XP
- See Also:
 - Constant Field Values
 
 
- 
TEMPLATE_PROCESSOR_INVAL_PUBSUB_TOPIC
protected static final String TEMPLATE_PROCESSOR_INVAL_PUBSUB_TOPIC
- See Also:
 - Constant Field Values
 
 
- 
contextExtensionRegistry
protected ContextFactoryRegistry contextExtensionRegistry
 
- 
processorRegistry
protected TemplateProcessorRegistry processorRegistry
 
- 
outputFormatRegistry
protected OutputFormatRegistry outputFormatRegistry
 
- 
invalidator
protected TemplateProcessorComponent.TemplateProcessorInvalidator invalidator
 
 - 
 
- 
Method Detail
- 
activate
public void activate(ComponentContext context)
Description copied from interface:ComponentActivates the component.This method is called by the runtime when a component is activated.
- Specified by:
 activatein interfaceComponent- Overrides:
 activatein classDefaultComponent- Parameters:
 context- the runtime context
 
- 
start
public void start(ComponentContext context)
Description copied from interface:ComponentStart the component. This method is called after all the components were resolved and activated- Specified by:
 startin interfaceComponent- Overrides:
 startin classDefaultComponent
 
- 
stop
public void stop(ComponentContext context) throws InterruptedException
Description copied from interface:ComponentStop the component.- Specified by:
 stopin interfaceComponent- Overrides:
 stopin classDefaultComponent- Throws:
 InterruptedException
 
- 
deactivate
public void deactivate(ComponentContext context)
Description copied from interface:ComponentDeactivates the component.This method is called by the runtime when a component is deactivated.
- Specified by:
 deactivatein interfaceComponent- Overrides:
 deactivatein classDefaultComponent- Parameters:
 context- the runtime context
 
- 
registerInvalidator
protected void registerInvalidator()
 
- 
unregisterInvalidator
protected void unregisterInvalidator()
 
- 
registerContribution
public void registerContribution(Object contribution, String extensionPoint, ComponentInstance contributor)
- Overrides:
 registerContributionin classDefaultComponent
 
- 
unregisterContribution
public void unregisterContribution(Object contribution, String extensionPoint, ComponentInstance contributor)
- Overrides:
 unregisterContributionin classDefaultComponent
 
- 
findProcessor
public TemplateProcessor findProcessor(Blob templateBlob)
Description copied from interface:TemplateProcessorServiceFinds theTemplateProcessorfor a givenBlob. The template processor is found based on mime-types.- Specified by:
 findProcessorin interfaceTemplateProcessorService- Returns:
 - the 
TemplateProcessor 
 
- 
findProcessorName
public String findProcessorName(Blob templateBlob)
Description copied from interface:TemplateProcessorServiceFinds the template processor name for a givenBlob. The template processor is found based on mime-types.- Specified by:
 findProcessorNamein interfaceTemplateProcessorService- Returns:
 - the 
TemplateProcessorname 
 
- 
findProcessorDescriptor
public TemplateProcessorDescriptor findProcessorDescriptor(Blob templateBlob)
 
- 
addContextExtensions
public void addContextExtensions(DocumentModel currentDocument, DocumentWrapper wrapper, Map<String,Object> ctx)
- Specified by:
 addContextExtensionsin interfaceTemplateProcessorService
 
- 
getReservedContextKeywords
public List<String> getReservedContextKeywords()
- Specified by:
 getReservedContextKeywordsin interfaceTemplateProcessorService
 
- 
getRegistredContextExtensions
public Map<String,ContextExtensionFactoryDescriptor> getRegistredContextExtensions()
- Specified by:
 getRegistredContextExtensionsin interfaceTemplateProcessorService
 
- 
findProcessorByMimeType
protected TemplateProcessorDescriptor findProcessorByMimeType(String mt)
 
- 
findProcessorByExtension
protected TemplateProcessorDescriptor findProcessorByExtension(String extension)
 
- 
getDescriptor
public TemplateProcessorDescriptor getDescriptor(String name)
 
- 
getProcessor
public TemplateProcessor getProcessor(String name)
Description copied from interface:TemplateProcessorServiceGet aTemplateProcessorby it's name. Name is defined in the associated descriptor.- Specified by:
 getProcessorin interfaceTemplateProcessorService- Returns:
 - the 
TemplateProcessor 
 
- 
getAvailableTemplateDocs
public List<DocumentModel> getAvailableTemplateDocs(CoreSession session, String targetType)
Description copied from interface:TemplateProcessorServiceFindTemplateSourceDocuments that can be bound to a given doc type.- Specified by:
 getAvailableTemplateDocsin interfaceTemplateProcessorServicetargetType- the target Document Type- Returns:
 - List of applicable DocumentModel
 
 
- 
getTemplateDoc
public DocumentModel getTemplateDoc(CoreSession session, String name)
Description copied from interface:TemplateProcessorServiceReturns a template with a given templateName.- Specified by:
 getTemplateDocin interfaceTemplateProcessorServicename- the name of the template
 
- 
wrap
protected <T> List<T> wrap(List<DocumentModel> docs, Class<T> adapter)
 
- 
getAvailableOfficeTemplates
public List<TemplateSourceDocument> getAvailableOfficeTemplates(CoreSession session, String targetType)
Description copied from interface:TemplateProcessorServiceRetrieve theTemplateSourceDocumentthat can be used as an Office template (i.e that support to store the template file as main blob of target DocumentModel)- Specified by:
 getAvailableOfficeTemplatesin interfaceTemplateProcessorService
 
- 
getAvailableTemplates
public List<TemplateSourceDocument> getAvailableTemplates(CoreSession session, String targetType)
Description copied from interface:TemplateProcessorServiceFindTemplateSourceDocuments that can be bound to a given doc type.- Specified by:
 getAvailableTemplatesin interfaceTemplateProcessorServicetargetType- the target Document Type- Returns:
 - List of applicable 
TemplateSourceDocument 
 
- 
getLinkedTemplateBasedDocuments
public List<TemplateBasedDocument> getLinkedTemplateBasedDocuments(DocumentModel source)
Description copied from interface:TemplateProcessorServiceRetrieve the DocumentModels using a givenTemplateSourceDocument- Specified by:
 getLinkedTemplateBasedDocumentsin interfaceTemplateProcessorService- Parameters:
 source- theTemplateSourceDocument
 
- 
getRegisteredTemplateProcessors
public Collection<TemplateProcessorDescriptor> getRegisteredTemplateProcessors()
Description copied from interface:TemplateProcessorServiceReturns all registeredTemplateProcessors- Specified by:
 getRegisteredTemplateProcessorsin interfaceTemplateProcessorService- Returns:
 - collection of registered 
TemplateProcessorDescriptor 
 
- 
getTypeMapping
public Map<String,List<String>> getTypeMapping()
Description copied from interface:TemplateProcessorServiceRetrieve the Map used for mapping Document Types to Template Names. This Map represent the Templates that must be automatically bound at creation time for each Document Type.- Specified by:
 getTypeMappingin interfaceTemplateProcessorService- Returns:
 - the Type2Template mapping
 
 
- 
registerTypeMapping
public void registerTypeMapping(DocumentModel doc)
Description copied from interface:TemplateProcessorServiceUpdate Type2Template Mapping from the data contained in the source DocumentModel.- Specified by:
 registerTypeMappingin interfaceTemplateProcessorService
 
- 
makeTemplateBasedDocument
public DocumentModel makeTemplateBasedDocument(DocumentModel targetDoc, DocumentModel sourceTemplateDoc, boolean save)
Description copied from interface:TemplateProcessorServiceAssociate aDocumentModelto aTemplateSourceDocument. If the DocumentModel is not already aTemplateBasedDocument, the associated facet will be automatically added.- Specified by:
 makeTemplateBasedDocumentin interfaceTemplateProcessorService- Parameters:
 targetDoc- the DocumentModel to associate to a templatesourceTemplateDoc- the DocumentModel holding the templatesave- flag to indicate if target DocumentModel must be saved or not- Returns:
 - the updated DocumentModel
 
 
- 
detachTemplateBasedDocument
public DocumentModel detachTemplateBasedDocument(DocumentModel targetDoc, String templateName, boolean save)
Description copied from interface:TemplateProcessorServiceDetach a Template from aDocumentModel- Specified by:
 detachTemplateBasedDocumentin interfaceTemplateProcessorService- Parameters:
 targetDoc- the DocumentModel to detachtemplateName- the name of the template to detachsave- save flag to indicate if target DocumentModel must be saved or not- Returns:
 - the updated DocumentModel
 
 
- 
invalidateTypeMapping
protected void invalidateTypeMapping()
 
- 
getOutputFormats
public Collection<OutputFormatDescriptor> getOutputFormats()
- Specified by:
 getOutputFormatsin interfaceTemplateProcessorService- Returns:
 - the list of registered Ouput formats used to convert output of a rendered document.
 
 
- 
getOutputFormatDescriptor
public OutputFormatDescriptor getOutputFormatDescriptor(String outputFormatId)
Description copied from interface:TemplateProcessorServiceThe returnedOutputFormatDescriptorcontains either an operation chain or a mime-type use to convert the output of a rendered document.- Specified by:
 getOutputFormatDescriptorin interfaceTemplateProcessorService- Returns:
 OutputFormatDescriptor
 
 - 
 
 -