mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-07-31 17:39:05 +00:00
RM-4295 - moved the placeholder lookup in the node validation method
This commit is contained in:
@@ -48,7 +48,6 @@ import org.alfresco.rest.api.impl.NodesImpl;
|
|||||||
import org.alfresco.rest.api.model.Node;
|
import org.alfresco.rest.api.model.Node;
|
||||||
import org.alfresco.rest.api.model.UserInfo;
|
import org.alfresco.rest.api.model.UserInfo;
|
||||||
import org.alfresco.rest.framework.core.exceptions.EntityNotFoundException;
|
import org.alfresco.rest.framework.core.exceptions.EntityNotFoundException;
|
||||||
import org.alfresco.rest.framework.core.exceptions.InvalidArgumentException;
|
|
||||||
import org.alfresco.rest.framework.core.exceptions.PermissionDeniedException;
|
import org.alfresco.rest.framework.core.exceptions.PermissionDeniedException;
|
||||||
import org.alfresco.rest.framework.resource.parameters.Parameters;
|
import org.alfresco.rest.framework.resource.parameters.Parameters;
|
||||||
import org.alfresco.rm.rest.api.RMNodes;
|
import org.alfresco.rm.rest.api.RMNodes;
|
||||||
@@ -65,6 +64,7 @@ import org.alfresco.service.cmr.site.SiteService;
|
|||||||
import org.alfresco.service.namespace.NamespaceService;
|
import org.alfresco.service.namespace.NamespaceService;
|
||||||
import org.alfresco.service.namespace.QName;
|
import org.alfresco.service.namespace.QName;
|
||||||
import org.alfresco.util.Pair;
|
import org.alfresco.util.Pair;
|
||||||
|
import org.alfresco.util.ParameterCheck;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Centralizes access to the repository.
|
* Centralizes access to the repository.
|
||||||
@@ -201,12 +201,9 @@ public class RMNodesImpl extends NodesImpl implements RMNodes
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public NodeRef validateOrLookupNode(String nodeId, String path)
|
public NodeRef validateNode(String nodeId)
|
||||||
{
|
{
|
||||||
if ((nodeId == null) || (nodeId.isEmpty()))
|
ParameterCheck.mandatoryString("nodeId", nodeId);
|
||||||
{
|
|
||||||
throw new InvalidArgumentException("Missing nodeId");
|
|
||||||
}
|
|
||||||
|
|
||||||
if (nodeId.equals(PATH_FILE_PLAN))
|
if (nodeId.equals(PATH_FILE_PLAN))
|
||||||
{
|
{
|
||||||
@@ -257,9 +254,9 @@ public class RMNodesImpl extends NodesImpl implements RMNodes
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return super.validateOrLookupNode(nodeId, path);
|
return super.validateNode(nodeId);
|
||||||
}
|
}
|
||||||
|
|
||||||
private RMNodeType getType(QName typeQName, NodeRef nodeRef)
|
private RMNodeType getType(QName typeQName, NodeRef nodeRef)
|
||||||
{
|
{
|
||||||
// quick check for common types
|
// quick check for common types
|
||||||
@@ -307,19 +304,6 @@ public class RMNodesImpl extends NodesImpl implements RMNodes
|
|||||||
return new Pair<>(searchTypeQNames, ignoreAspectQNames);
|
return new Pair<>(searchTypeQNames, ignoreAspectQNames);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Overridden this as a work around for REPO-1443 issue to remove after that issue is fixed
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public Node updateNode(String nodeId, Node nodeInfo, Parameters parameters) {
|
|
||||||
if ((nodeId == null) || (nodeId.isEmpty()))
|
|
||||||
{
|
|
||||||
throw new InvalidArgumentException("Missing nodeId");
|
|
||||||
}
|
|
||||||
NodeRef nodeRef = validateOrLookupNode(nodeId, null);
|
|
||||||
return super.updateNode(nodeRef.getId(), nodeInfo, parameters);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* TODO only override core method when will be made protected in core(REPO-1459).
|
* TODO only override core method when will be made protected in core(REPO-1459).
|
||||||
*
|
*
|
||||||
|
@@ -35,6 +35,8 @@ import org.alfresco.rest.framework.resource.EntityResource;
|
|||||||
import org.alfresco.rest.framework.resource.actions.interfaces.EntityResourceAction;
|
import org.alfresco.rest.framework.resource.actions.interfaces.EntityResourceAction;
|
||||||
import org.alfresco.rest.framework.resource.parameters.Parameters;
|
import org.alfresco.rest.framework.resource.parameters.Parameters;
|
||||||
import org.alfresco.rm.rest.api.RMNodes;
|
import org.alfresco.rm.rest.api.RMNodes;
|
||||||
|
import org.alfresco.util.ParameterCheck;
|
||||||
|
import org.springframework.beans.factory.InitializingBean;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Fileplan component children
|
* Fileplan component children
|
||||||
@@ -46,7 +48,8 @@ import org.alfresco.rm.rest.api.RMNodes;
|
|||||||
public class FileplanComponentsEntityResource implements
|
public class FileplanComponentsEntityResource implements
|
||||||
EntityResourceAction.ReadById<Node>,
|
EntityResourceAction.ReadById<Node>,
|
||||||
EntityResourceAction.Delete,
|
EntityResourceAction.Delete,
|
||||||
EntityResourceAction.Update<Node>
|
EntityResourceAction.Update<Node>,
|
||||||
|
InitializingBean
|
||||||
{
|
{
|
||||||
private RMNodes nodes;
|
private RMNodes nodes;
|
||||||
private String PARAM_PERMANENT = "permanent";
|
private String PARAM_PERMANENT = "permanent";
|
||||||
@@ -64,12 +67,14 @@ public class FileplanComponentsEntityResource implements
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@WebApiDescription(title="Updates a node (file or folder) with id 'nodeId'")
|
||||||
public Node update(String nodeId, Node nodeInfo, Parameters parameters)
|
public Node update(String nodeId, Node nodeInfo, Parameters parameters)
|
||||||
{
|
{
|
||||||
return nodes.updateNode(nodeId, nodeInfo, parameters);
|
return nodes.updateNode(nodeId, nodeInfo, parameters);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@WebApiDescription(title = "Delete Node", description="Delete the file or folder with id 'nodeId'. Folder will cascade delete")
|
||||||
public void delete(String nodeId, Parameters parameters)
|
public void delete(String nodeId, Parameters parameters)
|
||||||
{
|
{
|
||||||
String permanentParameter = parameters.getParameter(PARAM_PERMANENT);
|
String permanentParameter = parameters.getParameter(PARAM_PERMANENT);
|
||||||
@@ -79,4 +84,10 @@ public class FileplanComponentsEntityResource implements
|
|||||||
}
|
}
|
||||||
nodes.deleteNode(nodeId, parameters);
|
nodes.deleteNode(nodeId, parameters);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void afterPropertiesSet() throws Exception
|
||||||
|
{
|
||||||
|
ParameterCheck.mandatory("nodes", this.nodes);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user