Uploaded image for project: 'OASIS Content Management Interoperability Services (CMIS) TC'
  1. OASIS Content Management Interoperability Services (CMIS) TC
  2. CMIS-497

extension parameters make code bloated and unreadbable

    XMLWordPrintable

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: Web Services Binding
    • Labels:
      None

      Description

      With the 0.63 draft all web services get a new extension parameter. This makes API less readable and really ugly.
      Do we really need the flexiibility at this level? Some pseudo code

      before:
      return _objSvc.getAllowableActions(_repositoryId, id);

      after:
      Holder<CmisAllowableActionsType> holder = new Holder<CmisAllowableActionsType>();
      _objSvc.getAllowableActions(_repositoryId, id, null, holder);
      return holder.value;

      This requires three lines instead of one. It is no longer clear what the return value is and what parameters have what purpose. We have methods taking three holders, etc. I liked the CMIS API for its clarity and simplicity but now I fear we are far away from this. This seems to affect every function in the web service.

      Do we really need this and want to pay this price?

        Attachments

          Activity

            People

            • Assignee:
              albertcbrown Al Brown (Inactive)
              Reporter:
              jhuebel Jens Hübel (Inactive)
            • Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: