Skip to main content

Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "Swordfish Documentation: registry interface"

(Response)
(Improvements)
 
(10 intermediate revisions by the same user not shown)
Line 1: Line 1:
== Searching WSDL ==
+
= Managing WSDL's Resource=
 +
The entry point to manage WSDL's is the WSDL resource which has the URI 
 +
<noWiki>http://{registry host & port}/registry/wsdl</noWiki>
 +
This resource allows to list the available WSDL, upload a WSDL, modify an existing one, and to delete a WSDL again.
  
At the moment WSDL's can be queried according to two criteria
+
== Searching WSDL's ==
 +
You can either query all the available WSDL's in the registry or a subset according to the following two criteria
  
* Retrieve all WSDL's that contain a portType element with a specific fuLly qualified name.
+
* Retrieve all WSDL's that contain a portType element with a specific fully qualified name.
 
* Retrieve all WSDL's that contain a service, which implements a specific portType.
 
* Retrieve all WSDL's that contain a service, which implements a specific portType.
  
 
=== Query  Syntax ===
 
=== Query  Syntax ===
To retrieve WSDL's use the the GET Method and the endpoint <noWiki>http://{registry host & port}/wsdl</noWiki>. For the the first kind of search use the following query parameters
+
To get all available WSDL's simply use the GET Method on the WSDL resource. So the following HTTP GET request will return a list of all WSDL's (assuming your registry is installled on example.com with port 80)
  <noWiki>http://{registry host & port}/wsdl?type=portType&name={fully qualified name}</noWiki>
+
<noWiki>GET /registry/wsdl HTTP/1.1</noWiki>
for the second query
+
 
  <noWiki>http://{registry host & port}/wsdl?type=service&refPortType={fully qualified name}</noWiki>
+
If only looking for WSDL's with a specific portType name use the following schema
 +
  <noWiki>GET /wsdl?type=portType&targetNamespace={target namespace}&name={local name} HTTP/1.1</noWiki>
 +
 
 +
If looking for WSDL's that contain a service implementing a specific portType use use following schema
 +
  <noWiki>GET /registry/wsdl?type=service&refPortTypeNamespace={target namespace}&refPortTypeName={fully qualified name} HTTP/1.1</noWiki>
  
 
=== Response ===  
 
=== Response ===  
Line 17: Line 25:
 
<pre>
 
<pre>
 
<wsdlList>
 
<wsdlList>
   <url>/wsdl/sample_1.wsdl&lt;/url&gt;
+
   <url>./sample_1.wsdl&lt;/url&gt;
   <url>/wsdl/sample_2.wsdl&lt;/url&gt;
+
   <url>./sample_2.wsdl&lt;/url&gt;
 
   ...
 
   ...
 
&lt;/wsdlList&gt;
 
&lt;/wsdlList&gt;
 
</pre>
 
</pre>
 +
 +
The URL's are relative to the URL of the document.
 +
 +
== Working with a specific WSDL resource ==
 +
=== Retrieve a specific WSDL resource ===
 +
To get a specific WSDL just issue a HTTP GET request with the URL of the WSDL resource
 +
<noWiki>GET /registry/wsdl/{wsdl id} HTTP/1.1</noWiki>
 +
 +
== Creating / updating a WSDL ==
 +
The registry interface offers two ways of creating / updating a WSDL. The preferred way is to use a HTTP PUT request to create / update a WSDL. The format of the URI under which to put the WSDL should be something like
 +
<noWiki>/registry/wsdl/{wsdl id}</noWiki>
 +
The body of the request should be the WSDL.
 +
 +
== Deleting a WSDL ==
 +
Just send a DELETE request with the URI of the WSDL you want to delete.
  
 
=== Improvements ===  
 
=== Improvements ===  
 
* Make the query syntax more generic and allow combinations of query paramters  
 
* Make the query syntax more generic and allow combinations of query paramters  
 
* Use the the Atom format to return the result set of the query
 
* Use the the Atom format to return the result set of the query
 +
* Add POST operation to create and delete WSDL's as HTML does not support PUT & DELETE

Latest revision as of 11:15, 12 March 2009

Managing WSDL's Resource

The entry point to manage WSDL's is the WSDL resource which has the URI

http://{registry host & port}/registry/wsdl

This resource allows to list the available WSDL, upload a WSDL, modify an existing one, and to delete a WSDL again.

Searching WSDL's

You can either query all the available WSDL's in the registry or a subset according to the following two criteria

  • Retrieve all WSDL's that contain a portType element with a specific fully qualified name.
  • Retrieve all WSDL's that contain a service, which implements a specific portType.

Query Syntax

To get all available WSDL's simply use the GET Method on the WSDL resource. So the following HTTP GET request will return a list of all WSDL's (assuming your registry is installled on example.com with port 80)

GET /registry/wsdl HTTP/1.1

If only looking for WSDL's with a specific portType name use the following schema

GET /wsdl?type=portType&targetNamespace={target namespace}&name={local name} HTTP/1.1

If looking for WSDL's that contain a service implementing a specific portType use use following schema

GET /registry/wsdl?type=service&refPortTypeNamespace={target namespace}&refPortTypeName={fully qualified name} HTTP/1.1

Response

The response of the query is a list of links to WSDL's matching the criteria, which has the following format:

<wsdlList>
  <url>./sample_1.wsdl</url>
  <url>./sample_2.wsdl</url>
  ...
</wsdlList>

The URL's are relative to the URL of the document.

Working with a specific WSDL resource

Retrieve a specific WSDL resource

To get a specific WSDL just issue a HTTP GET request with the URL of the WSDL resource

GET /registry/wsdl/{wsdl id} HTTP/1.1

Creating / updating a WSDL

The registry interface offers two ways of creating / updating a WSDL. The preferred way is to use a HTTP PUT request to create / update a WSDL. The format of the URI under which to put the WSDL should be something like

/registry/wsdl/{wsdl id}

The body of the request should be the WSDL.

Deleting a WSDL

Just send a DELETE request with the URI of the WSDL you want to delete.

Improvements

  • Make the query syntax more generic and allow combinations of query paramters
  • Use the the Atom format to return the result set of the query
  • Add POST operation to create and delete WSDL's as HTML does not support PUT & DELETE

Back to the top