ongoing [skip ci]

This commit is contained in:
alandavis
2022-08-14 16:30:56 +01:00
parent e37b2c9beb
commit d704617b9c
21 changed files with 138 additions and 106 deletions

View File

@@ -39,6 +39,11 @@ import java.util.Map;
*/
public interface TransformManager
{
/**
* @return the id of the request.
*/
String getRequestId();
/**
* Allows a {@link CustomTransformer} to use a local source {@code File} rather than the supplied {@code InputStream}.
* The file will be deleted once the request is completed. To avoid creating extra files, if a File has already

View File

@@ -26,13 +26,8 @@
*/
package org.alfresco.transform.base.messaging;
import javax.jms.ConnectionFactory;
import javax.jms.Queue;
import org.alfresco.transform.messages.TransformRequestValidator;
import org.apache.activemq.command.ActiveMQQueue;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.context.annotation.Bean;
@@ -45,6 +40,9 @@ import org.springframework.lang.NonNull;
import org.springframework.messaging.handler.annotation.support.DefaultMessageHandlerMethodFactory;
import org.springframework.transaction.PlatformTransactionManager;
import javax.jms.ConnectionFactory;
import javax.jms.Queue;
/**
* JMS and messaging configuration for the T-Engines. Contains the basic config in order to have the
* T-Engine able to read from queues and send a reply back.

View File

@@ -37,6 +37,7 @@ import java.util.Comparator;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Objects;
@Component
public class CustomTransformers
@@ -48,8 +49,6 @@ public class CustomTransformers
private final Map<String, CustomTransformer> customTransformersByName = new HashMap<>();
private CustomTransformer defaultCustomTransformer;
@PostConstruct
private void initCustomTransformersByName()
{
@@ -61,19 +60,17 @@ public class CustomTransformers
logger.info("Transformers:");
customTransformers.stream()
.sorted(Comparator.comparing(CustomTransformer::getTransformerName))
.map(customTransformer -> " "+customTransformer.getTransformerName()).forEach(logger::info);
.map(customTransformer -> customTransformer.getTransformerName())
.filter(Objects::nonNull)
.map(name -> " "+name)
.forEach(logger::info);
}
}
public void setDefaultCustomTransformer(CustomTransformer defaultCustomTransformer)
{
this.defaultCustomTransformer = defaultCustomTransformer;
}
public CustomTransformer get(String name)
{
CustomTransformer customTransformer = customTransformersByName.get(name);
return customTransformer == null ? defaultCustomTransformer : customTransformer;
return customTransformer == null ? customTransformersByName.get(null) : customTransformer;
}
public void put(String name, CustomTransformer customTransformer)

View File

@@ -108,6 +108,12 @@ abstract class ProcessHandler extends FragmentHandler
super.init();
}
public String getReference()
{
return reference;
}
public void handleTransformRequest()
{
LogEntry.start();

View File

@@ -71,6 +71,11 @@ public class TransformManagerImpl implements TransformManager
this.processHandler = processHandler;
}
@Override public String getRequestId()
{
return processHandler.getReference();
}
public InputStream setInputStream(InputStream inputStream)
{
this.inputStream = inputStream;
@@ -130,14 +135,13 @@ public class TransformManagerImpl implements TransformManager
return targetFile;
}
File setTargetFile(File targetFile)
public void setTargetFile(File targetFile)
{
this.targetFile = targetFile;
if (startedWithTargetFile == null)
{
startedWithTargetFile = true;
}
return targetFile;
}
public void keepTargetFile()
@@ -179,7 +183,7 @@ public class TransformManagerImpl implements TransformManager
{
if (targetFile != null)
{
if (startedWithTargetFile == false)
if (!startedWithTargetFile)
{
FileManager.copyFileToOutputStream(targetFile, outputStreamLengthRecorder);
}

View File

@@ -47,9 +47,9 @@ public interface CustomTransformerFileAdaptor extends CustomTransformer
{
File sourceFile = transformManager.createSourceFile();
File targetFile = transformManager.createTargetFile();
transform(sourceMimetype, targetMimetype, transformOptions, sourceFile, targetFile);
transform(sourceMimetype, targetMimetype, transformOptions, sourceFile, targetFile, transformManager);
}
void transform(String sourceMimetype, String targetMimetype, Map<String, String> transformOptions,
File sourceFile, File targetFile) throws Exception;
File sourceFile, File targetFile, TransformManager transformManager) throws Exception;
}

View File

@@ -8,7 +8,7 @@
<tr><td><div style="text-align:right">directAccessUrl</div></td><td><input type="text" name="directAccessUrl"/></td></tr>
<tr><td><div style="text-align:right">sourceMimetype</div></td><td><input type="text" name="sourceMimetype" value="" /></td>
<td><select name="_sourceMimetype">
<option value="" >-- file extension --</option>
<option value="" >-- by file extension --</option>
<option value="image/jpeg" >jpg</option>
<option value="image/png">png</option>
<option value="application/pdf">pdf</option>
@@ -19,7 +19,7 @@
</select></td></tr>
<tr><td><div style="text-align:right">targetMimetype</div></td><td><input type="text" name="targetMimetype" value="" /></td>
<td><select name="_targetMimetype">
<option value="" >-- file extension --</option>
<option value="" >-- by file extension --</option>
<option value="image/jpeg" >jpg</option>
<option value="image/png">png</option>
<option value="application/pdf">pdf</option>