Uploaded image for project: 'jclouds'
  1. jclouds
  2. JCLOUDS-545

SwiftApi and related Apis improvements

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 1.7.2
    • Fix Version/s: 1.7.3, 1.8.0
    • Component/s: jclouds-labs-openstack
    • Labels:
      None

      Description

      So far there are a number of issue with the Beta SwiftApi and related Apis.

      1. All of the methods in SwiftApi are misnamed. Every single other top-level OpenStack API in jclouds is of the form get WhateverApi For Zone/RegionAndSomething.
        1. The methods to get the second-level APIs need to follow this form: get, and For must be used to be consistent with all of the other OpenStack APIs.
        2. configuredRegions() should be getConfiguredRegions()
        3. These name changes should be added to SwiftApi. The old methods deprecated (to be removed in 1.8) and point users to the new methods.
      2. ObjectApi.replace() is not a good name. I understand the reasoning behind it but it's not intuitive for users looking to put/upload something. The semantics of put already say "If the URI refers to an already existing resource, it is modified". This method should be renamed put().
        1. This name change should be added to ObjectApi. The old method deprecated (to be removed in 1.8) and point users to the new method.
      3. ObjectApi.replace() forces users to include metadata as the last parameter. This must be optional.
      4. ObjectApi.get() forces users to include GetOptions as the last parameter. This must be optional.
      5. ContainerApi.list() needs a comment that metadata is not returned and head() must be called to get metadata
      6. ContainerApi.createIfAbsent() forces users to include options as the last parameter. This must be optional.
      7. In all of the Swift domain objects toStringHelper("") is called with an empty String so no class name is given. This is inconsistent with the usage of toStringHelper("") everywhere else and doesn't provide as much information. It needs to be changed to toStringHelper().

        Attachments

          Activity

            People

            • Assignee:
              jdaggett Jeremy Daggett
              Reporter:
              everett-toews Everett Toews
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: