org.modeshape.webdav.methods

## Class DoCopy

- java.lang.Object
- - org.modeshape.webdav.methods.AbstractMethod
  - - org.modeshape.webdav.methods.DoCopy

- All Implemented Interfaces:
    IMethodExecutor

      public class DoCopy
      extends AbstractMethod

- - ### Field Summary

    - ### Fields inherited from class org.modeshape.webdav.methods.AbstractMethod

      `BUF_SIZE, CREATION_DATE_FORMAT, DEFAULT_TIMEOUT, INFINITY, LAST_MODIFIED_DATE_FORMAT, LOCAL_DATE_FORMAT, logger, MAX_TIMEOUT, TEMP_TIMEOUT, TEMPORARY, URL_ENCODER`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `DoCopy(IWebdavStore store, ResourceLocks resourceLocks, DoDelete doDelete, boolean readOnly)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `copyResource(ITransaction transaction, HttpServletRequest req, HttpServletResponse resp)` Copy a resource.
    `void` | `execute(ITransaction transaction, HttpServletRequest req, HttpServletResponse resp)`
    `protected String` | `normalize(String path)` Return a context-relative path, beginning with a "/", that represents the canonical version of the specified path after ".." and "." elements are resolved out.

    - ### Methods inherited from class org.modeshape.webdav.methods.AbstractMethod

      `creationDateFormat, getCleanPath, getDepth, getDocumentBuilder, getETag, getLocalDateFormat, getLockIdFromIfHeader, getLockIdFromLockTokenHeader, getParentPath, getRelativePath, isUnlocked, lastModifiedDateFormat, rewriteUrl, sendReport`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### DoCopy

          public DoCopy(IWebdavStore store,
                ResourceLocks resourceLocks,
                DoDelete doDelete,
                boolean readOnly)

  - ### Method Detail

    - #### execute

          public void execute(ITransaction transaction,
                     HttpServletRequest req,
                     HttpServletResponse resp)
                       throws IOException,
                              LockFailedException

      Throws:
        `IOException`
        `LockFailedException`

    - #### copyResource

          public boolean copyResource(ITransaction transaction,
                             HttpServletRequest req,
                             HttpServletResponse resp)
                               throws WebdavException,
                                      IOException,
                                      LockFailedException

      Copy a resource.
      Parameters:
        `transaction` - indicates that the method is within the scope of a WebDAV transaction
        `req` - Servlet request
        `resp` - Servlet response
      Returns:
        true if the copy is successful
      Throws:
        `WebdavException` - if an error in the underlying store occurs
        `IOException` - when an error occurs while sending the response
        `LockFailedException`

    - #### normalize

          protected String normalize(String path)

      Return a context-relative path, beginning with a "/", that represents the canonical version of the specified path after ".." and "." elements are resolved out. If the specified path attempts to go outside the boundaries of the current context (i.e. too many ".." path elements are present), return `null` instead.
      Parameters:
        `path` - Path to be normalized
      Returns:
        normalized path

Copyright © 2008-2014 JBoss, a division of Red Hat. All Rights Reserved.