PROXY  WHOIS  RQUOTE  TEXTS  SOFT  FOREX  BBOARD
 Music  Philosophy  Code  Literature  Russian

= ROOT|Technical|Proxy_Docs|rfc2518.txt =

page 24 of 53




8.9 MOVE Method

   The MOVE operation on a non-collection resource is the logical
   equivalent of a copy (COPY), followed by consistency maintenance
   processing, followed by a delete of the source, where all three
   actions are performed atomically.  The consistency maintenance step
   allows the server to perform updates caused by the move, such as
   updating all URIs other than the Request-URI which identify the
   source resource, to point to the new destination resource.
   Consequently, the Destination header MUST be present on all MOVE
   methods and MUST follow all COPY requirements for the COPY part of
   the MOVE method.  All DAV compliant resources MUST support the MOVE
   method.  However, support for the MOVE method does not guarantee the
   ability to move a resource to a particular destination.

   For example, separate programs may actually control different sets of
   resources on the same server.  Therefore, it may not be possible to
   move a resource within a namespace that appears to belong to the same
   server.

   If a resource exists at the destination, the destination resource
   will be DELETEd as a side-effect of the MOVE operation, subject to
   the restrictions of the Overwrite header.

8.9.1 MOVE for Properties

   The behavior of properties on a MOVE, including the effects of the
   propertybehavior XML element, MUST be the same as specified in
   section 8.8.2.

8.9.2 MOVE for Collections

   A MOVE with "Depth: infinity" instructs that the collection
   identified by the Request-URI be moved to the URI specified in the
   Destination header, and all resources identified by its internal
   member URIs are to be moved to locations relative to it, recursively
   through all levels of the collection hierarchy.

   The MOVE method on a collection MUST act as if a "Depth: infinity"
   header was used on it.  A client MUST NOT submit a Depth header on a
   MOVE on a collection with any value but "infinity".

   Any headers included with MOVE MUST be applied in processing every
   resource to be moved with the exception of the Destination header.

   The behavior of the Destination header is the same as given for COPY
   on collections.





 
RFC 2518                         WEBDAV                    February 1999


   When the MOVE method has completed processing it MUST have created a
   consistent namespace at both the source and destination (see section
   5.1 for the definition of namespace consistency). However, if an
   error occurs while moving an internal collection, the server MUST NOT
   move any resources identified by members of the failed collection
   (i.e., the server must skip the error-causing subtree), as this would
   create an inconsistent namespace. In this case, after detecting the
   error, the move operation SHOULD try to finish as much of the
   original move as possible (i.e., the server should still attempt to
   move other subtrees and the resources identified by their members,
   that are not descendents of an error-causing collection).  So, for
   example, if an infinite depth move is performed on collection /a/,
   which contains collections /a/b/ and /a/c/, and an error occurs
   moving /a/b/, an attempt should still be made to try moving /a/c/.
   Similarly, after encountering an error moving a non-collection
   resource as part of an infinite depth move, the server SHOULD try to
   finish as much of the original move operation as possible.

   If an error occurs with a resource other than the resource identified
   in the Request-URI then the response MUST be a 207 (Multi-Status).

   The 424 (Failed Dependency) status code SHOULD NOT be returned in the
   207 (Multi-Status) response from a MOVE method.  These errors can be
   safely omitted because the client will know that the progeny of a
   resource could not be moved when the client receives an error for the
   parent.  Additionally 201 (Created)/204 (No Content) responses SHOULD
   NOT be returned as values in 207 (Multi-Status) responses from a
   MOVE.  These responses can be safely omitted because they are the
   default success codes.

8.9.3 MOVE and the Overwrite Header

   If a resource exists at the destination and the Overwrite header is
   "T" then prior to performing the move the server MUST perform a
   DELETE with "Depth: infinity" on the destination resource.  If the
   Overwrite header is set to "F" then the operation will fail.

8.9.4 Status Codes

   201 (Created) - The source resource was successfully moved, and a new
   resource was created at the destination.

   204 (No Content) - The source resource was successfully moved to a
=24=

1.18|19|20|21|22|23| < PREV = PAGE 24 = NEXT > |25|26|27|28|29|30.53

UP TO ROOT | UP TO DIR | TO FIRST PAGE

Google
 


E-mail Facebook Google Digg del.icio.us BlinkList Fark Furl Ma.gnolia Netscape NewsVine Reddit Slashdot Spurl StumbleUpon Technorati YahooMyWeb LiveJournal Blogmarks TwitThis Live News2.ru BobrDobr.ru Memori.ru MoeMesto.ru

0.022752 wallclock secs ( 0.01 usr + 0.01 sys = 0.02 CPU)