Package fr.becpg.repo.jscript
Class Thumbnail
java.lang.Object
org.alfresco.repo.processor.BaseProcessorExtension
org.alfresco.repo.jscript.BaseScopableProcessorExtension
fr.becpg.repo.jscript.Thumbnail
- All Implemented Interfaces:
org.alfresco.processor.ProcessorExtension,org.alfresco.repo.jscript.Scopeable
public final class Thumbnail
extends org.alfresco.repo.jscript.BaseScopableProcessorExtension
Helper JScript extension that retrieves or creates thumbnails/reports for entities.
Acts as a thin orchestration layer over
EntityService and EntityReportService
with Alfresco transaction guard logic to avoid lock conflicts.- Author:
- matthieu,gaspard
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate EntityReportServiceprivate EntityServiceprivate static final org.apache.commons.logging.Logprivate org.alfresco.service.cmr.repository.NodeServiceprivate org.alfresco.service.ServiceRegistry -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate voidcleanThumbnails(org.alfresco.service.cmr.repository.NodeRef reportNodeRef) private <T> TexecuteWithWritableTransaction(Supplier<T> supplier) Helper to execute a supplier in a writable transaction and as system user.org.alfresco.repo.jscript.ScriptNodegetOrCreateImageNode(org.alfresco.repo.jscript.ScriptNode sourceNode) getOrCreateImageNode.org.alfresco.repo.jscript.ScriptNodegetReportNode(org.alfresco.repo.jscript.ScriptNode sourceNode) getReportNode.org.alfresco.repo.jscript.ScriptNodegetThumbnailNode(org.alfresco.repo.jscript.ScriptNode sourceNode) getThumbnailNode.org.alfresco.repo.jscript.ScriptNoderefreshReport(org.alfresco.repo.jscript.ScriptNode reportNode) Force a refresh of an existing report node.voidsetEntityReportService(EntityReportService entityReportService) Setter for the fieldentityReportService.voidsetEntityService(EntityService entityService) Setter for the fieldentityService.voidsetNodeService(org.alfresco.service.cmr.repository.NodeService nodeService) Setter for the fieldnodeService.voidsetServiceRegistry(org.alfresco.service.ServiceRegistry serviceRegistry) Setter for the fieldserviceRegistry.private org.alfresco.service.cmr.repository.NodeRefunwrapVirtualNodeIfNeeded(org.alfresco.service.cmr.repository.NodeRef nodeRef) Methods inherited from class org.alfresco.repo.jscript.BaseScopableProcessorExtension
getScope, setScopeMethods inherited from class org.alfresco.repo.processor.BaseProcessorExtension
getExtensionName, register, setExtensionName, setProcessor
-
Field Details
-
logger
private static final org.apache.commons.logging.Log logger -
nodeService
private org.alfresco.service.cmr.repository.NodeService nodeService -
entityService
-
entityReportService
-
serviceRegistry
private org.alfresco.service.ServiceRegistry serviceRegistry
-
-
Constructor Details
-
Thumbnail
public Thumbnail()
-
-
Method Details
-
setNodeService
public void setNodeService(org.alfresco.service.cmr.repository.NodeService nodeService) Setter for the field
nodeService.- Parameters:
nodeService- aNodeServiceobject
-
setEntityService
Setter for the field
entityService.- Parameters:
entityService- aEntityServiceobject.
-
setEntityReportService
Setter for the field
entityReportService.- Parameters:
entityReportService- aEntityReportServiceobject.
-
setServiceRegistry
public void setServiceRegistry(org.alfresco.service.ServiceRegistry serviceRegistry) Setter for the field
serviceRegistry.- Parameters:
serviceRegistry- aServiceRegistryobject.
-
getThumbnailNode
public org.alfresco.repo.jscript.ScriptNode getThumbnailNode(org.alfresco.repo.jscript.ScriptNode sourceNode) getThumbnailNode.
- Parameters:
sourceNode- aScriptNodeobject.- Returns:
- a
ScriptNodeobject.
-
getOrCreateImageNode
public org.alfresco.repo.jscript.ScriptNode getOrCreateImageNode(org.alfresco.repo.jscript.ScriptNode sourceNode) getOrCreateImageNode.
- Parameters:
sourceNode- aScriptNodeobject.- Returns:
- a
ScriptNodeobject.
-
getReportNode
public org.alfresco.repo.jscript.ScriptNode getReportNode(org.alfresco.repo.jscript.ScriptNode sourceNode) getReportNode.
- Parameters:
sourceNode- aScriptNodeobject.- Returns:
- a
ScriptNodeobject.
-
refreshReport
public org.alfresco.repo.jscript.ScriptNode refreshReport(org.alfresco.repo.jscript.ScriptNode reportNode) Force a refresh of an existing report node. Returns the refreshed report script node.- Parameters:
reportNode- aScriptNodeobject- Returns:
- a
ScriptNodeobject
-
cleanThumbnails
private void cleanThumbnails(org.alfresco.service.cmr.repository.NodeRef reportNodeRef) -
executeWithWritableTransaction
Helper to execute a supplier in a writable transaction and as system user. It avoids creating a new transaction if the current one is already writable. Returns the supplier result or null on failure. -
unwrapVirtualNodeIfNeeded
private org.alfresco.service.cmr.repository.NodeRef unwrapVirtualNodeIfNeeded(org.alfresco.service.cmr.repository.NodeRef nodeRef)
-