Hi Bhathiya,

That is also an option. However,

1)Are we considering "Default" as a specific label?
2)When an API is not associated with the "Default" label are we disallowing
seeing the WSDL without specifying the labelName with a valid label.
Then, this will be equivalent to GET
/apis/{apiId}/wsdl?labelName=SomeInvalidLabel. So to make it consistent,
the REST API will have to give an error for GET /apis/{apiId}/wsdl as well.

3)When an API is not associated with *any* label, are we completely
disallowing seeing the WSDL..
GET /apis/{apiId}/wsdl will be equivalent to GET
/apis/{apiId}/wsdl?labelName=Default which will give an error. I guess
there is no way to see the WSDL unless we change the behavior considering
this special case.

Thanks!

On Fri, Jun 23, 2017 at 12:06 AM, Bhathiya Jayasekara <[email protected]>
wrote:

> Hi Malintha,
>
> On Thu, Jun 22, 2017 at 11:27 PM, Malintha Amarasinghe <[email protected]
> > wrote:
>
>> Hi All,
>>
>> When we create and publish a WSDL-based API in Store, we need to expose
>> the WSDL so that the users of the API can create clients using the WSDL and
>> use the API easily. But before doing that, we need to re-write the endpoint
>> URLs in the WSDL with APIM Gateway endpoint URLs.
>>
>> With the gateway labeling feature, APIs can be labeled with
>> multiple labels where each label can be associated with a gateway. So when
>> we re-writing endpoints, based on the label we have multiple options.
>>
>> Me, Harsha, Pubudu and Tharindu had a discussion about this so we thought
>> of exposing an API in Store like below. This is similar to what we were
>> going to expose the /swagger based on the label.
>>
>> GET /apis/{apiId}/wsdl[?labelName=abc]
>>
>> When we save the API in publisher, the raw WSDL will be saved in the
>> database. Unlike in C4, *we will have to dynamically generate the WSDL
>> based on the label name* we are providing. However, it will not be a
>> mandatory parameter.
>>
>> When someone did not specify the labelName, we can remove the <service>
>> sections of the WSDL and expose the rest of the WSDL.
>>
>
> In this case shouldn't we generate the wsdl for the default gateway?
>
> Thanks,
> Bhathiya
>
>
>>
>> *Publisher*
>>
>> When exposing the WSDL in Publisher, we can use below without using any
>> labeling and we can expose the original WSDL:
>>
>> GET /apis/{apiId}/wsdl
>>
>> Please let me know if you have any ideas/concerns on this.
>>
>> Thanks!
>> Malintha
>>
>> --
>> Malintha Amarasinghe
>> Software Engineer
>> *WSO2, Inc. - lean | enterprise | middleware*
>> http://wso2.com/
>>
>> Mobile : +94 712383306 <071%20238%203306>
>>
>
>
>
> --
> *Bhathiya Jayasekara*
> *Associate Technical Lead,*
> *WSO2 inc., http://wso2.com <http://wso2.com>*
>
> *Phone: +94715478185 <+94%2071%20547%208185>*
> *LinkedIn: http://www.linkedin.com/in/bhathiyaj
> <http://www.linkedin.com/in/bhathiyaj>*
> *Twitter: https://twitter.com/bhathiyax <https://twitter.com/bhathiyax>*
> *Blog: http://movingaheadblog.blogspot.com
> <http://movingaheadblog.blogspot.com/>*
>



-- 
Malintha Amarasinghe
Software Engineer
*WSO2, Inc. - lean | enterprise | middleware*
http://wso2.com/

Mobile : +94 712383306 <+94%2071%20238%203306>
_______________________________________________
Architecture mailing list
[email protected]
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture

Reply via email to