Class OOoContentTransformerHelper
- java.lang.Object
-
- org.alfresco.repo.content.transform.ContentTransformerHelper
-
- org.alfresco.repo.content.transform.OOoContentTransformerHelper
-
- All Implemented Interfaces:
org.springframework.beans.factory.Aware,org.springframework.beans.factory.BeanNameAware
- Direct Known Subclasses:
JodContentTransformer
public abstract class OOoContentTransformerHelper extends ContentTransformerHelper
A class providing basic OOo-related functionality shared by bothContentTransformers andContentTransformerWorkers.
-
-
Field Summary
Fields Modifier and Type Field Description protected RemoteTransformerClientremoteTransformerClientprotected TransformerDebugtransformerDebug-
Fields inherited from class org.alfresco.repo.content.transform.ContentTransformerHelper
transformerConfig
-
-
Constructor Summary
Constructors Constructor Description OOoContentTransformerHelper()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description voidafterPropertiesSet()protected abstract voidconvert(File tempFromFile, org.artofsolving.jodconverter.document.DocumentFormat sourceFormat, File tempToFile, org.artofsolving.jodconverter.document.DocumentFormat targetFormat)protected booleanencodeAsUtf8(String sourceMimetype, String encoding)Returnstrueif the input file should be transformed to UTF8 encoding.StringgetComments(boolean available)Overridden to supply a comment or String of commented out transformation properties that specify any (hard coded or implied) supported transformations.protected abstract org.apache.commons.logging.LoggetLogger()protected abstract StringgetTempFilePrefix()StringgetVersionString()abstract booleanisAvailable()booleanisTransformable(String sourceMimetype, String targetMimetype, TransformationOptions options)protected booleanisTransformationBlocked(String sourceMimetype, String targetMimetype)There are some conversions that fail, despite the converter believing them possible.protected booleanremoteTransformerClientConfigured()voidsaveContentInFile(String sourceMimetype, org.alfresco.service.cmr.repository.ContentReader reader, File file)Populates a file with the content in the reader.voidsetDocumentFormatsConfiguration(String path)Set a non-default location from which to load the document format mappings.voidsetRemoteTransformerClient(RemoteTransformerClient remoteTransformerClient)Sets the optional remote transformer client which will be used in preference to a local command if available.voidsetTransformerDebug(TransformerDebug transformerDebug)Helper setter of the transformer debug.voidtransform(org.alfresco.service.cmr.repository.ContentReader reader, org.alfresco.service.cmr.repository.ContentWriter writer, TransformationOptions options)protected voidtransformLocal(org.alfresco.service.cmr.repository.ContentReader reader, org.alfresco.service.cmr.repository.ContentWriter writer, TransformationOptions options, String sourceMimetype, String sourceExtension, String targetExtension, org.artofsolving.jodconverter.document.DocumentFormat sourceFormat, org.artofsolving.jodconverter.document.DocumentFormat targetFormat)protected voidtransformRemote(org.alfresco.service.cmr.repository.ContentReader reader, org.alfresco.service.cmr.repository.ContentWriter writer, TransformationOptions options, String sourceMimetype, String sourceExtension, String targetExtension)-
Methods inherited from class org.alfresco.repo.content.transform.ContentTransformerHelper
deprecatedSetter, equals, getBeanName, getCommentsOnlySupports, getExtensionOrAny, getMimetype, getMimetypeService, getName, getSimpleName, hashCode, isExplicitTransformation, isSupportedTransformation, onlySupports, register, setBeanName, setExplicitTransformations, setMimetypeService, setSupportedTransformations, setTransformerConfig, setUnsupportedTransformations, toString
-
-
-
-
Field Detail
-
transformerDebug
protected TransformerDebug transformerDebug
-
remoteTransformerClient
protected RemoteTransformerClient remoteTransformerClient
-
-
Method Detail
-
setDocumentFormatsConfiguration
public void setDocumentFormatsConfiguration(String path)
Set a non-default location from which to load the document format mappings.- Parameters:
path- a resource location supporting the file: or classpath: prefixes
-
getLogger
protected abstract org.apache.commons.logging.Log getLogger()
-
getTempFilePrefix
protected abstract String getTempFilePrefix()
-
isAvailable
public abstract boolean isAvailable()
-
convert
protected abstract void convert(File tempFromFile, org.artofsolving.jodconverter.document.DocumentFormat sourceFormat, File tempToFile, org.artofsolving.jodconverter.document.DocumentFormat targetFormat)
-
setTransformerDebug
public void setTransformerDebug(TransformerDebug transformerDebug)
Helper setter of the transformer debug.- Parameters:
transformerDebug- TransformerDebug
-
setRemoteTransformerClient
public void setRemoteTransformerClient(RemoteTransformerClient remoteTransformerClient)
Sets the optional remote transformer client which will be used in preference to a local command if available.- Parameters:
remoteTransformerClient- may be null;
-
remoteTransformerClientConfigured
protected boolean remoteTransformerClientConfigured()
-
afterPropertiesSet
public void afterPropertiesSet()
-
isTransformationBlocked
protected boolean isTransformationBlocked(String sourceMimetype, String targetMimetype)
There are some conversions that fail, despite the converter believing them possible. This method can be used by subclasses to check if a targetMimetype or source/target Mimetype pair are blocked.- Parameters:
sourceMimetype- StringtargetMimetype- String- Returns:
trueif the mimetypes are blocked, elsefalse
-
isTransformable
public boolean isTransformable(String sourceMimetype, String targetMimetype, TransformationOptions options)
- See Also:
DocumentFormatRegistry
-
getComments
public String getComments(boolean available)
Description copied from class:ContentTransformerHelperOverridden to supply a comment or String of commented out transformation properties that specify any (hard coded or implied) supported transformations. Used when providing a list of properties to an administrators who may be setting other transformation properties, via JMX. Consider overriding if {linkAbstractContentTransformerLimits.isTransformableMimetype(String, String, TransformationOptions)orContentTransformerWorker.isTransformable(String, String, TransformationOptions)have been overridden. SeeContentTransformerHelper.getCommentsOnlySupports(List, List, boolean)which may be used to help construct a comment.- Overrides:
getCommentsin classContentTransformerHelper- Parameters:
available- indicates if the transformer has been registered and is available to be selected.falseindicates that the transformer is only available as a component of a complex transformer.- Returns:
- one line per property. The simple transformer name is returned by default as a comment.
-
getVersionString
public String getVersionString()
-
transform
public void transform(org.alfresco.service.cmr.repository.ContentReader reader, org.alfresco.service.cmr.repository.ContentWriter writer, TransformationOptions options) throws Exception- Throws:
Exception
-
transformLocal
protected void transformLocal(org.alfresco.service.cmr.repository.ContentReader reader, org.alfresco.service.cmr.repository.ContentWriter writer, TransformationOptions options, String sourceMimetype, String sourceExtension, String targetExtension, org.artofsolving.jodconverter.document.DocumentFormat sourceFormat, org.artofsolving.jodconverter.document.DocumentFormat targetFormat)
-
transformRemote
protected void transformRemote(org.alfresco.service.cmr.repository.ContentReader reader, org.alfresco.service.cmr.repository.ContentWriter writer, TransformationOptions options, String sourceMimetype, String sourceExtension, String targetExtension) throws IllegalAccessException- Throws:
IllegalAccessException
-
saveContentInFile
public void saveContentInFile(String sourceMimetype, org.alfresco.service.cmr.repository.ContentReader reader, File file) throws org.alfresco.service.cmr.repository.ContentIOException
Populates a file with the content in the reader.- Throws:
org.alfresco.service.cmr.repository.ContentIOException
-
encodeAsUtf8
protected boolean encodeAsUtf8(String sourceMimetype, String encoding)
Returnstrueif the input file should be transformed to UTF8 encoding.OpenOffice/LibreOffice is unable to support the import of text files that are SHIFT JIS encoded (and others: windows-1252...) so transformed to UTF-8.
-
-