Hi Menuka, On Mon, Nov 13, 2017 at 3:35 PM, Rajith Roshan <raji...@wso2.com> wrote:
> Hi Menuka > > On Mon, Nov 13, 2017 at 2:45 PM, Menuka Warushavithana <men...@wso2.com> > wrote: > >> Hi all, >> >> I'm working on implementing a CLI application for importing and exporting >> APIs between different API environments [1] as for my internship project -- >> where I need to query APIs (from the publisher) with respect to the name of >> the API *AND *the version of the API. >> >> Example: name:sampleapi&version:1.0.0 >> >> However, as of now, APIM 3.0.0 Publisher supports full text search only. >> Therefore I started implementing multi-attribute search for Publisher in >> API Manager 3.0.0 and opened a pull request [2]. I have not touched the >> database layer for this implementation since there needs to be a review of >> the design for this particular feature. >> > In the DAO layer attribute search is supported[1] . You can call the same > method from the publisher impl layer. > >> My concerns are as follows. >> >> - Should there be a limit to the number of attributes? i.e. Do we >> need to support a query like "name:sampleapi&version:1.0.0& >> provider:admin&LifeCycleStatus:created" where four attributes are >> used for querying? >> >> Yes, the method[1] is written in way to support this type of queries. > >> >> - Even though the character '&' is used for separating fields (for >> clear representation), it's confusing to use '&' in the URL as it's used >> for separating GET parameters. So what should be the delimiter to be used >> in place of '&' ? [ I'm suggesting "," (the comma) ] >> >> In this case IMO you can encode the pattern in the URL and send. [1] [1] - https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/encodeURIComponent Thanks Prasanna > >> - Example: 'name:sampleapi,version:1.0.0, >> provider:admin,LifeCycleStatus:created' >> - Do the changes I have made in [2] need to be altered so that it can >> be used to support further use cases? >> >> >> Suggestions are appreciated. >> >> [1] https://github.com/menuka94/product-apim-tooling/tree/ >> master/import-export-cli >> [2] https://github.com/wso2/carbon-apimgt/pull/4712 >> > > [1] - https://github.com/wso2/carbon-apimgt/blob/master/ > components/apimgt/org.wso2.carbon.apimgt.core/src/main/ > java/org/wso2/carbon/apimgt/core/dao/impl/ApiDAOImpl.java#L464 > >> >> >> Thanks and Regards >> >> *Menuka Warushavithana* >> *Software Engineering Intern* >> *WSO2* >> >> *Moblie: + <%2B%2094%2011%202145345%20%C2%A0Ext.%205737> 94 77 >> 6979690* >> *LinkedIn: **https://www.linkedin.com/in/menukawarushavithana/ >> <https://www.linkedin.com/in/menukawarushavithana/>* >> *GitHub: **https://github.com/menuka94/ >> <https://github.com/menuka94/>* >> >> >> > > > -- > Rajith Roshan > Senior Software Engineer, WSO2 Inc. > Mobile: +94-7 <%2B94-71-554-8430>17-064-214 >
_______________________________________________ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture