ATS-669: Parameterize T-Engines transformer execution locations (#203)

* ATS-669: Implement cmd line arguments for ImageMagick, PdfRenderer and LibreOffice

* ATS-669: Remove unnecessary test ImageMagick line

* ATS-669: Implement Spring boot properties via application.yaml

* ATS-669: Implement Spring config binds and utilize new functionality in pdfRender

* ATS-669: Wire externalProps for ImageMagick

* ATS-669: Wire externalProps for LibreOffice

* ATS-669: Fix failing tests

* ATS-669: Implement parameterized execution for All-In-One transform module

* ATS-669: Use string values instead of GlobalProperties class

* ATS-669: Change pdfrenderer property format

* ATS-669: Add validation to executor constructors

* ATS-669: Fix failing LibreOffice tests

* ATS-669: Add missing license

* ATS-669: Update LibreOffice version

* ATS-669: Remove unnecessary annotation

* ATS-669: Standardise properties

* ATS-669: Change field variable names

* ATS-669: Change field variable values

* ATS-669: Add unit tests for passing system properties

* ATS-669: Standardise yaml properties

* ATS-669: Remove unnecessary super() calls

* ATS-669: Change CRLF to LF

* ATS-669: Change LF to CRLF

* ATS-669: Fix yaml indentation

* ATS-669: Update tika and misc yaml file with new sub-property

* ATS-669: Remove unused import

* ATS-669: Update TransformRegistryImpl property location
This commit is contained in:
Kristian Dimitrov
2020-04-16 16:32:01 +01:00
committed by GitHub
parent a0ebe96217
commit a1b6283a4c
26 changed files with 239 additions and 41 deletions

View File

@@ -32,6 +32,7 @@ import org.alfresco.transformer.transformers.LibreOfficeAdapter;
import org.alfresco.transformer.transformers.MiscAdapter;
import org.alfresco.transformer.transformers.PdfRendererAdapter;
import org.alfresco.transformer.transformers.TikaAdapter;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Primary;
@@ -39,6 +40,21 @@ import org.springframework.context.annotation.Primary;
@Configuration
public class AIOCustomConfig
{
@Value("${transform.core.libreoffice.path}")
private String libreofficePath;
@Value("${transform.core.pdfrenderer.exe}")
private String pdfRendererPath;
@Value("${transform.core.imagemagick.exe}")
private String imageMagickExePath;
@Value("${transform.core.imagemagick.dyn}")
private String imageMagickDynPath;
@Value("${transform.core.imagemagick.root}")
private String imageMagickRootPath;
/**
*
* @return Override the TransformRegistryImpl used in {@link AbstractTransformerController}
@@ -50,9 +66,9 @@ public class AIOCustomConfig
AIOTransformRegistry aioTransformRegistry = new AIOTransformRegistry();
aioTransformRegistry.registerTransformer(new MiscAdapter());
aioTransformRegistry.registerTransformer(new TikaAdapter());
aioTransformRegistry.registerTransformer(new ImageMagickAdapter());
aioTransformRegistry.registerTransformer(new LibreOfficeAdapter());
aioTransformRegistry.registerTransformer(new PdfRendererAdapter());
aioTransformRegistry.registerTransformer(new ImageMagickAdapter(imageMagickExePath, imageMagickDynPath, imageMagickRootPath));
aioTransformRegistry.registerTransformer(new LibreOfficeAdapter(libreofficePath));
aioTransformRegistry.registerTransformer(new PdfRendererAdapter(pdfRendererPath));
return aioTransformRegistry;
}
}

View File

@@ -1,2 +1,12 @@
queue:
engineRequestQueue: ${TRANSFORM_ENGINE_REQUEST_QUEUE:org.alfresco.transform.engine.aio.acs}
engineRequestQueue: ${TRANSFORM_ENGINE_REQUEST_QUEUE:org.alfresco.transform.engine.aio.acs}
transform:
core:
pdfrenderer:
exe: ${PDFRENDERER_EXE:/usr/bin/alfresco-pdf-renderer}
libreoffice:
path: ${LIBREOFFICE_HOME:/opt/libreoffice6.3}
imagemagick:
root: ${IMAGEMAGICK_ROOT:/usr/lib64/ImageMagick-7.0.7}
dyn: ${IMAGEMAGICK_DYN:/usr/lib64/ImageMagick-7.0.7/lib}
exe: ${IMAGEMAGICK_EXE:/usr/bin/convert}

View File

@@ -59,9 +59,9 @@ public class ImageMagickAdapter implements Transformer
private static String ID = "imagemagick";
private ImageMagickCommandExecutor commandExecutor;
public ImageMagickAdapter()
public ImageMagickAdapter(String exe, String dyn, String root) throws Exception
{
commandExecutor = new ImageMagickCommandExecutor();
commandExecutor = new ImageMagickCommandExecutor(exe, dyn, root);
}
@Override

View File

@@ -36,9 +36,9 @@ public class LibreOfficeAdapter implements Transformer
private static String ID = "libreoffice";
private LibreOfficeJavaExecutor javaExecutor;
public LibreOfficeAdapter()
public LibreOfficeAdapter(String execPath) throws Exception
{
javaExecutor = new LibreOfficeJavaExecutor();
javaExecutor = new LibreOfficeJavaExecutor(execPath);
}
@Override

View File

@@ -46,9 +46,9 @@ public class PdfRendererAdapter implements Transformer
private static String ID = "pdfrenderer";
private PdfRendererCommandExecutor pdfExecutor;
public PdfRendererAdapter()
public PdfRendererAdapter(String execPath) throws Exception
{
pdfExecutor = new PdfRendererCommandExecutor();
pdfExecutor = new PdfRendererCommandExecutor(execPath);
}
@Override