Details

      Description

      Background

      Low level tools and examples to use the Symphony REST API. There are language specific bindings for the API in several separate foundation projects. This project is intended to be a complimentary set of tools and utilities for developers to help understand the APIs and to facilitate testing and experimentation. This project is not intended to form an alternative application development platform in its own right.

      Proposal

      This project will develop a set of tools and utilities which can exercise REST API endpoints and illustrate how these can be used. These tools may be useful to the developers of language specific binding projects themselves, or to developers using those bindings to see exactly what happens at the wire level with various endpoints.

      The existing JCurl utility is used as the network level transport, this project will continue to build on JCurl and not replace or overlap with it.

      Rationale

      There is a need for a low level toolkit to a) surface what happens on the wire when various endpoints are called, b) establish whether the REST API is working correctly on a particular pod c) exercise new endpoints as they are released to understand the detail of their capabilities.

      Current State

      The project currently contains a single command line tool called ProbePod. Given a server host name this program probes the given server in various ways on a number of ports to establish if a Symphony Pod exists on that host and if so what the correct configuration parameters would be to access it via the API.

      The tool is capable of authenticating via the API if a client certificate is provided, but even without a certificate can give a reasonably reliable indication of the existence of the Pod and the URLs to be used.

      If the probe is successful then the program writes a configuration file containing the URLs needed by the Symphony Java API client in a Java properties file as well as a truststore containing all the certificates which need to be trusted by a client using the API.

      Near Term Goals

      Incremental further development of ProbePod and snippets exercising individual REST endpoints.

      Future Goals

      A GUI based API explorer which allows the user to call individual endpoints and display code snippets to make the same call in various languages and against various language binding APIs.

      Issues / Risks

      None.

      Code and Core Developers

      Bruce Skingle (Symphony LLC)

      Current SCM:

      https://github.com/bruceskingle/symphony-rest-tools

      Code Transfer Approach:

      Transfer ownership of existing repo

      Desired GIT Repository Name(s)

      symphony-rest-tools

      Owners:

      Bruce Skingle, bruceskingle, Symphony LLC
      Mike Harmon, mike-symphony, Symphony LLC

      Committers:

      Bruce Skingle, bruceskingle, Symphony LLC
      Mike Harmon, mike-symphony, Symphony LLC

      Do you require access to the Open Developer Platform

      Yes

        Attachments

          Activity

            People

            • Assignee:
              maoo Maurizio Pillitu
              Reporter:
              bruce.skingle Bruce Skingle
            • Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: