On Sun, Apr 20, 2014 at 6:29 PM, Nuwan Dias <nuw...@wso2.com> wrote: > Hi Inosh, > > It was not originally planned, but it looks like we'll be albe to get it > through. >
Great. Thanks for the information. > > Thanks, > NuwanD. > > > On Sunday, April 20, 2014, Inosh Goonewardena <in...@wso2.com> wrote: > >> Hi Nuwan, >> >> Do we have this feature included in APIM-1.7.0 release? >> >> >> On Mon, Mar 17, 2014 at 1:38 PM, Nuwan Dias <nuw...@wso2.com> wrote: >> >> On Mon, Mar 17, 2014 at 2:44 PM, Isuru Perera <isu...@wso2.com> wrote: >> >> Can a user decide to change the default version API when he can make sure >> that all apps work with new API? Or the user can publicly announce the >> default API is changing and give some time to change. >> >> So, in summary, there can be a requirement to change the default API and >> it seems to be a reasonable requirement for me. Just asking. >> >> Yes this is possible. What you're talking here is about changing the >> 'implementation' of the default version api. So you have an api as /twitter >> which performs operations 'a' and 'b'. You're now going to make it perform >> operation 'c'. So you announce that /twitter is about to change in 2 months >> time and at the end of two months, you change /twitter so that it now bears >> the new contract. This would mean that apps still using the old contract >> will break. >> >> During our discussion with the ESB team we talked about the possibility >> of making the Gateway intelligent enough so that it can handle both old and >> new api requests on a single context. I wanted to highlight the fact that >> we dropped the idea since it would make the implementation overly >> complicated and give back very less in return. >> >> Thanks, >> NuwanD. >> >> >> On Mon, Mar 17, 2014 at 12:39 PM, Nuwan Dias <nuw...@wso2.com> wrote: >> >> Let's consider we have the following APIs >> >> /twitter/ >> /twitter/1.0.0 >> /twitter/2.0.0 >> >> When a request is made as http://host:port/twitter/1.0.0, there is no >> guarantee whether it is /twitter or /twitter/1.0.0 that is being invoked. >> Since the *isMatchingVersion* function in RESTRequestHandler always >> returns true for /twitter, if /twitter stands higher in the list, it will >> be matched and invoked. To avoid this, we will be reordering the api list >> so that /twitter gets the last position of the list. Therefore /twitter >> will only be invoked if there is no matching version found. >> >> The following limitations apply when we're having an API as a default >> version API >> >> a) Once you define a default version API, it remains final and cannot >> change. This means that you cannot go and assign a version to it on a later >> day. The reason for this is because it will cause client applications to >> fail since you are changing the contract. >> >> b) The above would mean that if you already have a default version API, >> you cannot mark a new API as a default version API. This sounds fair enough >> to me because you are trying to expose a new contract over an old interface >> and this would again cause old apps to break. >> >> Thanks, >> NuwanD. >> >> >> >> >> On Fri, Mar 14, 2014 at 3:21 PM, Malintha Amarasinghe <malint...@wso2.com >> > wrote: >> >> Hi All, >> >> When exposing APIs, API Manager uses existing synapse core, which is >> already used in WSO2 ESB. Because of that, the behavior of APIs which does >> not having version attributes can be tested by defining similar APIs in >> synapse configuration in an ESB instance. >> >> Regards, >> >> Inosh Goonewardena >> Associate Technical Lead- WSO2 Inc. >> Mobile: +94779966317 >> > > > -- > Nuwan Dias > > Associate Tech Lead - WSO2, Inc. http://wso2.com > email : nuw...@wso2.com > Phone : +94 777 775 729 > > -- Regards, Inosh Goonewardena Associate Technical Lead- WSO2 Inc. Mobile: +94779966317
_______________________________________________ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture