mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-07-31 17:39:05 +00:00
Merged HEAD-BUG-FIX (5.0/Cloud) to HEAD (5.0/Cloud)
80349: MNT-11779 Cannot create dynamic transformer transformer.complex.JodConverter... ERRORs in log - Allow Enterprise or AMP specific transformers to be ignored. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@82735 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
@@ -25,6 +25,12 @@
|
|||||||
<property name="globalProperties">
|
<property name="globalProperties">
|
||||||
<ref bean="global-properties" />
|
<ref bean="global-properties" />
|
||||||
</property>
|
</property>
|
||||||
|
<property name="moduleService">
|
||||||
|
<ref bean="ModuleService" />
|
||||||
|
</property>
|
||||||
|
<property name="descriptorService">
|
||||||
|
<ref bean="descriptorComponent" />
|
||||||
|
</property>
|
||||||
</bean>
|
</bean>
|
||||||
|
|
||||||
<!-- Selects the transformer to be used -->
|
<!-- Selects the transformer to be used -->
|
||||||
|
@@ -165,6 +165,7 @@ content.transformer.complex.PDF.Image.extensions.pdf.gif.priority=50
|
|||||||
|
|
||||||
# JodConverter (OpenOffice should be the same)
|
# JodConverter (OpenOffice should be the same)
|
||||||
# --------------------------------------------
|
# --------------------------------------------
|
||||||
|
content.transformer.JodConverter.edition=Enterprise
|
||||||
content.transformer.JodConverter.priority=110
|
content.transformer.JodConverter.priority=110
|
||||||
content.transformer.JodConverter.extensions.*.xlsm.supported=false
|
content.transformer.JodConverter.extensions.*.xlsm.supported=false
|
||||||
content.transformer.JodConverter.extensions.*.pptm.supported=false
|
content.transformer.JodConverter.extensions.*.pptm.supported=false
|
||||||
@@ -212,6 +213,7 @@ content.transformer.JodConverter.extensions.doc.pdf.maxSourceSizeKBytes=10240
|
|||||||
content.transformer.JodConverter.extensions.vsd.pdf.maxSourceSizeKBytes=4096
|
content.transformer.JodConverter.extensions.vsd.pdf.maxSourceSizeKBytes=4096
|
||||||
content.transformer.JodConverter.extensions.ppsx.pdf.maxSourceSizeKBytes=4096
|
content.transformer.JodConverter.extensions.ppsx.pdf.maxSourceSizeKBytes=4096
|
||||||
|
|
||||||
|
content.transformer.JodConverter.Html2Pdf.edition=Enterprise
|
||||||
content.transformer.JodConverter.Html2Pdf.pipeline=JodConverter|odt|JodConverter
|
content.transformer.JodConverter.Html2Pdf.pipeline=JodConverter|odt|JodConverter
|
||||||
content.transformer.JodConverter.Html2Pdf.extensions.html.pdf.supported=true
|
content.transformer.JodConverter.Html2Pdf.extensions.html.pdf.supported=true
|
||||||
content.transformer.JodConverter.Html2Pdf.extensions.html.pdf.priority=50
|
content.transformer.JodConverter.Html2Pdf.extensions.html.pdf.priority=50
|
||||||
@@ -219,14 +221,17 @@ content.transformer.JodConverter.Html2Pdf.extensions.html.pdf.priority=50
|
|||||||
# This transformer exists because OpenOffice and LibreOffice have a problem
|
# This transformer exists because OpenOffice and LibreOffice have a problem
|
||||||
# going directly from HTML to PDF. Going via ODT appears a much better option.
|
# going directly from HTML to PDF. Going via ODT appears a much better option.
|
||||||
# For example <sub> tags hang the soffice process. ALF-14035
|
# For example <sub> tags hang the soffice process. ALF-14035
|
||||||
|
content.transformer.JodConverter.2Pdf.edition=Enterprise
|
||||||
content.transformer.JodConverter.2Pdf.available=false
|
content.transformer.JodConverter.2Pdf.available=false
|
||||||
content.transformer.JodConverter.2Pdf.failover=JodConverter|JodConverter.Html2Pdf
|
content.transformer.JodConverter.2Pdf.failover=JodConverter|JodConverter.Html2Pdf
|
||||||
content.transformer.JodConverter.2Pdf.priority=150
|
content.transformer.JodConverter.2Pdf.priority=150
|
||||||
content.transformer.JodConverter.2Pdf.extensions.*.pdf.supported=true
|
content.transformer.JodConverter.2Pdf.extensions.*.pdf.supported=true
|
||||||
|
|
||||||
|
content.transformer.complex.JodConverter.Image.edition=Enterprise
|
||||||
content.transformer.complex.JodConverter.Image.pipeline=JodConverter.2Pdf|pdf|complex.PDF.Image
|
content.transformer.complex.JodConverter.Image.pipeline=JodConverter.2Pdf|pdf|complex.PDF.Image
|
||||||
content.transformer.complex.JodConverter.Image.priority=250
|
content.transformer.complex.JodConverter.Image.priority=250
|
||||||
|
|
||||||
|
content.transformer.complex.JodConverter.PdfBox.edition=Enterprise
|
||||||
content.transformer.complex.JodConverter.PdfBox.pipeline=JodConverter.2Pdf|pdf|PdfBox
|
content.transformer.complex.JodConverter.PdfBox.pipeline=JodConverter.2Pdf|pdf|PdfBox
|
||||||
content.transformer.complex.JodConverter.PdfBox.priority=150
|
content.transformer.complex.JodConverter.PdfBox.priority=150
|
||||||
content.transformer.complex.JodConverter.PdfBox.extensions.xlsm.txt.supported=false
|
content.transformer.complex.JodConverter.PdfBox.extensions.xlsm.txt.supported=false
|
||||||
@@ -253,6 +258,7 @@ content.transformer.complex.JodConverter.PdfBox.extensions.ppsx.txt.supported=fa
|
|||||||
content.transformer.complex.JodConverter.PdfBox.extensions.xlsb.txt.maxSourceSizeKBytes=1024
|
content.transformer.complex.JodConverter.PdfBox.extensions.xlsb.txt.maxSourceSizeKBytes=1024
|
||||||
content.transformer.complex.JodConverter.PdfBox.extensions.potm.txt.maxSourceSizeKBytes=1024
|
content.transformer.complex.JodConverter.PdfBox.extensions.potm.txt.maxSourceSizeKBytes=1024
|
||||||
|
|
||||||
|
content.transformer.complex.JodConverter.Pdf2swf.edition=Enterprise
|
||||||
content.transformer.complex.JodConverter.Pdf2swf.pipeline=JodConverter.2Pdf|pdf|Pdf2swf
|
content.transformer.complex.JodConverter.Pdf2swf.pipeline=JodConverter.2Pdf|pdf|Pdf2swf
|
||||||
content.transformer.complex.JodConverter.Pdf2swf.priority=150
|
content.transformer.complex.JodConverter.Pdf2swf.priority=150
|
||||||
content.transformer.complex.JodConverter.Pdf2swf.extensions.xlsm.swf.maxSourceSizeKBytes=1024
|
content.transformer.complex.JodConverter.Pdf2swf.extensions.xlsm.swf.maxSourceSizeKBytes=1024
|
||||||
|
@@ -121,6 +121,21 @@ public interface TransformerConfig
|
|||||||
*/
|
*/
|
||||||
static final String PRIORITY = ".priority";
|
static final String PRIORITY = ".priority";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The suffix to property names to indicate which Alfresco version the transformer is
|
||||||
|
* available with. If not specified it is not restricted. So if set to "Enterprise" it
|
||||||
|
* is not available to Community.
|
||||||
|
* @see AMP
|
||||||
|
*/
|
||||||
|
static final String EDITION = ".edition";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The suffix to property names to indicate which Alfresco AMPs the transformer is
|
||||||
|
* available with. The value should be the AMP's ID. If not specified it is not restricted.
|
||||||
|
* @see #EDITION
|
||||||
|
*/
|
||||||
|
static final String AMP = ".amp";
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The suffix to property names for the threshold count.
|
* The suffix to property names for the threshold count.
|
||||||
*/
|
*/
|
||||||
|
@@ -18,7 +18,9 @@
|
|||||||
*/
|
*/
|
||||||
package org.alfresco.repo.content.transform;
|
package org.alfresco.repo.content.transform;
|
||||||
|
|
||||||
|
import static org.alfresco.repo.content.transform.TransformerConfig.AMP;
|
||||||
import static org.alfresco.repo.content.transform.TransformerConfig.AVAILABLE;
|
import static org.alfresco.repo.content.transform.TransformerConfig.AVAILABLE;
|
||||||
|
import static org.alfresco.repo.content.transform.TransformerConfig.EDITION;
|
||||||
import static org.alfresco.repo.content.transform.TransformerConfig.FAILOVER;
|
import static org.alfresco.repo.content.transform.TransformerConfig.FAILOVER;
|
||||||
import static org.alfresco.repo.content.transform.TransformerConfig.PIPE;
|
import static org.alfresco.repo.content.transform.TransformerConfig.PIPE;
|
||||||
import static org.alfresco.repo.content.transform.TransformerConfig.PIPELINE;
|
import static org.alfresco.repo.content.transform.TransformerConfig.PIPELINE;
|
||||||
@@ -31,8 +33,10 @@ import java.util.Map;
|
|||||||
|
|
||||||
import org.alfresco.error.AlfrescoRuntimeException;
|
import org.alfresco.error.AlfrescoRuntimeException;
|
||||||
import org.alfresco.repo.content.MimetypeMap;
|
import org.alfresco.repo.content.MimetypeMap;
|
||||||
|
import org.alfresco.service.cmr.module.ModuleService;
|
||||||
import org.alfresco.service.cmr.repository.ContentService;
|
import org.alfresco.service.cmr.repository.ContentService;
|
||||||
import org.alfresco.service.cmr.repository.MimetypeService;
|
import org.alfresco.service.cmr.repository.MimetypeService;
|
||||||
|
import org.alfresco.service.descriptor.DescriptorService;
|
||||||
import org.apache.commons.logging.Log;
|
import org.apache.commons.logging.Log;
|
||||||
import org.apache.commons.logging.LogFactory;
|
import org.apache.commons.logging.LogFactory;
|
||||||
|
|
||||||
@@ -49,19 +53,22 @@ public class TransformerConfigDynamicTransformers extends TransformerPropertyNam
|
|||||||
|
|
||||||
public TransformerConfigDynamicTransformers(TransformerConfig transformerConfig, TransformerProperties transformerProperties,
|
public TransformerConfigDynamicTransformers(TransformerConfig transformerConfig, TransformerProperties transformerProperties,
|
||||||
MimetypeService mimetypeService, ContentService contentService, ContentTransformerRegistry transformerRegistry,
|
MimetypeService mimetypeService, ContentService contentService, ContentTransformerRegistry transformerRegistry,
|
||||||
TransformerDebug transformerDebug)
|
TransformerDebug transformerDebug, ModuleService moduleService, DescriptorService descriptorService)
|
||||||
{
|
{
|
||||||
createDynamicTransformers(transformerConfig, transformerProperties, mimetypeService, contentService, transformerRegistry, transformerDebug);
|
createDynamicTransformers(transformerConfig, transformerProperties, mimetypeService, contentService,
|
||||||
|
transformerRegistry, transformerDebug, moduleService, descriptorService);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void createDynamicTransformers(TransformerConfig transformerConfig, TransformerProperties transformerProperties,
|
private void createDynamicTransformers(TransformerConfig transformerConfig, TransformerProperties transformerProperties,
|
||||||
MimetypeService mimetypeService, ContentService contentService, ContentTransformerRegistry transformerRegistry,
|
MimetypeService mimetypeService, ContentService contentService, ContentTransformerRegistry transformerRegistry,
|
||||||
TransformerDebug transformerDebug)
|
TransformerDebug transformerDebug, ModuleService moduleService, DescriptorService descriptorService)
|
||||||
{
|
{
|
||||||
Collection<String> SUFFIXES = Arrays.asList(new String [] {
|
Collection<String> SUFFIXES = Arrays.asList(new String [] {
|
||||||
FAILOVER,
|
FAILOVER,
|
||||||
PIPELINE,
|
PIPELINE,
|
||||||
AVAILABLE
|
AVAILABLE,
|
||||||
|
EDITION,
|
||||||
|
AMP
|
||||||
});
|
});
|
||||||
|
|
||||||
Map<TransformerSourceTargetSuffixKey, TransformerSourceTargetSuffixValue>
|
Map<TransformerSourceTargetSuffixKey, TransformerSourceTargetSuffixValue>
|
||||||
@@ -82,18 +89,36 @@ public class TransformerConfigDynamicTransformers extends TransformerPropertyNam
|
|||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
String availableStr = getProperty(property.transformerName, null, null, AVAILABLE, null, transformerSourceTargetSuffixValues);
|
String edition = getProperty(property.transformerName, null, null, EDITION,
|
||||||
boolean available = availableStr == null || "true".equalsIgnoreCase(availableStr);
|
null, transformerSourceTargetSuffixValues);
|
||||||
|
String moduleId = getProperty(property.transformerName, null, null, AMP,
|
||||||
|
null, transformerSourceTargetSuffixValues);
|
||||||
|
if (!supportedEdition(descriptorService, edition))
|
||||||
|
{
|
||||||
|
processed.add(property);
|
||||||
|
logger.debug(property.transformerName+" ignored. As it is an "+edition+" only transformer.");
|
||||||
|
}
|
||||||
|
else if (!supportedModule(moduleService, moduleId))
|
||||||
|
{
|
||||||
|
processed.add(property);
|
||||||
|
logger.debug(property.transformerName+" ignored. As the AMP "+moduleId+" is not installed.");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
String availableStr = getProperty(property.transformerName, null, null, AVAILABLE,
|
||||||
|
null, transformerSourceTargetSuffixValues);
|
||||||
|
boolean available = availableStr == null || "true".equalsIgnoreCase(availableStr);
|
||||||
|
|
||||||
AbstractContentTransformer2 transformer = property.suffix.equals(PIPELINE)
|
AbstractContentTransformer2 transformer = property.suffix.equals(PIPELINE)
|
||||||
? createComplexTransformer(property, transformerConfig, mimetypeService,
|
? createComplexTransformer(property, transformerConfig, mimetypeService,
|
||||||
contentService, transformerRegistry, transformerDebug, available)
|
contentService, transformerRegistry, transformerDebug, available)
|
||||||
: createFailoverTransformer(property, transformerConfig, mimetypeService,
|
: createFailoverTransformer(property, transformerConfig, mimetypeService,
|
||||||
contentService, transformerRegistry, transformerDebug, available);
|
contentService, transformerRegistry, transformerDebug, available);
|
||||||
transformer.register();
|
transformer.register();
|
||||||
processed.add(property);
|
processed.add(property);
|
||||||
dynamicTransformers.add(transformer);
|
dynamicTransformers.add(transformer);
|
||||||
logger.debug(property.transformerName+" added");
|
logger.debug(property.transformerName+" added");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
catch (IllegalArgumentException e)
|
catch (IllegalArgumentException e)
|
||||||
{
|
{
|
||||||
@@ -120,6 +145,18 @@ public class TransformerConfigDynamicTransformers extends TransformerPropertyNam
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private boolean supportedEdition(DescriptorService descriptorService, String edition)
|
||||||
|
{
|
||||||
|
return descriptorService == null || edition == null ||
|
||||||
|
descriptorService.getServerDescriptor().getEdition().equals(edition);
|
||||||
|
}
|
||||||
|
|
||||||
|
private boolean supportedModule(ModuleService moduleService, String moduleId)
|
||||||
|
{
|
||||||
|
return moduleService == null || moduleId == null ||
|
||||||
|
moduleService.getModule(moduleId) != null;
|
||||||
|
}
|
||||||
|
|
||||||
private AbstractContentTransformer2 createComplexTransformer(TransformerSourceTargetSuffixValue property,
|
private AbstractContentTransformer2 createComplexTransformer(TransformerSourceTargetSuffixValue property,
|
||||||
TransformerConfig transformerConfig,
|
TransformerConfig transformerConfig,
|
||||||
MimetypeService mimetypeService, ContentService contentService,
|
MimetypeService mimetypeService, ContentService contentService,
|
||||||
|
@@ -21,10 +21,13 @@ package org.alfresco.repo.content.transform;
|
|||||||
import java.util.Properties;
|
import java.util.Properties;
|
||||||
|
|
||||||
import org.alfresco.repo.management.subsystems.ChildApplicationContextFactory;
|
import org.alfresco.repo.management.subsystems.ChildApplicationContextFactory;
|
||||||
|
import org.alfresco.service.cmr.module.ModuleDetails;
|
||||||
|
import org.alfresco.service.cmr.module.ModuleService;
|
||||||
import org.alfresco.service.cmr.repository.ContentService;
|
import org.alfresco.service.cmr.repository.ContentService;
|
||||||
import org.alfresco.service.cmr.repository.MimetypeService;
|
import org.alfresco.service.cmr.repository.MimetypeService;
|
||||||
import org.alfresco.service.cmr.repository.TransformationOptionLimits;
|
import org.alfresco.service.cmr.repository.TransformationOptionLimits;
|
||||||
import org.alfresco.service.cmr.repository.TransformationOptions;
|
import org.alfresco.service.cmr.repository.TransformationOptions;
|
||||||
|
import org.alfresco.service.descriptor.DescriptorService;
|
||||||
import org.springframework.context.ApplicationEvent;
|
import org.springframework.context.ApplicationEvent;
|
||||||
import org.springframework.extensions.surf.util.AbstractLifecycleBean;
|
import org.springframework.extensions.surf.util.AbstractLifecycleBean;
|
||||||
|
|
||||||
@@ -85,6 +88,10 @@ public class TransformerConfigImpl extends AbstractLifecycleBean implements Tran
|
|||||||
// Needed to read global properties.
|
// Needed to read global properties.
|
||||||
private Properties globalProperties;
|
private Properties globalProperties;
|
||||||
|
|
||||||
|
private ModuleService moduleService;
|
||||||
|
|
||||||
|
private DescriptorService descriptorService;
|
||||||
|
|
||||||
private TransformerProperties transformerProperties;
|
private TransformerProperties transformerProperties;
|
||||||
|
|
||||||
private TransformerConfigDynamicTransformers dynamicTransformers;
|
private TransformerConfigDynamicTransformers dynamicTransformers;
|
||||||
@@ -129,6 +136,16 @@ public class TransformerConfigImpl extends AbstractLifecycleBean implements Tran
|
|||||||
this.globalProperties = globalProperties;
|
this.globalProperties = globalProperties;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void setModuleService(ModuleService moduleService)
|
||||||
|
{
|
||||||
|
this.moduleService = moduleService;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setDescriptorService(DescriptorService descriptorService)
|
||||||
|
{
|
||||||
|
this.descriptorService = descriptorService;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Called by spring after bean is initialised.
|
* Called by spring after bean is initialised.
|
||||||
*/
|
*/
|
||||||
@@ -138,7 +155,7 @@ public class TransformerConfigImpl extends AbstractLifecycleBean implements Tran
|
|||||||
transformerProperties = new TransformerProperties(subsystem, globalProperties);
|
transformerProperties = new TransformerProperties(subsystem, globalProperties);
|
||||||
|
|
||||||
dynamicTransformers = new TransformerConfigDynamicTransformers(this, transformerProperties, mimetypeService,
|
dynamicTransformers = new TransformerConfigDynamicTransformers(this, transformerProperties, mimetypeService,
|
||||||
contentService, transformerRegistry, transformerDebug);
|
contentService, transformerRegistry, transformerDebug, moduleService, descriptorService);
|
||||||
statistics= new TransformerConfigStatistics(this, mimetypeService);
|
statistics= new TransformerConfigStatistics(this, mimetypeService);
|
||||||
limits = new TransformerConfigLimits(transformerProperties, mimetypeService);
|
limits = new TransformerConfigLimits(transformerProperties, mimetypeService);
|
||||||
supported = new TransformerConfigSupported(transformerProperties, mimetypeService);
|
supported = new TransformerConfigSupported(transformerProperties, mimetypeService);
|
||||||
|
@@ -26,10 +26,14 @@ import static org.mockito.Mockito.when;
|
|||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
|
||||||
|
import org.alfresco.service.cmr.module.ModuleDetails;
|
||||||
|
import org.alfresco.service.cmr.module.ModuleService;
|
||||||
import org.alfresco.service.cmr.repository.ContentService;
|
import org.alfresco.service.cmr.repository.ContentService;
|
||||||
import org.alfresco.service.cmr.repository.MimetypeService;
|
import org.alfresco.service.cmr.repository.MimetypeService;
|
||||||
import org.alfresco.service.cmr.repository.TransformationOptionLimits;
|
import org.alfresco.service.cmr.repository.TransformationOptionLimits;
|
||||||
import org.alfresco.service.cmr.repository.TransformationOptions;
|
import org.alfresco.service.cmr.repository.TransformationOptions;
|
||||||
|
import org.alfresco.service.descriptor.Descriptor;
|
||||||
|
import org.alfresco.service.descriptor.DescriptorService;
|
||||||
import org.joda.time.DateTime;
|
import org.joda.time.DateTime;
|
||||||
import org.joda.time.format.DateTimeFormat;
|
import org.joda.time.format.DateTimeFormat;
|
||||||
import org.joda.time.format.DateTimeFormatter;
|
import org.joda.time.format.DateTimeFormatter;
|
||||||
@@ -60,6 +64,18 @@ public class TransformerConfigDynamicTransformersTest
|
|||||||
@Mock
|
@Mock
|
||||||
private TransformerDebug transformerDebug;
|
private TransformerDebug transformerDebug;
|
||||||
|
|
||||||
|
@Mock
|
||||||
|
ModuleService moduleService;
|
||||||
|
|
||||||
|
@Mock
|
||||||
|
ModuleDetails moduleDetails;
|
||||||
|
|
||||||
|
@Mock
|
||||||
|
DescriptorService descriptorService;
|
||||||
|
|
||||||
|
@Mock
|
||||||
|
Descriptor descriptor;
|
||||||
|
|
||||||
ContentTransformerRegistry transformerRegistry;
|
ContentTransformerRegistry transformerRegistry;
|
||||||
|
|
||||||
private ContentTransformer transformer1;
|
private ContentTransformer transformer1;
|
||||||
@@ -98,7 +114,7 @@ public class TransformerConfigDynamicTransformersTest
|
|||||||
"content.transformer.transformerA.pipeline", "transformer1|pdf|transformer2|png|transformer3");
|
"content.transformer.transformerA.pipeline", "transformer1|pdf|transformer2|png|transformer3");
|
||||||
|
|
||||||
assertEquals(0, new TransformerConfigDynamicTransformers(transformerConfig, transformerProperties, mimetypeService, contentService,
|
assertEquals(0, new TransformerConfigDynamicTransformers(transformerConfig, transformerProperties, mimetypeService, contentService,
|
||||||
transformerRegistry, transformerDebug).getErrorCount());
|
transformerRegistry, transformerDebug, null, null).getErrorCount());
|
||||||
|
|
||||||
assertEquals(4, transformerRegistry.getAllTransformers().size());
|
assertEquals(4, transformerRegistry.getAllTransformers().size());
|
||||||
assertEquals(1, transformerRegistry.getTransformers().size());
|
assertEquals(1, transformerRegistry.getTransformers().size());
|
||||||
@@ -129,7 +145,7 @@ public class TransformerConfigDynamicTransformersTest
|
|||||||
"content.transformer.transformerA.pipeline", "transformer1|pdf");
|
"content.transformer.transformerA.pipeline", "transformer1|pdf");
|
||||||
|
|
||||||
assertEquals(1, new TransformerConfigDynamicTransformers(transformerConfig, transformerProperties, mimetypeService, contentService,
|
assertEquals(1, new TransformerConfigDynamicTransformers(transformerConfig, transformerProperties, mimetypeService, contentService,
|
||||||
transformerRegistry, transformerDebug).getErrorCount());
|
transformerRegistry, transformerDebug, null, null).getErrorCount());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@@ -140,7 +156,7 @@ public class TransformerConfigDynamicTransformersTest
|
|||||||
"content.transformer.transformerA.pipeline", "transformer1|pdf|transformer2|png");
|
"content.transformer.transformerA.pipeline", "transformer1|pdf|transformer2|png");
|
||||||
|
|
||||||
assertEquals(1, new TransformerConfigDynamicTransformers(transformerConfig, transformerProperties, mimetypeService, contentService,
|
assertEquals(1, new TransformerConfigDynamicTransformers(transformerConfig, transformerProperties, mimetypeService, contentService,
|
||||||
transformerRegistry, transformerDebug).getErrorCount());
|
transformerRegistry, transformerDebug, null, null).getErrorCount());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@@ -151,7 +167,7 @@ public class TransformerConfigDynamicTransformersTest
|
|||||||
"content.transformer.transformer3.pipeline", "transformer1|pdf|transformer2");
|
"content.transformer.transformer3.pipeline", "transformer1|pdf|transformer2");
|
||||||
|
|
||||||
assertEquals(1, new TransformerConfigDynamicTransformers(transformerConfig, transformerProperties, mimetypeService, contentService,
|
assertEquals(1, new TransformerConfigDynamicTransformers(transformerConfig, transformerProperties, mimetypeService, contentService,
|
||||||
transformerRegistry, transformerDebug).getErrorCount());
|
transformerRegistry, transformerDebug, null, null).getErrorCount());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@@ -162,7 +178,7 @@ public class TransformerConfigDynamicTransformersTest
|
|||||||
"content.transformer.transformerA.pipeline", "transformer1|*|transformer2|png|transformer3");
|
"content.transformer.transformerA.pipeline", "transformer1|*|transformer2|png|transformer3");
|
||||||
|
|
||||||
new TransformerConfigDynamicTransformers(transformerConfig, transformerProperties, mimetypeService, contentService,
|
new TransformerConfigDynamicTransformers(transformerConfig, transformerProperties, mimetypeService, contentService,
|
||||||
transformerRegistry, transformerDebug);
|
transformerRegistry, transformerDebug, null, null);
|
||||||
|
|
||||||
transformerRegistry.getTransformer("transformer.transformerA");
|
transformerRegistry.getTransformer("transformer.transformerA");
|
||||||
}
|
}
|
||||||
@@ -175,7 +191,7 @@ public class TransformerConfigDynamicTransformersTest
|
|||||||
"content.transformer.transformerA.pipeline", "transformer1|pdf|*|png|transformer3");
|
"content.transformer.transformerA.pipeline", "transformer1|pdf|*|png|transformer3");
|
||||||
|
|
||||||
new TransformerConfigDynamicTransformers(transformerConfig, transformerProperties, mimetypeService, contentService,
|
new TransformerConfigDynamicTransformers(transformerConfig, transformerProperties, mimetypeService, contentService,
|
||||||
transformerRegistry, transformerDebug);
|
transformerRegistry, transformerDebug, null, null);
|
||||||
|
|
||||||
transformerRegistry.getTransformer("transformer.transformerA");
|
transformerRegistry.getTransformer("transformer.transformerA");
|
||||||
}
|
}
|
||||||
@@ -188,7 +204,7 @@ public class TransformerConfigDynamicTransformersTest
|
|||||||
"content.transformer.transformerA.pipeline", "unknown1|pdf|unknown2|png|unknown3");
|
"content.transformer.transformerA.pipeline", "unknown1|pdf|unknown2|png|unknown3");
|
||||||
|
|
||||||
assertEquals(1, new TransformerConfigDynamicTransformers(transformerConfig, transformerProperties, mimetypeService, contentService,
|
assertEquals(1, new TransformerConfigDynamicTransformers(transformerConfig, transformerProperties, mimetypeService, contentService,
|
||||||
transformerRegistry, transformerDebug).getErrorCount());
|
transformerRegistry, transformerDebug, null, null).getErrorCount());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@@ -200,7 +216,7 @@ public class TransformerConfigDynamicTransformersTest
|
|||||||
"content.transformer.transformerA.available", "false");
|
"content.transformer.transformerA.available", "false");
|
||||||
|
|
||||||
new TransformerConfigDynamicTransformers(transformerConfig, transformerProperties, mimetypeService, contentService,
|
new TransformerConfigDynamicTransformers(transformerConfig, transformerProperties, mimetypeService, contentService,
|
||||||
transformerRegistry, transformerDebug);
|
transformerRegistry, transformerDebug, null, null);
|
||||||
|
|
||||||
assertEquals(4, transformerRegistry.getAllTransformers().size());
|
assertEquals(4, transformerRegistry.getAllTransformers().size());
|
||||||
assertEquals(0, transformerRegistry.getTransformers().size()); // << note 0 rather than 1
|
assertEquals(0, transformerRegistry.getTransformers().size()); // << note 0 rather than 1
|
||||||
@@ -218,7 +234,7 @@ public class TransformerConfigDynamicTransformersTest
|
|||||||
"content.transformer.transformerA.failover", "transformer1|transformer2|transformer3");
|
"content.transformer.transformerA.failover", "transformer1|transformer2|transformer3");
|
||||||
|
|
||||||
assertEquals(0, new TransformerConfigDynamicTransformers(transformerConfig, transformerProperties, mimetypeService, contentService,
|
assertEquals(0, new TransformerConfigDynamicTransformers(transformerConfig, transformerProperties, mimetypeService, contentService,
|
||||||
transformerRegistry, transformerDebug).getErrorCount());
|
transformerRegistry, transformerDebug, null, null).getErrorCount());
|
||||||
|
|
||||||
assertEquals(4, transformerRegistry.getAllTransformers().size());
|
assertEquals(4, transformerRegistry.getAllTransformers().size());
|
||||||
assertEquals(1, transformerRegistry.getTransformers().size());
|
assertEquals(1, transformerRegistry.getTransformers().size());
|
||||||
@@ -235,7 +251,7 @@ public class TransformerConfigDynamicTransformersTest
|
|||||||
"content.transformer.transformerA.failover", "transformer1");
|
"content.transformer.transformerA.failover", "transformer1");
|
||||||
|
|
||||||
assertEquals(1, new TransformerConfigDynamicTransformers(transformerConfig, transformerProperties, mimetypeService, contentService,
|
assertEquals(1, new TransformerConfigDynamicTransformers(transformerConfig, transformerProperties, mimetypeService, contentService,
|
||||||
transformerRegistry, transformerDebug).getErrorCount());
|
transformerRegistry, transformerDebug, null, null).getErrorCount());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@@ -246,7 +262,7 @@ public class TransformerConfigDynamicTransformersTest
|
|||||||
"content.transformer.transformer3.failover", "transformer1|transformer2");
|
"content.transformer.transformer3.failover", "transformer1|transformer2");
|
||||||
|
|
||||||
assertEquals(1, new TransformerConfigDynamicTransformers(transformerConfig, transformerProperties, mimetypeService, contentService,
|
assertEquals(1, new TransformerConfigDynamicTransformers(transformerConfig, transformerProperties, mimetypeService, contentService,
|
||||||
transformerRegistry, transformerDebug).getErrorCount());
|
transformerRegistry, transformerDebug, null, null).getErrorCount());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@@ -257,7 +273,7 @@ public class TransformerConfigDynamicTransformersTest
|
|||||||
"content.transformer.transformerA.failover", "transformer1|*|transformer3");
|
"content.transformer.transformerA.failover", "transformer1|*|transformer3");
|
||||||
|
|
||||||
new TransformerConfigDynamicTransformers(transformerConfig, transformerProperties, mimetypeService, contentService,
|
new TransformerConfigDynamicTransformers(transformerConfig, transformerProperties, mimetypeService, contentService,
|
||||||
transformerRegistry, transformerDebug);
|
transformerRegistry, transformerDebug, null, null);
|
||||||
|
|
||||||
transformerRegistry.getTransformer("transformer.transformerA");
|
transformerRegistry.getTransformer("transformer.transformerA");
|
||||||
}
|
}
|
||||||
@@ -270,7 +286,7 @@ public class TransformerConfigDynamicTransformersTest
|
|||||||
"content.transformer.transformerA.failover", "unknown1|unknown2|unknown3");
|
"content.transformer.transformerA.failover", "unknown1|unknown2|unknown3");
|
||||||
|
|
||||||
assertEquals(1, new TransformerConfigDynamicTransformers(transformerConfig, transformerProperties, mimetypeService, contentService,
|
assertEquals(1, new TransformerConfigDynamicTransformers(transformerConfig, transformerProperties, mimetypeService, contentService,
|
||||||
transformerRegistry, transformerDebug).getErrorCount());
|
transformerRegistry, transformerDebug, null, null).getErrorCount());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@@ -282,7 +298,7 @@ public class TransformerConfigDynamicTransformersTest
|
|||||||
"content.transformer.transformerA.available", "false");
|
"content.transformer.transformerA.available", "false");
|
||||||
|
|
||||||
new TransformerConfigDynamicTransformers(transformerConfig, transformerProperties, mimetypeService, contentService,
|
new TransformerConfigDynamicTransformers(transformerConfig, transformerProperties, mimetypeService, contentService,
|
||||||
transformerRegistry, transformerDebug);
|
transformerRegistry, transformerDebug, null, null);
|
||||||
|
|
||||||
assertEquals(4, transformerRegistry.getAllTransformers().size());
|
assertEquals(4, transformerRegistry.getAllTransformers().size());
|
||||||
assertEquals(0, transformerRegistry.getTransformers().size()); // << note 0 rather than 1
|
assertEquals(0, transformerRegistry.getTransformers().size()); // << note 0 rather than 1
|
||||||
@@ -302,7 +318,7 @@ public class TransformerConfigDynamicTransformersTest
|
|||||||
"content.transformer.transformerE.failover", "transformer1|transformer1");
|
"content.transformer.transformerE.failover", "transformer1|transformer1");
|
||||||
|
|
||||||
new TransformerConfigDynamicTransformers(transformerConfig, transformerProperties, mimetypeService, contentService,
|
new TransformerConfigDynamicTransformers(transformerConfig, transformerProperties, mimetypeService, contentService,
|
||||||
transformerRegistry, transformerDebug);
|
transformerRegistry, transformerDebug, null, null);
|
||||||
|
|
||||||
assertEquals(5, transformerRegistry.getTransformers().size());
|
assertEquals(5, transformerRegistry.getTransformers().size());
|
||||||
|
|
||||||
@@ -321,10 +337,70 @@ public class TransformerConfigDynamicTransformersTest
|
|||||||
"content.transformer.transformerE.failover", "transformer1|transformerC");
|
"content.transformer.transformerE.failover", "transformer1|transformerC");
|
||||||
|
|
||||||
new TransformerConfigDynamicTransformers(transformerConfig, transformerProperties, mimetypeService, contentService,
|
new TransformerConfigDynamicTransformers(transformerConfig, transformerProperties, mimetypeService, contentService,
|
||||||
transformerRegistry, transformerDebug);
|
transformerRegistry, transformerDebug, null, null);
|
||||||
|
|
||||||
assertEquals(2, transformerRegistry.getTransformers().size());
|
assertEquals(2, transformerRegistry.getTransformers().size());
|
||||||
|
|
||||||
transformerRegistry.getTransformer("transformer.transformerA");
|
transformerRegistry.getTransformer("transformer.transformerA");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void entrerpriseTransformer(String edition)
|
||||||
|
{
|
||||||
|
when(descriptorService.getServerDescriptor()).thenReturn(descriptor);
|
||||||
|
when(descriptor.getEdition()).thenReturn(edition);
|
||||||
|
|
||||||
|
mockProperties(transformerProperties,
|
||||||
|
"content.transformer.transformerA.failover", "transformer1|transformer2|transformer3",
|
||||||
|
"content.transformer.transformerA.edition", "Enterprise");
|
||||||
|
|
||||||
|
new TransformerConfigDynamicTransformers(transformerConfig, transformerProperties, mimetypeService, contentService,
|
||||||
|
transformerRegistry, transformerDebug, null, descriptorService);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ampTransformer(String moduleId)
|
||||||
|
{
|
||||||
|
when(moduleService.getModule("testAmp")).thenReturn(moduleDetails);
|
||||||
|
|
||||||
|
mockProperties(transformerProperties,
|
||||||
|
"content.transformer.transformerA.failover", "transformer1|transformer2|transformer3",
|
||||||
|
"content.transformer.transformerA.amp", moduleId);
|
||||||
|
|
||||||
|
new TransformerConfigDynamicTransformers(transformerConfig, transformerProperties, mimetypeService, contentService,
|
||||||
|
transformerRegistry, transformerDebug, moduleService, null);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
// Test that enterprise transformers are not available to community.
|
||||||
|
public void communityTest()
|
||||||
|
{
|
||||||
|
entrerpriseTransformer("Community");
|
||||||
|
|
||||||
|
assertEquals(3, transformerRegistry.getAllTransformers().size());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
// Test that enterprise transformers are available to enterprise.
|
||||||
|
public void enterpriseTest()
|
||||||
|
{
|
||||||
|
entrerpriseTransformer("Enterprise");
|
||||||
|
|
||||||
|
assertEquals(4, transformerRegistry.getAllTransformers().size());
|
||||||
|
}
|
||||||
|
@Test
|
||||||
|
// Test that enterprise transformers are not available to community.
|
||||||
|
public void noAmpTest()
|
||||||
|
{
|
||||||
|
ampTransformer("AmpNotInstalled");
|
||||||
|
|
||||||
|
assertEquals(3, transformerRegistry.getAllTransformers().size());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
// Test that enterprise transformers are available to enterprise.
|
||||||
|
public void ampTest()
|
||||||
|
{
|
||||||
|
ampTransformer("testAmp");
|
||||||
|
|
||||||
|
assertEquals(4, transformerRegistry.getAllTransformers().size());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user