Copy Operation

This operation creates a copy of an existing resource or folder. The operation exposes the repository service copyResource and copyFolder API methods.

The resource or folder to be copied is sent as the resource descriptor of the request; the caller does not need to provide the full resource information; just the information required to locate the resource is required.

The full location of the copy must be provided as the value of the DESTINATION_URI request argument. If this location already exists in the repository at the moment the operation is called, the server automatically changes the name part of the destination URI and saves the resource or folder copy at the new URI.

The copy operation response includes a descriptor for the saved resource or folder copy. The response descriptor is particularly useful in determining whether the copy has been created at the specified destination URI or at a different/generated URI.

When a folder is being copied, all its subfolders and contained resources are copied recursively.

The following request copies the report unit located at /Reports/NewReport to /MyReports/NewReportCopy:

<request operationName="copy" locale="en"
<argument name="DESTINATION_URI">/MyReports/NewReportCopy</argument>
<resourceDescriptor name="NewReport" wsType="reportUnit" uriString="/Reports/NewReport">