mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-08-14 17:58:59 +00:00
Merged FILE-FOLDER-API (5.2.0) to HEAD (5.2)
122518 gjames: RA-211: Added the webscriptrequest to the Params interface git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@126477 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
@@ -48,7 +48,7 @@ public class ResourceWebScriptDelete extends AbstractResourceWebScript implement
|
||||
}
|
||||
else
|
||||
{
|
||||
return Params.valueOf(entityId, relationshipId);
|
||||
return Params.valueOf(entityId, relationshipId, req);
|
||||
|
||||
}
|
||||
case RELATIONSHIP:
|
||||
@@ -59,7 +59,7 @@ public class ResourceWebScriptDelete extends AbstractResourceWebScript implement
|
||||
}
|
||||
else
|
||||
{
|
||||
return Params.valueOf(entityId, relationshipId);
|
||||
return Params.valueOf(entityId, relationshipId, req);
|
||||
}
|
||||
case PROPERTY:
|
||||
final String resourceName = req.getServiceMatch().getTemplateVars().get(ResourceLocator.RELATIONSHIP_RESOURCE);
|
||||
@@ -69,11 +69,11 @@ public class ResourceWebScriptDelete extends AbstractResourceWebScript implement
|
||||
{
|
||||
if (StringUtils.isNotBlank(propertyName))
|
||||
{
|
||||
return Params.valueOf(entityId, relationshipId, null, null, propertyName, null, null);
|
||||
return Params.valueOf(entityId, relationshipId, null, null, propertyName, null, null, req);
|
||||
}
|
||||
else
|
||||
{
|
||||
return Params.valueOf(entityId, null, null, null, resourceName, null, null);
|
||||
return Params.valueOf(entityId, null, null, null, resourceName, null, null, req);
|
||||
}
|
||||
}
|
||||
//Fall through to unsupported.
|
||||
|
@@ -73,20 +73,20 @@ public class ResourceWebScriptGet extends AbstractResourceWebScript implements P
|
||||
case ENTITY:
|
||||
if (StringUtils.isNotBlank(entityId))
|
||||
{
|
||||
return Params.valueOf(params, entityId, null);
|
||||
return Params.valueOf(params, entityId, null, req);
|
||||
}
|
||||
else
|
||||
{
|
||||
return Params.valueOf(params, null, null);// collection resource
|
||||
return Params.valueOf(params, null, null, req);// collection resource
|
||||
}
|
||||
case RELATIONSHIP:
|
||||
if (StringUtils.isNotBlank(relationshipId))
|
||||
{
|
||||
return Params.valueOf(params, entityId, relationshipId);
|
||||
return Params.valueOf(params, entityId, relationshipId, req);
|
||||
}
|
||||
else
|
||||
{
|
||||
return Params.valueOf(params, entityId, null); //relationship collection resource
|
||||
return Params.valueOf(params, entityId, null, req); //relationship collection resource
|
||||
}
|
||||
case PROPERTY:
|
||||
final String resourceName = req.getServiceMatch().getTemplateVars().get(ResourceLocator.RELATIONSHIP_RESOURCE);
|
||||
@@ -96,11 +96,11 @@ public class ResourceWebScriptGet extends AbstractResourceWebScript implements P
|
||||
{
|
||||
if (StringUtils.isNotBlank(propertyName))
|
||||
{
|
||||
return Params.valueOf(entityId, relationshipId, null, null, propertyName, params, null);
|
||||
return Params.valueOf(entityId, relationshipId, null, null, propertyName, params, null, req);
|
||||
}
|
||||
else
|
||||
{
|
||||
return Params.valueOf(entityId, null, null, null, resourceName, params, null);
|
||||
return Params.valueOf(entityId, null, null, null, resourceName, params, null, req);
|
||||
}
|
||||
}
|
||||
//Fall through to unsupported.
|
||||
|
@@ -478,7 +478,7 @@ public class ResourceWebScriptHelper
|
||||
if (objectToWrap instanceof SerializablePagedCollection<?>)
|
||||
{
|
||||
SerializablePagedCollection<?> collectionToWrap = (SerializablePagedCollection<?>) objectToWrap;
|
||||
Object sourceEntity = executeIncludedSource(api,entityCollectionName,params.getEntityId(),params.includeSource());
|
||||
Object sourceEntity = executeIncludedSource(api, params, entityCollectionName);
|
||||
Collection<Object> resultCollection = new ArrayList(collectionToWrap.getCollection().size());
|
||||
if (!collectionToWrap.getCollection().isEmpty())
|
||||
{
|
||||
@@ -510,7 +510,7 @@ public class ResourceWebScriptHelper
|
||||
{
|
||||
Map<String, ResourceWithMetadata> relationshipResources = locator.locateRelationResource(api,entityCollectionName, params.getRelationsFilter().keySet(), HttpMethod.GET);
|
||||
String uniqueEntityId = ResourceInspector.findUniqueId(objectToWrap);
|
||||
Map<String,Object> relatedResources = executeRelatedResources(api,params.getRelationsFilter(), relationshipResources, uniqueEntityId);
|
||||
Map<String,Object> relatedResources = executeRelatedResources(api, params, relationshipResources, uniqueEntityId);
|
||||
execRes.addRelated(relatedResources);
|
||||
}
|
||||
|
||||
@@ -519,14 +519,14 @@ public class ResourceWebScriptHelper
|
||||
}
|
||||
}
|
||||
|
||||
private Object executeIncludedSource(Api api, String entityCollectionName, String uniqueEntityId, boolean includeSource)
|
||||
private Object executeIncludedSource(Api api, Params params, String entityCollectionName)
|
||||
{
|
||||
if (includeSource)
|
||||
if (params.includeSource())
|
||||
{
|
||||
ResourceWithMetadata res = locator.locateEntityResource(api, entityCollectionName, HttpMethod.GET);
|
||||
if (res != null)
|
||||
{
|
||||
Object result = executeRelatedResource(api, null, uniqueEntityId, null, res);
|
||||
Object result = executeRelatedResource(api, params, params.getEntityId(), null, res);
|
||||
if (result!=null && result instanceof ExecutionResult) return ((ExecutionResult) result).getRoot();
|
||||
}
|
||||
}
|
||||
@@ -554,7 +554,7 @@ public class ResourceWebScriptHelper
|
||||
Object id = ResourceInspectorUtil.invokeMethod(embeddedEntry.getValue().getSecond(), objectToWrap);
|
||||
if (id != null)
|
||||
{
|
||||
Object execEmbeddedResult = executeRelatedResource(api, params.getRelationsFilter(), String.valueOf(id), embeddedEntry.getKey(), res);
|
||||
Object execEmbeddedResult = executeRelatedResource(api, params, String.valueOf(id), embeddedEntry.getKey(), res);
|
||||
if (execEmbeddedResult != null)
|
||||
{
|
||||
if (execEmbeddedResult instanceof ExecutionResult)
|
||||
@@ -584,14 +584,14 @@ public class ResourceWebScriptHelper
|
||||
* @param uniqueEntityId String
|
||||
* @return Map
|
||||
*/
|
||||
private Map<String,Object> executeRelatedResources(final Api api, Map<String, BeanPropertiesFilter> filters,
|
||||
Map<String, ResourceWithMetadata> relatedResources,
|
||||
String uniqueEntityId)
|
||||
private Map<String,Object> executeRelatedResources(final Api api, Params params,
|
||||
Map<String, ResourceWithMetadata> relatedResources,
|
||||
String uniqueEntityId)
|
||||
{
|
||||
final Map<String,Object> results = new HashMap<String,Object>(relatedResources.size());
|
||||
for (final Entry<String, ResourceWithMetadata> relation : relatedResources.entrySet())
|
||||
{
|
||||
Object execResult = executeRelatedResource(api, filters, uniqueEntityId, relation.getKey(), relation.getValue());
|
||||
Object execResult = executeRelatedResource(api, params, uniqueEntityId, relation.getKey(), relation.getValue());
|
||||
if (execResult != null)
|
||||
{
|
||||
results.put(relation.getKey(), execResult);
|
||||
@@ -611,19 +611,19 @@ public class ResourceWebScriptHelper
|
||||
* @param resource ResourceWithMetadata
|
||||
* @return Object
|
||||
*/
|
||||
private Object executeRelatedResource(final Api api, final Map<String, BeanPropertiesFilter> filters,
|
||||
private Object executeRelatedResource(final Api api, Params params,
|
||||
final String uniqueEntityId, final String resourceKey, final ResourceWithMetadata resource)
|
||||
{
|
||||
try
|
||||
{
|
||||
BeanPropertiesFilter paramFilter = null;
|
||||
final Object[] resultOfExecution = new Object[1];
|
||||
|
||||
Map<String, BeanPropertiesFilter> filters = params.getRelationsFilter();
|
||||
if (filters!=null)
|
||||
{
|
||||
paramFilter = filters.get(resourceKey);
|
||||
}
|
||||
final Params executionParams = Params.valueOf(paramFilter, uniqueEntityId);
|
||||
final Params executionParams = Params.valueOf(paramFilter, uniqueEntityId, params.getRequest());
|
||||
executor.execute(resource, executionParams, new ExecutionCallback()
|
||||
{
|
||||
@Override
|
||||
|
@@ -83,7 +83,7 @@ public class ResourceWebScriptPost extends AbstractResourceWebScript implements
|
||||
else
|
||||
{
|
||||
Object postedObj = processRequest(resourceMeta, operation, req);
|
||||
return Params.valueOf(null, params, postedObj);
|
||||
return Params.valueOf(null, params, postedObj, req);
|
||||
}
|
||||
case RELATIONSHIP:
|
||||
if (StringUtils.isNotBlank(relationshipId))
|
||||
@@ -93,7 +93,7 @@ public class ResourceWebScriptPost extends AbstractResourceWebScript implements
|
||||
else
|
||||
{
|
||||
Object postedRel = processRequest(resourceMeta, operation, req);
|
||||
return Params.valueOf(entityId, params, postedRel);
|
||||
return Params.valueOf(entityId, params, postedRel, req);
|
||||
}
|
||||
case OPERATION:
|
||||
final String operationName = req.getServiceMatch().getTemplateVars().get(ResourceLocator.RELATIONSHIP_RESOURCE);
|
||||
@@ -111,11 +111,11 @@ public class ResourceWebScriptPost extends AbstractResourceWebScript implements
|
||||
|
||||
if (StringUtils.isNotBlank(propertyName))
|
||||
{
|
||||
return Params.valueOf(entityId, relationshipId, params, postedObj);
|
||||
return Params.valueOf(entityId, relationshipId, params, postedObj, req);
|
||||
}
|
||||
else
|
||||
{
|
||||
return Params.valueOf(entityId, params, postedObj);
|
||||
return Params.valueOf(entityId, params, postedObj, req);
|
||||
}
|
||||
}
|
||||
//Fall through to unsupported.
|
||||
|
@@ -86,7 +86,7 @@ public class ResourceWebScriptPut extends AbstractResourceWebScript implements P
|
||||
{
|
||||
|
||||
Object putEnt = ResourceWebScriptHelper.extractJsonContent(req, jsonHelper, resourceMeta.getObjectType(operation));
|
||||
return Params.valueOf(entityId,params,putEnt);
|
||||
return Params.valueOf(entityId,params,putEnt, req);
|
||||
}
|
||||
case RELATIONSHIP:
|
||||
if (StringUtils.isBlank(relationshipId))
|
||||
@@ -96,7 +96,7 @@ public class ResourceWebScriptPut extends AbstractResourceWebScript implements P
|
||||
{
|
||||
Object putRel = ResourceWebScriptHelper.extractJsonContent(req, jsonHelper, resourceMeta.getObjectType(operation));
|
||||
ResourceWebScriptHelper.setUniqueId(putRel,relationshipId);
|
||||
return Params.valueOf(entityId, params, putRel);
|
||||
return Params.valueOf(entityId, params, putRel, req);
|
||||
}
|
||||
case PROPERTY:
|
||||
final String resourceName = req.getServiceMatch().getTemplateVars().get(ResourceLocator.RELATIONSHIP_RESOURCE);
|
||||
@@ -106,11 +106,11 @@ public class ResourceWebScriptPut extends AbstractResourceWebScript implements P
|
||||
{
|
||||
if (StringUtils.isNotBlank(propertyName))
|
||||
{
|
||||
return Params.valueOf(entityId, relationshipId, null, getStream(req), propertyName, params, getContentInfo(req));
|
||||
return Params.valueOf(entityId, relationshipId, null, getStream(req), propertyName, params, getContentInfo(req), req);
|
||||
}
|
||||
else
|
||||
{
|
||||
return Params.valueOf(entityId, null, null, getStream(req), resourceName, params, getContentInfo(req));
|
||||
return Params.valueOf(entityId, null, null, getStream(req), resourceName, params, getContentInfo(req), req);
|
||||
}
|
||||
|
||||
}
|
||||
|
Reference in New Issue
Block a user