Maven Wagon
  1. Maven Wagon
  2. WAGON-56

WebDAV Wagon putDirectory fails when multiple directories in path don't exist

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Blocker Blocker
    • Resolution: Fixed
    • Affects Version/s: 1.0-beta-1, 1.0-beta-2
    • Fix Version/s: 1.0-beta-2
    • Component/s: wagon-webdav
    • Labels:
      None

      Description

      The implementation of the 'putDirectory' method isn't properly checking that all directories (WebDAV collections) have been created. I've attached a patch that reworks the 'putDirectory' such that it relies on the 'put' method for each upload. This will guarantee that all file uploads are treated the same way and resolves this issue, as the 'put' method implements the appropriate directory checks.

      1. wagontestcase_deepdest.diff
        3 kB
        Nathan Beyer
      2. webdavwagon_putdirectory.diff
        2 kB
        Nathan Beyer

        Activity

        Hide
        Nathan Beyer added a comment -

        The attachement 'wagontestcase_deepdest.diff' is a patch for the base WagonTestCase class that adds a regression test method that demonstrates the issue. This should cause the WebDAV provider to fail.

        Show
        Nathan Beyer added a comment - The attachement 'wagontestcase_deepdest.diff' is a patch for the base WagonTestCase class that adds a regression test method that demonstrates the issue. This should cause the WebDAV provider to fail.
        Hide
        Carlos Sanchez added a comment -

        Thanks, I wanted to do that refactoring some time ago

        Show
        Carlos Sanchez added a comment - Thanks, I wanted to do that refactoring some time ago

          People

          • Assignee:
            Carlos Sanchez
            Reporter:
            Nathan Beyer
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development