diff --git a/alfresco-transform-core-aio/alfresco-transform-core-aio-boot/pom.xml b/alfresco-transform-core-aio/alfresco-transform-core-aio-boot/pom.xml
index 8835dc02..7b1a5290 100644
--- a/alfresco-transform-core-aio/alfresco-transform-core-aio-boot/pom.xml
+++ b/alfresco-transform-core-aio/alfresco-transform-core-aio-boot/pom.xml
@@ -9,7 +9,7 @@
org.alfresco
alfresco-transform-core
- 2.5.5-SNAPSHOT
+ 2.5.5-A1-SNAPSHOT
../../pom.xml
diff --git a/alfresco-transform-core-aio/alfresco-transform-core-aio/pom.xml b/alfresco-transform-core-aio/alfresco-transform-core-aio/pom.xml
index 62d7d308..d01055b9 100644
--- a/alfresco-transform-core-aio/alfresco-transform-core-aio/pom.xml
+++ b/alfresco-transform-core-aio/alfresco-transform-core-aio/pom.xml
@@ -8,7 +8,7 @@
alfresco-transform-core
org.alfresco
- 2.5.5-SNAPSHOT
+ 2.5.5-A1-SNAPSHOT
../../pom.xml
diff --git a/alfresco-transform-imagemagick/alfresco-transform-imagemagick-boot/pom.xml b/alfresco-transform-imagemagick/alfresco-transform-imagemagick-boot/pom.xml
index 59042f09..d8d8fa4e 100644
--- a/alfresco-transform-imagemagick/alfresco-transform-imagemagick-boot/pom.xml
+++ b/alfresco-transform-imagemagick/alfresco-transform-imagemagick-boot/pom.xml
@@ -7,7 +7,7 @@
org.alfresco
alfresco-transform-core
- 2.5.5-SNAPSHOT
+ 2.5.5-A1-SNAPSHOT
../../pom.xml
diff --git a/alfresco-transform-imagemagick/alfresco-transform-imagemagick-boot/src/test/java/org/alfresco/transformer/ImageMagickControllerTest.java b/alfresco-transform-imagemagick/alfresco-transform-imagemagick-boot/src/test/java/org/alfresco/transformer/ImageMagickControllerTest.java
index 65d58c17..7f1709dd 100644
--- a/alfresco-transform-imagemagick/alfresco-transform-imagemagick-boot/src/test/java/org/alfresco/transformer/ImageMagickControllerTest.java
+++ b/alfresco-transform-imagemagick/alfresco-transform-imagemagick-boot/src/test/java/org/alfresco/transformer/ImageMagickControllerTest.java
@@ -2,7 +2,7 @@
* #%L
* Alfresco Transform Core
* %%
- * Copyright (C) 2005 - 2021 Alfresco Software Limited
+ * Copyright (C) 2005 - 2022 Alfresco Software Limited
* %%
* This file is part of the Alfresco software.
* -
@@ -51,7 +51,6 @@ import java.io.File;
import java.io.IOException;
import java.nio.file.Files;
import java.util.Arrays;
-import java.util.HashMap;
import java.util.Map;
import java.util.UUID;
@@ -380,18 +379,7 @@ public class ImageMagickControllerTest extends AbstractTransformerControllerTest
File sourceFile = getTestFile("quick." + sourceExtension, true);
String targetFileRef = UUID.randomUUID().toString();
- // Transformation Request POJO
- TransformRequest transformRequest = new TransformRequest();
- transformRequest.setRequestId("1");
- transformRequest.setSchema(1);
- transformRequest.setClientData("Alfresco Digital Business Platform");
- transformRequest.setTransformRequestOptions(new HashMap<>());
- transformRequest.setSourceReference(sourceFileRef);
- transformRequest.setSourceExtension(sourceExtension);
- transformRequest.setSourceMediaType(sourceMimetype);
- transformRequest.setSourceSize(sourceFile.length());
- transformRequest.setTargetExtension(targetExtension);
- transformRequest.setTargetMediaType(targetMimetype);
+ TransformRequest transformRequest = createTransformRequest(sourceFileRef, sourceFile);
// HTTP Request
HttpHeaders headers = new HttpHeaders();
diff --git a/alfresco-transform-imagemagick/alfresco-transform-imagemagick/pom.xml b/alfresco-transform-imagemagick/alfresco-transform-imagemagick/pom.xml
index fa7ead45..8a382597 100644
--- a/alfresco-transform-imagemagick/alfresco-transform-imagemagick/pom.xml
+++ b/alfresco-transform-imagemagick/alfresco-transform-imagemagick/pom.xml
@@ -8,7 +8,7 @@
alfresco-transform-core
org.alfresco
- 2.5.5-SNAPSHOT
+ 2.5.5-A1-SNAPSHOT
../../pom.xml
diff --git a/alfresco-transform-libreoffice/alfresco-transform-libreoffice-boot/pom.xml b/alfresco-transform-libreoffice/alfresco-transform-libreoffice-boot/pom.xml
index b9464bfc..0e39c946 100644
--- a/alfresco-transform-libreoffice/alfresco-transform-libreoffice-boot/pom.xml
+++ b/alfresco-transform-libreoffice/alfresco-transform-libreoffice-boot/pom.xml
@@ -7,7 +7,7 @@
org.alfresco
alfresco-transform-core
- 2.5.5-SNAPSHOT
+ 2.5.5-A1-SNAPSHOT
../../pom.xml
diff --git a/alfresco-transform-libreoffice/alfresco-transform-libreoffice-boot/src/test/java/org/alfresco/transformer/LibreOfficeControllerTest.java b/alfresco-transform-libreoffice/alfresco-transform-libreoffice-boot/src/test/java/org/alfresco/transformer/LibreOfficeControllerTest.java
index 82b7b914..c9a71509 100644
--- a/alfresco-transform-libreoffice/alfresco-transform-libreoffice-boot/src/test/java/org/alfresco/transformer/LibreOfficeControllerTest.java
+++ b/alfresco-transform-libreoffice/alfresco-transform-libreoffice-boot/src/test/java/org/alfresco/transformer/LibreOfficeControllerTest.java
@@ -2,7 +2,7 @@
* #%L
* Alfresco Transform Core
* %%
- * Copyright (C) 2005 - 2021 Alfresco Software Limited
+ * Copyright (C) 2005 - 2022 Alfresco Software Limited
* %%
* This file is part of the Alfresco software.
* -
@@ -51,7 +51,6 @@ import java.io.File;
import java.io.IOException;
import java.nio.file.Files;
import java.util.Arrays;
-import java.util.HashMap;
import java.util.UUID;
import javax.annotation.PostConstruct;
@@ -228,16 +227,7 @@ public class LibreOfficeControllerTest extends AbstractTransformerControllerTest
File sourceFile = getTestFile("quick." + sourceExtension, true);
String targetFileRef = UUID.randomUUID().toString();
- // Transformation Request POJO
- TransformRequest transformRequest = new TransformRequest();
- transformRequest.setRequestId("1");
- transformRequest.setSchema(1);
- transformRequest.setClientData("Alfresco Digital Business Platform");
- transformRequest.setTransformRequestOptions(new HashMap<>());
- transformRequest.setSourceReference(sourceFileRef);
- transformRequest.setSourceExtension(sourceExtension);
- transformRequest.setSourceSize(sourceFile.length());
- transformRequest.setTargetExtension(targetExtension);
+ TransformRequest transformRequest = createTransformRequest(sourceFileRef, sourceFile);
// HTTP Request
HttpHeaders headers = new HttpHeaders();
diff --git a/alfresco-transform-libreoffice/alfresco-transform-libreoffice/pom.xml b/alfresco-transform-libreoffice/alfresco-transform-libreoffice/pom.xml
index 4a627526..32066e38 100644
--- a/alfresco-transform-libreoffice/alfresco-transform-libreoffice/pom.xml
+++ b/alfresco-transform-libreoffice/alfresco-transform-libreoffice/pom.xml
@@ -8,7 +8,7 @@
alfresco-transform-core
org.alfresco
- 2.5.5-SNAPSHOT
+ 2.5.5-A1-SNAPSHOT
../../pom.xml
diff --git a/alfresco-transform-misc/alfresco-transform-misc-boot/pom.xml b/alfresco-transform-misc/alfresco-transform-misc-boot/pom.xml
index 52e9cba0..f7503e8f 100644
--- a/alfresco-transform-misc/alfresco-transform-misc-boot/pom.xml
+++ b/alfresco-transform-misc/alfresco-transform-misc-boot/pom.xml
@@ -9,7 +9,7 @@
org.alfresco
alfresco-transform-core
- 2.5.5-SNAPSHOT
+ 2.5.5-A1-SNAPSHOT
../../pom.xml
diff --git a/alfresco-transform-misc/alfresco-transform-misc/pom.xml b/alfresco-transform-misc/alfresco-transform-misc/pom.xml
index c19bed81..753a033c 100644
--- a/alfresco-transform-misc/alfresco-transform-misc/pom.xml
+++ b/alfresco-transform-misc/alfresco-transform-misc/pom.xml
@@ -9,7 +9,7 @@
alfresco-transform-core
org.alfresco
- 2.5.5-SNAPSHOT
+ 2.5.5-A1-SNAPSHOT
../../pom.xml
diff --git a/alfresco-transform-pdf-renderer/alfresco-transform-pdf-renderer-boot/pom.xml b/alfresco-transform-pdf-renderer/alfresco-transform-pdf-renderer-boot/pom.xml
index b04a3372..d11ac173 100644
--- a/alfresco-transform-pdf-renderer/alfresco-transform-pdf-renderer-boot/pom.xml
+++ b/alfresco-transform-pdf-renderer/alfresco-transform-pdf-renderer-boot/pom.xml
@@ -9,7 +9,7 @@
org.alfresco
alfresco-transform-core
- 2.5.5-SNAPSHOT
+ 2.5.5-A1-SNAPSHOT
../../pom.xml
diff --git a/alfresco-transform-pdf-renderer/alfresco-transform-pdf-renderer-boot/src/test/java/org/alfresco/transformer/AlfrescoPdfRendererControllerTest.java b/alfresco-transform-pdf-renderer/alfresco-transform-pdf-renderer-boot/src/test/java/org/alfresco/transformer/AlfrescoPdfRendererControllerTest.java
index d9d21821..0f729862 100644
--- a/alfresco-transform-pdf-renderer/alfresco-transform-pdf-renderer-boot/src/test/java/org/alfresco/transformer/AlfrescoPdfRendererControllerTest.java
+++ b/alfresco-transform-pdf-renderer/alfresco-transform-pdf-renderer-boot/src/test/java/org/alfresco/transformer/AlfrescoPdfRendererControllerTest.java
@@ -2,7 +2,7 @@
* #%L
* Alfresco Transform Core
* %%
- * Copyright (C) 2005 - 2021 Alfresco Software Limited
+ * Copyright (C) 2005 - 2022 Alfresco Software Limited
* %%
* This file is part of the Alfresco software.
* -
@@ -51,7 +51,6 @@ import java.io.File;
import java.io.IOException;
import java.nio.file.Files;
import java.util.Arrays;
-import java.util.HashMap;
import java.util.Map;
import java.util.UUID;
@@ -292,16 +291,7 @@ public class AlfrescoPdfRendererControllerTest extends AbstractTransformerContro
File sourceFile = getTestFile("quick." + sourceExtension, true);
String targetFileRef = UUID.randomUUID().toString();
- // Transformation Request POJO
- TransformRequest transformRequest = new TransformRequest();
- transformRequest.setRequestId("1");
- transformRequest.setSchema(1);
- transformRequest.setClientData("Alfresco Digital Business Platform");
- transformRequest.setTransformRequestOptions(new HashMap<>());
- transformRequest.setSourceReference(sourceFileRef);
- transformRequest.setSourceExtension(sourceExtension);
- transformRequest.setSourceSize(sourceFile.length());
- transformRequest.setTargetExtension(targetExtension);
+ TransformRequest transformRequest = createTransformRequest(sourceFileRef, sourceFile);
// HTTP Request
HttpHeaders headers = new HttpHeaders();
diff --git a/alfresco-transform-pdf-renderer/alfresco-transform-pdf-renderer/pom.xml b/alfresco-transform-pdf-renderer/alfresco-transform-pdf-renderer/pom.xml
index d4e190da..1660b28d 100644
--- a/alfresco-transform-pdf-renderer/alfresco-transform-pdf-renderer/pom.xml
+++ b/alfresco-transform-pdf-renderer/alfresco-transform-pdf-renderer/pom.xml
@@ -7,7 +7,7 @@
org.alfresco
alfresco-transform-core
- 2.5.5-SNAPSHOT
+ 2.5.5-A1-SNAPSHOT
../../pom.xml
diff --git a/alfresco-transform-tika/alfresco-transform-tika-boot/pom.xml b/alfresco-transform-tika/alfresco-transform-tika-boot/pom.xml
index c8680e34..6ff5ea13 100644
--- a/alfresco-transform-tika/alfresco-transform-tika-boot/pom.xml
+++ b/alfresco-transform-tika/alfresco-transform-tika-boot/pom.xml
@@ -7,7 +7,7 @@
org.alfresco
alfresco-transform-core
- 2.5.5-SNAPSHOT
+ 2.5.5-A1-SNAPSHOT
../../pom.xml
diff --git a/alfresco-transform-tika/alfresco-transform-tika-boot/src/test/java/org/alfresco/transformer/TikaControllerTest.java b/alfresco-transform-tika/alfresco-transform-tika-boot/src/test/java/org/alfresco/transformer/TikaControllerTest.java
index 164b3376..2727d292 100644
--- a/alfresco-transform-tika/alfresco-transform-tika-boot/src/test/java/org/alfresco/transformer/TikaControllerTest.java
+++ b/alfresco-transform-tika/alfresco-transform-tika-boot/src/test/java/org/alfresco/transformer/TikaControllerTest.java
@@ -2,7 +2,7 @@
* #%L
* Alfresco Transform Core
* %%
- * Copyright (C) 2005 - 2021 Alfresco Software Limited
+ * Copyright (C) 2005 - 2022 Alfresco Software Limited
* %%
* This file is part of the Alfresco software.
* -
@@ -85,7 +85,6 @@ import static org.springframework.util.StringUtils.getFilenameExtension;
import java.io.ByteArrayInputStream;
import java.io.File;
import java.io.IOException;
-import java.util.HashMap;
import java.util.Map;
import java.util.UUID;
@@ -609,17 +608,7 @@ public class TikaControllerTest extends AbstractTransformerControllerTest
File sourceFile = getTestFile("quick." + sourceExtension, true);
String targetFileRef = UUID.randomUUID().toString();
- // Transformation Request POJO
- TransformRequest transformRequest = new TransformRequest();
- transformRequest.setRequestId("1");
- transformRequest.setSchema(1);
- transformRequest.setClientData("Alfresco Digital Business Platform");
- transformRequest.setTransformRequestOptions(new HashMap<>());
- transformRequest.setSourceReference(sourceFileRef);
- transformRequest.setSourceExtension(sourceExtension);
- transformRequest.setSourceSize(sourceFile.length());
- transformRequest.setTargetExtension(targetExtension);
- transformRequest.setSourceMediaType(sourceMimetype);
+ TransformRequest transformRequest = createTransformRequest(sourceFileRef, sourceFile);
// HTTP Request
HttpHeaders headers = new HttpHeaders();
diff --git a/alfresco-transform-tika/alfresco-transform-tika/pom.xml b/alfresco-transform-tika/alfresco-transform-tika/pom.xml
index 430e1183..3672452d 100644
--- a/alfresco-transform-tika/alfresco-transform-tika/pom.xml
+++ b/alfresco-transform-tika/alfresco-transform-tika/pom.xml
@@ -8,7 +8,7 @@
alfresco-transform-core
org.alfresco
- 2.5.5-SNAPSHOT
+ 2.5.5-A1-SNAPSHOT
../../pom.xml
diff --git a/alfresco-transformer-base/pom.xml b/alfresco-transformer-base/pom.xml
index 0ffd154e..c88fc15d 100644
--- a/alfresco-transformer-base/pom.xml
+++ b/alfresco-transformer-base/pom.xml
@@ -4,12 +4,12 @@
org.alfresco
alfresco-transform-core
- 2.5.5-SNAPSHOT
+ 2.5.5-A1-SNAPSHOT
../pom.xml
alfresco-transformer-base
- 2.5.5-SNAPSHOT
+ 2.5.5-A1-SNAPSHOT
false
diff --git a/alfresco-transformer-base/src/main/java/org/alfresco/transformer/AbstractTransformerController.java b/alfresco-transformer-base/src/main/java/org/alfresco/transformer/AbstractTransformerController.java
index 602d616e..06b4000c 100644
--- a/alfresco-transformer-base/src/main/java/org/alfresco/transformer/AbstractTransformerController.java
+++ b/alfresco-transformer-base/src/main/java/org/alfresco/transformer/AbstractTransformerController.java
@@ -2,7 +2,7 @@
* #%L
* Alfresco Transform Core
* %%
- * Copyright (C) 2005 - 2020 Alfresco Software Limited
+ * Copyright (C) 2005 - 2022 Alfresco Software Limited
* %%
* This file is part of the Alfresco software.
* -
@@ -26,12 +26,15 @@
*/
package org.alfresco.transformer;
+import org.alfresco.transform.client.model.InternalContext;
import org.alfresco.transform.client.model.TransformReply;
import org.alfresco.transform.client.model.TransformRequest;
import org.alfresco.transform.client.model.TransformRequestValidator;
import org.alfresco.transform.client.model.config.TransformConfig;
import org.alfresco.transform.client.registry.TransformServiceRegistry;
import org.alfresco.transform.exceptions.TransformException;
+import org.alfresco.transform.router.TransformStack;
+import org.alfresco.transform.router.TransformerDebug;
import org.alfresco.transformer.clients.AlfrescoSharedFileStoreClient;
import org.alfresco.transformer.logging.LogEntry;
import org.alfresco.transformer.model.FileRefResponse;
@@ -134,6 +137,9 @@ public abstract class AbstractTransformerController implements TransformControll
@Autowired
private TransformServiceRegistry transformRegistry;
+ @Autowired
+ private TransformerDebug transformerDebug;
+
@GetMapping(value = "/transform/config")
public ResponseEntity info()
{
@@ -203,16 +209,18 @@ public abstract class AbstractTransformerController implements TransformControll
public ResponseEntity transform(@RequestBody TransformRequest request,
@RequestParam(value = "timeout", required = false) Long timeout)
{
- logger.info("Received {}, timeout {} ms", request, timeout);
+ logger.trace("Received {}, timeout {} ms", request, timeout);
final TransformReply reply = new TransformReply();
- reply.setInternalContext(request.getInternalContext());
reply.setRequestId(request.getRequestId());
reply.setSourceReference(request.getSourceReference());
reply.setSchema(request.getSchema());
reply.setClientData(request.getClientData());
final Errors errors = validateTransformRequest(request);
+ validateInternalContext(request, errors);
+ initialiseContext(request);
+ reply.setInternalContext(request.getInternalContext());
if (!errors.getAllErrors().isEmpty())
{
reply.setStatus(BAD_REQUEST.value());
@@ -222,7 +230,8 @@ public abstract class AbstractTransformerController implements TransformControll
.map(Object::toString)
.collect(joining(", ")));
- logger.error("Invalid request, sending {}", reply);
+ transformerDebug.logFailure(reply);
+ logger.trace("Invalid request, sending {}", reply);
return new ResponseEntity<>(reply, HttpStatus.valueOf(reply.getStatus()));
}
@@ -237,7 +246,8 @@ public abstract class AbstractTransformerController implements TransformControll
reply.setStatus(e.getStatusCode());
reply.setErrorDetails(messageWithCause("Failed at reading the source file", e));
- logger.error("Failed to load source file (TransformException), sending " + reply);
+ transformerDebug.logFailure(reply);
+ logger.trace("Failed to load source file (TransformException), sending " + reply);
return new ResponseEntity<>(reply, HttpStatus.valueOf(reply.getStatus()));
}
catch (HttpClientErrorException e)
@@ -245,8 +255,8 @@ public abstract class AbstractTransformerController implements TransformControll
reply.setStatus(e.getStatusCode().value());
reply.setErrorDetails(messageWithCause("Failed at reading the source file", e));
- logger.error("Failed to load source file (HttpClientErrorException), sending " +
- reply, e);
+ transformerDebug.logFailure(reply);
+ logger.trace("Failed to load source file (HttpClientErrorException), sending " + reply, e);
return new ResponseEntity<>(reply, HttpStatus.valueOf(reply.getStatus()));
}
catch (Exception e)
@@ -254,7 +264,8 @@ public abstract class AbstractTransformerController implements TransformControll
reply.setStatus(INTERNAL_SERVER_ERROR.value());
reply.setErrorDetails(messageWithCause("Failed at reading the source file", e));
- logger.error("Failed to load source file (Exception), sending " + reply, e);
+ transformerDebug.logFailure(reply);
+ logger.trace("Failed to load source file (Exception), sending " + reply, e);
return new ResponseEntity<>(reply, HttpStatus.valueOf(reply.getStatus()));
}
@@ -266,10 +277,10 @@ public abstract class AbstractTransformerController implements TransformControll
// Run the transformation
try
{
-
String targetMimetype = request.getTargetMediaType();
String sourceMimetype = request.getSourceMediaType();
Map transformOptions = request.getTransformRequestOptions();
+ transformerDebug.logOptions(request);
String transformName = getTransformerName(sourceFile, sourceMimetype, targetMimetype, transformOptions);
transformImpl(transformName, sourceMimetype, targetMimetype, transformOptions, sourceFile, targetFile);
}
@@ -278,7 +289,8 @@ public abstract class AbstractTransformerController implements TransformControll
reply.setStatus(e.getStatusCode());
reply.setErrorDetails(messageWithCause("Failed at processing transformation", e));
- logger.error("Failed to perform transform (TransformException), sending " + reply, e);
+ transformerDebug.logFailure(reply);
+ logger.trace("Failed to perform transform (TransformException), sending " + reply, e);
return new ResponseEntity<>(reply, HttpStatus.valueOf(reply.getStatus()));
}
catch (Exception e)
@@ -286,7 +298,8 @@ public abstract class AbstractTransformerController implements TransformControll
reply.setStatus(INTERNAL_SERVER_ERROR.value());
reply.setErrorDetails(messageWithCause("Failed at processing transformation", e));
- logger.error("Failed to perform transform (Exception), sending " + reply, e);
+ transformerDebug.logFailure(reply);
+ logger.trace("Failed to perform transform (Exception), sending " + reply, e);
return new ResponseEntity<>(reply, HttpStatus.valueOf(reply.getStatus()));
}
@@ -301,7 +314,8 @@ public abstract class AbstractTransformerController implements TransformControll
reply.setStatus(e.getStatusCode());
reply.setErrorDetails(messageWithCause("Failed at writing the transformed file", e));
- logger.error("Failed to save target file (TransformException), sending " + reply, e);
+ transformerDebug.logFailure(reply);
+ logger.trace("Failed to save target file (TransformException), sending " + reply, e);
return new ResponseEntity<>(reply, HttpStatus.valueOf(reply.getStatus()));
}
catch (HttpClientErrorException e)
@@ -309,8 +323,8 @@ public abstract class AbstractTransformerController implements TransformControll
reply.setStatus(e.getStatusCode().value());
reply.setErrorDetails(messageWithCause("Failed at writing the transformed file. ", e));
- logger.error("Failed to save target file (HttpClientErrorException), sending " + reply,
- e);
+ transformerDebug.logFailure(reply);
+ logger.trace("Failed to save target file (HttpClientErrorException), sending " + reply, e);
return new ResponseEntity<>(reply, HttpStatus.valueOf(reply.getStatus()));
}
catch (Exception e)
@@ -318,7 +332,8 @@ public abstract class AbstractTransformerController implements TransformControll
reply.setStatus(INTERNAL_SERVER_ERROR.value());
reply.setErrorDetails(messageWithCause("Failed at writing the transformed file. ", e));
- logger.error("Failed to save target file (Exception), sending " + reply, e);
+ transformerDebug.logFailure(reply);
+ logger.trace("Failed to save target file (Exception), sending " + reply, e);
return new ResponseEntity<>(reply, HttpStatus.valueOf(reply.getStatus()));
}
@@ -343,7 +358,8 @@ public abstract class AbstractTransformerController implements TransformControll
reply.setTargetReference(targetRef.getEntry().getFileRef());
reply.setStatus(CREATED.value());
- logger.info("Sending successful {}, timeout {} ms", reply, timeout);
+ transformerDebug.popTransform(reply);
+ logger.trace("Sending successful {}, timeout {} ms", reply, timeout);
return new ResponseEntity<>(reply, HttpStatus.valueOf(reply.getStatus()));
}
@@ -354,6 +370,21 @@ public abstract class AbstractTransformerController implements TransformControll
return errors;
}
+ private void validateInternalContext(TransformRequest request, Errors errors)
+ {
+ String errorMessage = InternalContext.checkForBasicErrors(request.getInternalContext(), "T-Request");
+ if (errorMessage != null)
+ {
+ errors.rejectValue("internalContext", null, errorMessage);
+ }
+ }
+
+ private void initialiseContext(TransformRequest request)
+ {
+ // If needed initialise the context enough to allow logging to take place without NPE checks
+ request.setInternalContext(InternalContext.initialise(request.getInternalContext()));
+ }
+
/**
* Loads the file with the specified sourceReference from Alfresco Shared File Store
*
@@ -422,7 +453,7 @@ public abstract class AbstractTransformerController implements TransformControll
}
else if (logger.isInfoEnabled())
{
- logger.info("Using transform name provided in the request: " + requestTransformName);
+ logger.trace("Using transform name provided in the request: " + requestTransformName);
}
return transformName;
}
diff --git a/alfresco-transformer-base/src/main/java/org/alfresco/transformer/QueueTransformService.java b/alfresco-transformer-base/src/main/java/org/alfresco/transformer/QueueTransformService.java
index 7cffd7dc..cb1d6fa4 100644
--- a/alfresco-transformer-base/src/main/java/org/alfresco/transformer/QueueTransformService.java
+++ b/alfresco-transformer-base/src/main/java/org/alfresco/transformer/QueueTransformService.java
@@ -2,7 +2,7 @@
* #%L
* Alfresco Transform Core
* %%
- * Copyright (C) 2005 - 2019 Alfresco Software Limited
+ * Copyright (C) 2005 - 2022 Alfresco Software Limited
* %%
* This file is part of the Alfresco software.
* -
@@ -106,7 +106,7 @@ public class QueueTransformService
return;
}
- logger.info("New T-Request from queue with correlationId: {}", correlationId);
+ logger.trace("New T-Request from queue with correlationId: {}", correlationId);
Optional transformRequest;
try
diff --git a/alfresco-transformer-base/src/main/java/org/alfresco/transformer/config/WebApplicationConfig.java b/alfresco-transformer-base/src/main/java/org/alfresco/transformer/config/WebApplicationConfig.java
index d8dad96c..013f850e 100644
--- a/alfresco-transformer-base/src/main/java/org/alfresco/transformer/config/WebApplicationConfig.java
+++ b/alfresco-transformer-base/src/main/java/org/alfresco/transformer/config/WebApplicationConfig.java
@@ -2,7 +2,7 @@
* #%L
* Alfresco Transform Core
* %%
- * Copyright (C) 2005 - 2019 Alfresco Software Limited
+ * Copyright (C) 2005 - 2022 Alfresco Software Limited
* %%
* This file is part of the Alfresco software.
* -
@@ -28,6 +28,7 @@ package org.alfresco.transformer.config;
import org.alfresco.transform.client.model.TransformRequestValidator;
import org.alfresco.transform.client.registry.TransformServiceRegistry;
+import org.alfresco.transform.router.TransformerDebug;
import org.alfresco.transformer.TransformInterceptor;
import org.alfresco.transformer.TransformRegistryImpl;
import org.alfresco.transformer.clients.AlfrescoSharedFileStoreClient;
@@ -78,4 +79,10 @@ public class WebApplicationConfig implements WebMvcConfigurer
{
return new TransformRegistryImpl();
}
+
+ @Bean
+ public TransformerDebug transformerDebug()
+ {
+ return new TransformerDebug().setIsTEngine(true);
+ }
}
diff --git a/alfresco-transformer-base/src/main/java/org/alfresco/transformer/messaging/TransformReplySender.java b/alfresco-transformer-base/src/main/java/org/alfresco/transformer/messaging/TransformReplySender.java
index 2e1e7fa2..e4583f53 100644
--- a/alfresco-transformer-base/src/main/java/org/alfresco/transformer/messaging/TransformReplySender.java
+++ b/alfresco-transformer-base/src/main/java/org/alfresco/transformer/messaging/TransformReplySender.java
@@ -66,7 +66,7 @@ public class TransformReplySender
m.setJMSCorrelationID(correlationId);
return m;
});
- logger.info("Sent: {} - with correlation ID {}", reply, correlationId);
+ logger.trace("Sent: {} - with correlation ID {}", reply, correlationId);
}
catch (Exception e)
{
diff --git a/alfresco-transformer-base/src/main/resources/application.yaml b/alfresco-transformer-base/src/main/resources/application.yaml
index 7e22ec7a..7fa17b39 100644
--- a/alfresco-transformer-base/src/main/resources/application.yaml
+++ b/alfresco-transformer-base/src/main/resources/application.yaml
@@ -31,6 +31,7 @@ logging:
org.alfresco.transformer.ImageMagickController: debug
org.alfresco.transformer.TikaController: debug
org.alfresco.transformer.MiscellaneousTransformersController: debug
+ org.alfresco.transform.router.TransformerDebug: debug
fileStoreUrl: ${FILE_STORE_URL:http://localhost:8099/alfresco/api/-default-/private/sfs/versions/1/file}
diff --git a/alfresco-transformer-base/src/test/java/org/alfresco/transformer/AbstractTransformerControllerTest.java b/alfresco-transformer-base/src/test/java/org/alfresco/transformer/AbstractTransformerControllerTest.java
index 073af004..b0344ef7 100644
--- a/alfresco-transformer-base/src/test/java/org/alfresco/transformer/AbstractTransformerControllerTest.java
+++ b/alfresco-transformer-base/src/test/java/org/alfresco/transformer/AbstractTransformerControllerTest.java
@@ -2,7 +2,7 @@
* #%L
* Alfresco Transform Core
* %%
- * Copyright (C) 2005 - 2021 Alfresco Software Limited
+ * Copyright (C) 2005 - 2022 Alfresco Software Limited
* %%
* This file is part of the Alfresco software.
* -
@@ -48,10 +48,12 @@ import java.io.IOException;
import java.net.URL;
import java.nio.channels.FileChannel;
import java.nio.file.Files;
+import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
+import org.alfresco.transform.client.model.InternalContext;
import org.alfresco.transform.client.model.TransformReply;
import org.alfresco.transform.client.model.TransformRequest;
import org.alfresco.transform.client.model.config.SupportedSourceAndTarget;
@@ -61,6 +63,7 @@ import org.alfresco.transform.client.model.config.TransformOptionGroup;
import org.alfresco.transform.client.model.config.TransformOptionValue;
import org.alfresco.transform.client.model.config.Transformer;
import org.alfresco.transform.client.registry.TransformServiceRegistry;
+import org.alfresco.transform.router.TransformStack;
import org.alfresco.transformer.clients.AlfrescoSharedFileStoreClient;
import org.alfresco.transformer.probes.ProbeTestTransform;
import org.junit.jupiter.api.Test;
@@ -104,6 +107,7 @@ public abstract class AbstractTransformerControllerTest
protected String targetExtension;
protected String sourceMimetype;
protected String targetMimetype;
+ protected HashMap options = new HashMap<>();
protected MockMultipartFile sourceFile;
protected String expectedOptions;
@@ -220,6 +224,30 @@ public abstract class AbstractTransformerControllerTest
return builder;
}
+ protected TransformRequest createTransformRequest(String sourceFileRef, File sourceFile)
+ {
+ TransformRequest transformRequest = new TransformRequest();
+ transformRequest.setRequestId("1");
+ transformRequest.setSchema(1);
+ transformRequest.setClientData("Alfresco Digital Business Platform");
+ transformRequest.setTransformRequestOptions(options);
+ transformRequest.setSourceReference(sourceFileRef);
+ transformRequest.setSourceExtension(sourceExtension);
+ transformRequest.setSourceMediaType(sourceMimetype);
+ transformRequest.setSourceSize(sourceFile.length());
+ transformRequest.setTargetExtension(targetExtension);
+ transformRequest.setTargetMediaType(targetMimetype);
+ transformRequest.setInternalContext(InternalContext.initialise(null));
+ transformRequest.getInternalContext().getMultiStep().setInitialRequestId("123");
+ transformRequest.getInternalContext().getMultiStep().setInitialSourceMediaType(sourceMimetype);
+ TransformStack.setInitialTransformRequestOptions(transformRequest.getInternalContext(), options);
+ TransformStack.setInitialSourceReference(transformRequest.getInternalContext(), sourceFileRef);
+ TransformStack.addTransformLevel(transformRequest.getInternalContext(),
+ TransformStack.levelBuilder(TransformStack.PIPELINE_FLAG)
+ .withStep("transformerName", sourceMimetype, targetMimetype));
+ return transformRequest;
+ }
+
@Test
public void simpleTransformTest() throws Exception
{
diff --git a/pom.xml b/pom.xml
index abf0a12f..3ba15699 100644
--- a/pom.xml
+++ b/pom.xml
@@ -3,7 +3,7 @@
4.0.0
org.alfresco
alfresco-transform-core
- 2.5.5-SNAPSHOT
+ 2.5.5-A1-SNAPSHOT
pom
@@ -21,7 +21,7 @@
2.0.24
3.0.1.12
${project.version}
- 1.4.3
+ 1.4.5
5.16.3
2.13.0
${dependency.jackson.version}