RenditionService. Providing extra extension point in thumbnail-rendition conversion

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@19105 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Neil McErlean
2010-03-07 14:49:32 +00:00
parent ef6595c3de
commit b39667ad40
4 changed files with 32 additions and 9 deletions

View File

@@ -46,6 +46,10 @@
<property name="thumbnailRegistry" ref="thumbnailRegistry" />
</bean>
<!-- This bean is responsible for the conversion of thumbnail definitions to
rendition definitions and vice versa -->
<bean id ="thumbnailRenditionConvertor" class="org.alfresco.repo.thumbnail.ThumbnailRenditionConvertor" />
<!-- Thumbnail Register -->
<bean id="thumbnailRegistry" class="org.alfresco.repo.thumbnail.ThumbnailRegistry">
<property name="contentService" ref="ContentService"/>
@@ -59,6 +63,7 @@
<value>avatar</value>
</list>
</property>
<property name="thumbnailRenditionConvertor" ref="thumbnailRenditionConvertor" />
</bean>
<!-- Create Thumbnail Action -->

View File

@@ -56,6 +56,19 @@ public class ThumbnailRegistry
/** Cache to store mimetype to thumbnailDefinition mapping */
private Map<String, List<ThumbnailDefinition>> mimetypeMap = new HashMap<String, List<ThumbnailDefinition>>(17);
private ThumbnailRenditionConvertor thumbnailRenditionConvertor;
public void setThumbnailRenditionConvertor(
ThumbnailRenditionConvertor thumbnailRenditionConvertor)
{
this.thumbnailRenditionConvertor = thumbnailRenditionConvertor;
}
public ThumbnailRenditionConvertor getThumbnailRenditionConvertor()
{
return thumbnailRenditionConvertor;
}
/**
* Content service
*
@@ -101,8 +114,6 @@ public class ThumbnailRegistry
private void initThumbnailDefinitions()
{
ThumbnailRenditionConvertor thumbnailRenditionConvertor = new ThumbnailRenditionConvertor();
for (String thumbnailDefinitionName : this.thumbnails)
{
QName qName = QName.createQName(NamespaceService.CONTENT_MODEL_1_0_URI, thumbnailDefinitionName);

View File

@@ -215,7 +215,7 @@ public class ThumbnailServiceImpl implements ThumbnailService
renderingAction = renditionService.createRenditionDefinition(thumbnailQName, renderingEngineName);
}
Map<String, Serializable> params = new ThumbnailRenditionConvertor().convert(transformationOptions, assocDetails);
Map<String, Serializable> params = thumbnailRegistry.getThumbnailRenditionConvertor().convert(transformationOptions, assocDetails);
for (String key : params.keySet())
{
renderingAction.setParameterValue(key, params.get(key));
@@ -314,7 +314,7 @@ public class ThumbnailServiceImpl implements ThumbnailService
rendDefn = renditionService.createRenditionDefinition(parentAssoc.getQName(), renderingEngineName);
}
Map<String, Serializable> params = new ThumbnailRenditionConvertor().convert(transformationOptions, null);
Map<String, Serializable> params = thumbnailRegistry.getThumbnailRenditionConvertor().convert(transformationOptions, null);
for (String key : params.keySet())
{
rendDefn.setParameterValue(key, params.get(key));

View File

@@ -114,6 +114,13 @@ public class ThumbnailServiceImplParameterTest
}
};
thumbs.setRenditionService(renditionService);
thumbs.setThumbnailRegistry(new ThumbnailRegistry() {
@Override
public ThumbnailRenditionConvertor getThumbnailRenditionConvertor()
{
return new ThumbnailRenditionConvertor();
}
});
thumbnailService = thumbs;
}