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