Hi team, Please find my comments inline.
On Fri, Mar 25, 2016 at 10:27 AM, Himasha Guruge <[email protected]> wrote: > Hi All, > > I'm in the process of rewriting our existing BPMN REST API for C5, with > msf4j in place. While checking the used annotations in the code, I came > across the use of @Context annotation in order to inject UserInfo [1] > interface which provides access to application and request URI > information. We have used following two methods of this interface > throughout the code. > > (1) QueryParameters() > (2) getBaseUri() > Do we have an equlent for uriInfo.getBaseUri in MSF4J supported annotation ? Can't we use io.netty.handler.codec.http.HttpRequest.getUri() <http://netty.io/4.0/api/io/netty/handler/codec/http/HttpRequest.html#getUri()> ? I tested if it's possible to inject UriInfo interface in msf4j by deploying > a simple microservice sample (which uses @Context UriInfo info) which > failed with an error in executing the request, which means the injection of > it is not possible with current msf4j implementation. [2] > > In [2] it is mentioned that there is @QueryParam annotation support in > msf4j which we can use alternatively where we would have to pass the query > parameter to the method in the same way we use @PathParam. See usage in [3]. > > However, issues arise in following scenarios. > > For example, In ModelService[4] we have a large range of allowed query > params (name,nameLike,category,categoryLike etc) for a method, and based on > the query params that the user has passed (by using > uriInfo.getQueryParameters()) we process the request accordingly. In such > a case if we are to use @ > > QueryParam it would mean we would have to pass all possible query > parameters (Around 15) to the method. > I think this is should be ok. > > Also, we have used > > uriInfo.getBaseUri() method throughout as well. > > How are we going to proceed with this? Appreciate your suggestions on this. > > [1] > https://jsr311.java.net/nonav/releases/1.1/javax/ws/rs/core/UriInfo.html > > [2] > https://docs.wso2.com/display/MSF4J100/Key+Concepts#KeyConcepts-Supportedannotations > > [3] http://www.mkyong.com/webservices/jax-rs/jax-rs-queryparam-example/ > > [4] > https://github.com/wso2/carbon-business-process/blob/de4d3ca5a2c3d670dcbf07ee6b58f0afd9489e95/components/bpmn/org.wso2.carbon.bpmn.rest/src/main/java/org/wso2/carbon/bpmn/rest/service/repository/ModelService.java#L98 > > Regards, > > Himasha Guruge > *Software Engineer* > WS*O2* *Inc.* > Mobile: +94 777459299 > [email protected] > Thanks, Hasitha. -- -- Hasitha Aravinda, Senior Software Engineer, WSO2 Inc. Email: [email protected] Mobile : +94 718 210 200
_______________________________________________ Architecture mailing list [email protected] https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
