VoSpace 2.x

CopyNode

Copy a node within a VoSpace service.

Note that this does not cover copying data between separate VoSpace services.

Copying nodes between separate VoSpace services should be handled by the client, using the import and export methods.

Parameters

  • Target - The URI of an existing data node. note
    • vos://[service]/000-517
    • vos:///000-517
    • vos://[service]/path/my%20results
    • vos:///path/my%20results
    • vos:///my%20results

  • Parent - The URI of an existing parent node. note
    • vos://[service]/path/path/
    • vos:///path/path/
    • vos://[service]/
    • vos:///

  • Name - A (optional) human readable name for the new node
    • my results

  • Properties - An optional set of name value properties for the node

Returns

A full <node> element for the new node, containing

  • The full URI encoded identifier for the node. note
    • vos://[service]/000-517
    • vos://[service]/my%20results
    • vos://[service]/path/path/my%20results

  • The node name as a plain string
    • 000-517
    • my results

  • Type - The URI of the node type
    • ivo://org.astrogrid.vospace/types/data.node

  • Properties - The set of name value properties for the new node

Again, an XML friendly way to include any additional type specific data could be to use a generic <node> element, and then use xsi:type attribute to extend it as required.

Throws

  • The service will throw a NodeNotFound exception if the target node does not exist.
  • The service will throw a NodeNotFound exception if the parent node does not exist.
  • The service will throw a DuplicateNode exception if a node already exists with the same name.

  • The service may throw an InternalFault exception if an operation fails.
  • The service may throw a PermissionDenied exception if the user does not have permissions to perform the operation.

  • The service will throw a LinkFound exception if the target path includes a link. note
  • The service will throw a LinkFound exception if the target node is a link. note

  • The service will throw a LinkFound exception if the parent path includes a link. note
  • The service will throw a LinkFound exception if the parent node is a link. note

Notes

  • There is a strong case for making this an asynchronous operation.
  • Copying a large data set within a space service may involve transferring the data from one physical disk to another, which may take time to complete.

  • The <target> identifier in the request can be full a URI including the service identifier and node path.
    • vos://[service]/000-517
    • vos://[service]/path/my%20results

  • The <target> identifier in the request can be a relative URI just containing the node path.
    • vos:///000-517
    • vos:///path/my%20results

  • The <parent> identifier in the request can be full a URI including the service identifier and node path.
    • vos://[service]/
    • vos://[service]/path/path/

  • The <parent> identifier in the request can be a relative URI just contianing the node path.
    • vos:///
    • vos:///path/path/

  • The <node> identifier in the response must be full a URI including the service identifier and node path.
    • vos://[service]/000-517
    • vos://[service]/path/my%20results

Questions

-- DaveMorris - 18 May 2006

Topic revision: r2 - 2006-05-18 - 17:02:35 - DaveMorris
 
AstroGrid Service Click here for the
AstroGrid Service Web
This is the AstroGrid
Development Wiki

This site is powered by the TWiki collaboration platformCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback