Hi Chathuranga/Hisan, In terms of the REST APIs:
*Moving Admin API to new codegen* 1. We are using a code generator to generate server-side code skeletons using swagger specs. For admin API we have it in [1]. But for Admin API, we were using a proprietary code generator plugin and we have to migrate the code-generator to the default swagger-codegen [2]. We have already done this for store.v1 and publisher.v1 APIs using that maven plugin to execute during the build time [3] (FYI, we have slightly modified the default code templates coming from swagger-codegen. They reside in [4]. Ideally, we should be able to reuse them and shouldn't need to change anything for Admin API.) 2. Remove the complex customizations in some DTOs to support polymorphic request bodies [5] which may be complex to some clients. There are one or two APIs that we need to redesign in a simple manner. *Admin API Implementation/Configuration* 1. Migrate the scopes from x-scopes to default swagger spec supported scopes. For this, compare the scopes between old (for this, compare store/publisher API 0.16 API and v1 yaml files) 2. Configure the additional Interceptors, configs by looking at a new (v1) REST API eg: [4] Specially, we'll need to focus on what are the improvements we can do. There can be lots of improvements we can do to the existing APIs. We can easily identify when trying to actually use them by writing a UI. Let's note them down and do those improvements while writing the UI. For example, there can be cases where we need to do an unnecessary amount of API calls in the current REST API, which ideally can do in a single call. Those need to be fixed in the REST API. [1] https://github.com/wso2/carbon-apimgt/blob/master/components/apimgt/org.wso2.carbon.apimgt.rest.api.admin/src/main/resources/admin-api.yaml [2] https://github.com/swagger-api/swagger-codegen [3] https://github.com/wso2/carbon-apimgt/blob/master/components/apimgt/org.wso2.carbon.apimgt.rest.api.publisher.v1/pom.xml#L228-L253 [4] https://github.com/wso2/carbon-apimgt/tree/master/components/apimgt/org.wso2.carbon.apimgt.rest.api.util/src/main/resources/server-templates [5] https://github.com/wso2/carbon-apimgt/blob/master/components/apimgt/org.wso2.carbon.apimgt.rest.api.admin/src/gen/java/org/wso2/carbon/apimgt/rest/api/admin/dto/ThrottleConditionDTO.java#L16-L22 [6] https://github.com/wso2/carbon-apimgt/blob/master/components/apimgt/org.wso2.carbon.apimgt.rest.api.publisher.v1/src/main/webapp/WEB-INF/beans.xml Thanks! On Fri, Apr 17, 2020 at 3:28 PM Chathuranga Siriwardhana < [email protected]> wrote: > Hi all, > > In order to keep track of the improvements and issues regarding the > REST+React implementations, following git issue is created. > > https://github.com/wso2/carbon-apimgt/issues/8416 > > Best Regards, > Chathuranga. > > On Thu, Apr 16, 2020 at 4:12 PM Chathuranga Siriwardhana < > [email protected]> wrote: > >> Hi all, >> >> We are going to revamp the WSO2 APIM Admin Portal. Following changes are >> to be done. >> >> 1. Convert the Admin Portal to a React + Rest API App. >> >> Currently, the Admin Portal is a Jaggery App. @Chathuranga Siriwardhana >> <[email protected]> is working on this. >> >> 2. Converting the Admin Portal to a Web App. >> >> @Kavishka Fernando <[email protected]> is working on this and will be >> removing jaggery as a dependent component from the revamped admin portal. >> >> >> Applying a new skin to the revamped Admin Portal is also suggested. >> >> A dedicated feature branch [1] on the carbon-apimgt repository is >> available for the implementations. >> >> [1] https://github.com/wso2/carbon-apimgt/tree/admin_portal_revamp >> >> Best Regards, >> -- >> *Chathuranga Siriwardhana *| Software Engineer | WSO2 Inc. >> (m) +94713604485 | Email: [email protected] >> <http://wso2.com/signature> >> > > > -- > *Chathuranga Siriwardhana *| Software Engineer | WSO2 Inc. > (m) +94713604485 | Email: [email protected] > <http://wso2.com/signature> > -- Malintha Amarasinghe *WSO2, Inc. - lean | enterprise | middleware* http://wso2.com/ Mobile : +94 712383306
_______________________________________________ Architecture mailing list [email protected] https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
