mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-08-07 17:49:17 +00:00
Merged V3.0 to HEAD
12795: ALFCOM-2419: ResourceBundleWrapper is no longer (de)serializable after changes merged from 2.1-A rev 8323 12826: Fix for ETHREEOH-37 and ETHREEOH-176. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@12828 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
@@ -46,6 +46,8 @@ import org.alfresco.service.cmr.repository.ContentData;
|
||||
import org.alfresco.service.cmr.repository.NodeRef;
|
||||
import org.alfresco.service.cmr.repository.StoreRef;
|
||||
import org.alfresco.service.cmr.repository.TemplateImageResolver;
|
||||
import org.alfresco.service.namespace.NamespacePrefixResolver;
|
||||
import org.alfresco.service.namespace.NamespacePrefixResolverProvider;
|
||||
import org.alfresco.service.namespace.QName;
|
||||
import org.alfresco.service.namespace.QNameMap;
|
||||
import org.alfresco.util.Pair;
|
||||
@@ -67,7 +69,7 @@ import freemarker.ext.dom.NodeModel;
|
||||
*
|
||||
* @author Kevin Roast
|
||||
*/
|
||||
public class AVMTemplateNode extends BasePermissionsNode
|
||||
public class AVMTemplateNode extends BasePermissionsNode implements NamespacePrefixResolverProvider
|
||||
{
|
||||
private static Log logger = LogFactory.getLog(AVMTemplateNode.class);
|
||||
|
||||
@@ -172,7 +174,7 @@ public class AVMTemplateNode extends BasePermissionsNode
|
||||
{
|
||||
this.version = version;
|
||||
this.path = path;
|
||||
this.properties = new QNameMap<String, Serializable>(this.services.getNamespaceService());
|
||||
this.properties = new QNameMap<String, Serializable>(this);
|
||||
if (descriptor == null)
|
||||
{
|
||||
descriptor = this.services.getAVMService().lookup(version, path, true);
|
||||
@@ -471,6 +473,12 @@ public class AVMTemplateNode extends BasePermissionsNode
|
||||
}
|
||||
|
||||
|
||||
public NamespacePrefixResolver getNamespacePrefixResolver()
|
||||
{
|
||||
return this.services.getNamespaceService();
|
||||
}
|
||||
|
||||
|
||||
// ------------------------------------------------------------------------------
|
||||
// Private helpers
|
||||
|
||||
|
@@ -43,6 +43,8 @@ import org.alfresco.service.cmr.repository.NodeRef;
|
||||
import org.alfresco.service.cmr.repository.TemplateImageResolver;
|
||||
import org.alfresco.service.cmr.version.Version;
|
||||
import org.alfresco.service.cmr.version.VersionHistory;
|
||||
import org.alfresco.service.namespace.NamespacePrefixResolver;
|
||||
import org.alfresco.service.namespace.NamespacePrefixResolverProvider;
|
||||
import org.alfresco.service.namespace.QName;
|
||||
import org.alfresco.service.namespace.QNameMap;
|
||||
import org.alfresco.service.namespace.RegexQNamePattern;
|
||||
@@ -66,7 +68,7 @@ import freemarker.ext.dom.NodeModel;
|
||||
*
|
||||
* @author Kevin Roast
|
||||
*/
|
||||
public class TemplateNode extends BasePermissionsNode
|
||||
public class TemplateNode extends BasePermissionsNode implements NamespacePrefixResolverProvider
|
||||
{
|
||||
private static final long serialVersionUID = 1234390333739034171L;
|
||||
|
||||
@@ -123,7 +125,7 @@ public class TemplateNode extends BasePermissionsNode
|
||||
this.services = services;
|
||||
this.imageResolver = resolver;
|
||||
|
||||
this.properties = new QNameMap<String, Serializable>(this.services.getNamespaceService());
|
||||
this.properties = new QNameMap<String, Serializable>(this);
|
||||
}
|
||||
|
||||
|
||||
@@ -241,7 +243,7 @@ public class TemplateNode extends BasePermissionsNode
|
||||
if (this.targetAssocs == null)
|
||||
{
|
||||
List<AssociationRef> refs = this.services.getNodeService().getTargetAssocs(this.nodeRef, RegexQNamePattern.MATCH_ALL);
|
||||
this.targetAssocs = new QNameMap<String, List<TemplateNode>>(this.services.getNamespaceService());
|
||||
this.targetAssocs = new QNameMap<String, List<TemplateNode>>(this);
|
||||
for (AssociationRef ref : refs)
|
||||
{
|
||||
String qname = ref.getTypeQName().toString();
|
||||
@@ -272,7 +274,7 @@ public class TemplateNode extends BasePermissionsNode
|
||||
if (this.sourceAssocs == null)
|
||||
{
|
||||
List<AssociationRef> refs = this.services.getNodeService().getSourceAssocs(this.nodeRef, RegexQNamePattern.MATCH_ALL);
|
||||
this.sourceAssocs = new QNameMap<String, List<TemplateNode>>(this.services.getNamespaceService());
|
||||
this.sourceAssocs = new QNameMap<String, List<TemplateNode>>(this);
|
||||
for (AssociationRef ref : refs)
|
||||
{
|
||||
String qname = ref.getTypeQName().toString();
|
||||
@@ -303,7 +305,7 @@ public class TemplateNode extends BasePermissionsNode
|
||||
if (this.childAssocs == null)
|
||||
{
|
||||
List<ChildAssociationRef> refs = this.services.getNodeService().getChildAssocs(this.nodeRef);
|
||||
this.childAssocs = new QNameMap<String, List<TemplateNode>>(this.services.getNamespaceService());
|
||||
this.childAssocs = new QNameMap<String, List<TemplateNode>>(this);
|
||||
for (ChildAssociationRef ref : refs)
|
||||
{
|
||||
String qname = ref.getTypeQName().toString();
|
||||
@@ -510,9 +512,15 @@ public class TemplateNode extends BasePermissionsNode
|
||||
return this.imageResolver;
|
||||
}
|
||||
|
||||
|
||||
// ------------------------------------------------------------------------------
|
||||
// Inner classes
|
||||
|
||||
public NamespacePrefixResolver getNamespacePrefixResolver()
|
||||
{
|
||||
return this.services.getNamespaceService();
|
||||
}
|
||||
|
||||
/**
|
||||
* Class to convert properties into template accessable objects
|
||||
*/
|
||||
|
@@ -37,6 +37,8 @@ import org.alfresco.service.cmr.repository.ContentData;
|
||||
import org.alfresco.service.cmr.repository.NodeRef;
|
||||
import org.alfresco.service.cmr.version.Version;
|
||||
import org.alfresco.service.cmr.version.VersionType;
|
||||
import org.alfresco.service.namespace.NamespacePrefixResolver;
|
||||
import org.alfresco.service.namespace.NamespacePrefixResolverProvider;
|
||||
import org.alfresco.service.namespace.QName;
|
||||
import org.alfresco.service.namespace.QNameMap;
|
||||
import org.alfresco.util.URLEncoder;
|
||||
@@ -47,7 +49,7 @@ import org.alfresco.util.URLEncoder;
|
||||
*
|
||||
* @author Kevin Roast
|
||||
*/
|
||||
public class VersionHistoryNode extends BaseContentNode
|
||||
public class VersionHistoryNode extends BaseContentNode implements NamespacePrefixResolverProvider
|
||||
{
|
||||
private QNameMap<String, Serializable> properties;
|
||||
private boolean propsRetrieved = false;
|
||||
@@ -77,7 +79,7 @@ public class VersionHistoryNode extends BaseContentNode
|
||||
this.version = version;
|
||||
this.parent = parent;
|
||||
this.services = services;
|
||||
this.properties = new QNameMap<String, Serializable>(parent.services.getNamespaceService());
|
||||
this.properties = new QNameMap<String, Serializable>(this);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -264,6 +266,12 @@ public class VersionHistoryNode extends BaseContentNode
|
||||
}
|
||||
|
||||
|
||||
public NamespacePrefixResolver getNamespacePrefixResolver()
|
||||
{
|
||||
return this.services.getNamespaceService();
|
||||
}
|
||||
|
||||
|
||||
// ------------------------------------------------------------------------------
|
||||
// Content API
|
||||
|
||||
|
@@ -49,6 +49,8 @@ import org.alfresco.service.cmr.workflow.WorkflowService;
|
||||
import org.alfresco.service.cmr.workflow.WorkflowTask;
|
||||
import org.alfresco.service.cmr.workflow.WorkflowTaskState;
|
||||
import org.alfresco.service.cmr.workflow.WorkflowTransition;
|
||||
import org.alfresco.service.namespace.NamespacePrefixResolver;
|
||||
import org.alfresco.service.namespace.NamespacePrefixResolverProvider;
|
||||
import org.alfresco.service.namespace.QName;
|
||||
import org.alfresco.service.namespace.QNameMap;
|
||||
import org.alfresco.service.namespace.RegexQNamePattern;
|
||||
@@ -160,7 +162,7 @@ public class Workflow extends BaseTemplateProcessorExtension
|
||||
/**
|
||||
* Simple bean wrapper around a WorkflowTask item
|
||||
*/
|
||||
public static class WorkflowTaskItem
|
||||
public static class WorkflowTaskItem implements NamespacePrefixResolverProvider
|
||||
{
|
||||
private WorkflowTask task;
|
||||
private QNameMap<String, Serializable> properties = null;
|
||||
@@ -317,7 +319,7 @@ public class Workflow extends BaseTemplateProcessorExtension
|
||||
{
|
||||
// convert properties to a QName accessable Map with TemplateNode objects as required
|
||||
PropertyConverter converter = new PropertyConverter();
|
||||
this.properties = new QNameMap<String, Serializable>(this.services.getNamespaceService());
|
||||
this.properties = new QNameMap<String, Serializable>(this);
|
||||
for (QName qname : this.task.properties.keySet())
|
||||
{
|
||||
Serializable value = converter.convertProperty(
|
||||
@@ -327,5 +329,10 @@ public class Workflow extends BaseTemplateProcessorExtension
|
||||
}
|
||||
return this.properties;
|
||||
}
|
||||
|
||||
public NamespacePrefixResolver getNamespacePrefixResolver()
|
||||
{
|
||||
return this.services.getNamespaceService();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user