Ticket #20 (assigned task)

Opened 5 years ago

Last modified 5 years ago

Make Strabon Endpoint publicize the details for using it as a service

Reported by: charnik Owned by: charnik
Priority: minor Milestone:
Component: endpoint Version: 3.2.4
Keywords: service,request,parameters,accept,discovery Cc:

Description

Problem


From time to time, the details for accessing Strabon Endpoint as a service (e.g., request parameters, functionality such as Query, Describe, etc.) change. The endpoint script changes in accordance to Strabon Endpoint. Thus, when one needs access to an older version of Strabon Endpoint, she has to find out the version (or worse the revision) in order to get the endpoint script corresponding to that version, or even look in the code of Strabon Endpoint to find out the details of the service and then use them. While it is possible for someone to do all these things, it is very annoying when you just want to quickly connect to a Strabon Endpoint instance.

Solution


Strabon Endpoint should be extended with a servlet to announce the details of accessing it. There is no requirement for a database connection, or a Strabon instance. It is independent and should work regardless of these.

To be more general, every service, like Query, Describe, Update, etc., should be accompanied with a ServiceRequest? exposing all request parameters, their values, whether they are set or not, whether they are required or optional and also the default or accepted/valid values for them (if any). For example, there would be a class QueryServiceRequest? containing all information pertaining to accessing the Query service.

Make sure not to reinvent the wheel. Such things have already been done for Web Services, so it might be easy to find out a library containing the architectural design we need.

Change History

comment:1 Changed 5 years ago by charnik

  • Version changed from 3.2.3 to 3.2.4

comment:2 Changed 5 years ago by charnik

  • Owner changed from somebody to charnik
  • Status changed from new to assigned
Note: See TracTickets for help on using tickets.