Fixed ETHREEOH-1719: Renaming 'Web Project' makes it a DM space and the AVMstore gets corrupted

- An injected list of namespaces determine whether a node's association path QName is modified
   during a rename or not:
      <property name="systemNamespaces">
         <list>
            <value>http://www.alfresco.org/model/application/1.0</value>
            <value>http://www.alfresco.org/model/site/1.0</value>
         </list>
      </property>

 - Added a method to FileFolderService to specify the association QName on creation
   This is used by the tests, but can be used by apps as well.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@14262 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Derek Hulley
2009-05-11 12:04:55 +00:00
parent db96926f4b
commit 4ed216c5e6
4 changed files with 94 additions and 10 deletions

View File

@@ -169,18 +169,37 @@ public interface FileFolderService
throws FileExistsException, FileNotFoundException;
/**
* Create a file or folder; or any valid node of type derived from file or folder
* Create a file or folder; or any valid node of type derived from file or folder.
* <p>
* The association QName for the patch defaults to <b>cm:filename</b> i.e. the
* <b>Content Model</b> namespace with the filename as the local name.
*
* @param parentNodeRef the parent node. The parent must be a valid
* {@link org.alfresco.model.ContentModel#TYPE_CONTAINER container}.
* {@link org.alfresco.model.ContentModel#TYPE_FOLDER folder}.
* @param name the name of the node
* @param typeQName the type to create
* @return Returns the new node's file information
* @throws FileExistsException
*
* @see {@link #create(NodeRef, String, QName, QName)}
*/
@Auditable(key = Auditable.Key.ARG_0, parameters = {"parentNodeRef", "name", "typeQName"})
public FileInfo create(NodeRef parentNodeRef, String name, QName typeQName) throws FileExistsException;
/**
* Create a file or folder; or any valid node of type derived from file or folder
*
* @param parentNodeRef the parent node. The parent must be a valid
* {@link org.alfresco.model.ContentModel#TYPE_FOLDER folder}.
* @param name the name of the node
* @param typeQName the type to create
* @param assocQName the association QName to set for the path (may be <tt>null</tt>).
* @return Returns the new node's file information
* @throws FileExistsException
*/
@Auditable(key = Auditable.Key.ARG_0, parameters = {"parentNodeRef", "name", "typeQName"})
public FileInfo create(NodeRef parentNodeRef, String name, QName typeQName, QName assocQName) throws FileExistsException;
/**
* Delete a file or folder
*