On Thu, May 3, 2018 at 2:43 PM, Pubudu Gunatilaka <pubu...@wso2.com> wrote:

> Hi Nuwan,
>
> On Thu, May 3, 2018 at 1:07 PM Nuwan Dias <nuw...@wso2.com> wrote:
>
>>
>>
>> On Thu, May 3, 2018 at 1:02 PM, Pubudu Gunatilaka <pubu...@wso2.com>
>> wrote:
>>
>>> Hi Krishan
>>> On Thu, May 3, 2018 at 12:53 PM Harsha Kumara <hars...@wso2.com> wrote:
>>>
>>>>
>>>>
>>>> On Wed, May 2, 2018 at 6:26 PM, Krishan Wijesena <krish...@wso2.com>
>>>> wrote:
>>>>
>>>>> Hi All,
>>>>>
>>>>>
>>>>> Currently, I'm working on the Labeling feature for API Manager
>>>>> gateway. API Manager need to allows adding labels to the APIs in
>>>>> create/update phases from the publisher, so that labels help to grouping
>>>>> APIs into API manager gateway.
>>>>>
>>>>> If the user requests the particular label, then it provides the set of
>>>>> APIs that deploy in the same gateway.
>>>>>
>>>>> As initial phase, labels should be defined by the admin(Super/Tenant)
>>>>> using admin dashboard and the particular label should have set of
>>>>> properties.
>>>>>
>>>>> To do that I need to introduce AM_LABEL table to the AM database to
>>>>> store the labels and it’s schema as follows.
>>>>>
>>>>> LABEL_ID is the primary key and (NAME & TENANT_ID) is Unique.
>>>>>
>>>>> Label should have separate Http and Https basepath.
>>>>>
>>>> What will be store in base path? Basically we can create labels and
>>>> assigned them to APIs.
>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>> We only need label_id and it can be a UUID value.
>>>
>>> HTTP/HTTPS base paths are wrong. This has to be the access urls of the
>>> gateway. For an exmaple we can have the label called Public and it can have
>>> the following access urls.
>>>
>>> http://wso2.gw.com
>>> https://wso2.gw.com
>>>
>>> Additionally we need to add WebSocket endpoints as well. So we need to
>>> have 4 types of access urls in here.
>>>
>>> Are we not using the endpionts defined in APIGateway section here after
>>> or what is the strategy going forwar?
>>>
>>
>> This 'label' would only be used by the new Ballerina based microgateway
>> we hope to introduce. Our current/old Gateway would still be exposed over
>> the Endpoint defined in the APIGateway section of the api-manager.xml.
>>
>>>
>>> Are we adding a default label for APIs when creating/publishing?
>>>
>>
>> Do we have a need to?
>>
>
> This depends on how we get APIs from gatway. We can give a label to the
> gateway and get all the APIs with that label. If we don't specify a label
> in the gateway, we need to define how we treat here. We can get all the
> APIs with or without labels. Or else we can get only the APIs that do not
> have any label in the API.
>
> If we have in mind to introduce the labels to Store as well in the future,
> better to have a label type in the db. This is how we have done in APIM v3.
>

I don't think we'll be able to introduce a Store label for APIM 2.x. Since
we're doing this feature for API Manager 2.x and since it has the
old/monolith Gateway which hosts all APIs anyway, I think its less
important for the need to have to deploy all APIs on a Microgateway. Which
lessens the need for a default label.

>
> @Krishan Wijesena <krish...@wso2.com> : I think it is better to have a
> separate table for access urls. In the future, if we need to treat the
> protocol of the access urls, then having a separate table would  be easy.
> Also, without appending the API table to attach the label id of the API, we
> should have a separate table for API to label mapping. API can have
> multiple labels.
>
> Thank you!
> --
> *Pubudu Gunatilaka*
> Committer and PMC Member - Apache Stratos
> Senior Software Engineer
> WSO2, Inc.: http://wso2.com
> mobile : +94774078049
>
>


-- 
Nuwan Dias

Software Architect - WSO2, Inc. http://wso2.com
email : nuw...@wso2.com
Phone : +94 777 775 729
_______________________________________________
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture

Reply via email to