mirror of
https://github.com/Alfresco/alfresco-transform-core.git
synced 2025-08-14 17:58:27 +00:00
ongoing [skip ci]
This commit is contained in:
@@ -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
|
||||
|
@@ -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.
|
||||
|
@@ -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)
|
||||
|
@@ -108,6 +108,12 @@ abstract class ProcessHandler extends FragmentHandler
|
||||
super.init();
|
||||
}
|
||||
|
||||
|
||||
public String getReference()
|
||||
{
|
||||
return reference;
|
||||
}
|
||||
|
||||
public void handleTransformRequest()
|
||||
{
|
||||
LogEntry.start();
|
||||
|
@@ -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);
|
||||
}
|
||||
|
@@ -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;
|
||||
}
|
@@ -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>
|
||||
|
Reference in New Issue
Block a user