The Transform Router (T-Router) uses Transform Engine (T-Engine) names to register new engines via properties. The names must be unique and consistent for each engine, for both of its properties (url and queue). Examples of such name are: IMAGEMAGICK, LIBREOFFICE, PDF_RENDERER, TIKA, TRANSFORMER1, CUSTOM_ENGINE, CUSTOM_RED_ENGINE, etc.
The T-Engine names are case-insensitive.
Engine configuration is part of the T-Router SpringBoot application.yaml configuration:
transformer:
url:
imagemagick: http://imagemagick-host:8091
pdf_renderer: http://pdf-renderer-host:8090
queue:
imagemagick: org.alfresco.transform.engine.imagemagick.acs
pdf_renderer: org.alfresco.transform.engine.alfresco-pdf-renderer.acs
engine:
protocol: ${TRANSFORMER_ENGINE_PROTOCOL:jms} # this value can be one of the following (http, jms)
These properties can be overridden by environment variables on the T-Router container:
export TRANSFORMER_URL_IMAGEMAGICK="http://host1" export TRANSFORMER_QUEUE_IMAGEMAGICK="queue66" export TRANSFORMER_URL_PDF_RENDERER="http://host2:8099" export TRANSFORMER_QUEUE_PDF_RENDERER="queue-red-black" export TRANSFORMER_ENGINE_PROTOCOL="http"
Additional custom engines can be configured through environment variables as well:
export TRANSFORMER_URL_CUSTOM_RED_ENGINE="http://red-engine-host:8090" export TRANSFORMER_QUEUE_CUSTOM_RED_ENGINE="red-engine-queue"
The HTTP URL is for retrieving the engine config, and for transform requests in HTTP mode. The queue is used for transform requests in JMS mode, transform config is not retrieved in this way.
All registered engines are queried via their HTTP URL for transform config on T-Router startup. This allows for auto-configuration of engine transformers, and generates a transform config for the T-Router. The T-Router transform config consists of aggregated transform configs from all engines plus all available pipeline transformers. It can be checked using the /transform/config endpoint. During the registration process, the engine names provided in the properties are mapped to the corresponding transformers supported by the particular engine and to the corresponding JMS queue.