Currently I've implemented that system providers and the ones located using wink-application has the same low (0.1) priority. It can be changed that system providers have 0.1 priority and wink-application have 0.2 priority, while the default priority is 0.5.
On Tue, Sep 22, 2009 at 9:54 PM, Bryant Luk <[email protected]> wrote: > I think there should be a clear distinction in Wink provider priority > from default (system) providers versus user added ones (whether > priority is defined as a tie-breaker or an override). > > For the ones added automatically via wink-providers,I would prefer > somewhere in-between default system ones and explicitly user-added > ones in the JAX-RS Application subclass and any other config > registration system. I think this would allow users to drop in > wink-provider JARs if they want to override the defaults while still > respecting the programmatic config. > > On Tue, Sep 22, 2009 at 12:50 PM, Michael Elman <[email protected]> wrote: > > Originally it was designed as a "tie-breaker". > > > > > > On Tue, Sep 22, 2009 at 8:37 PM, Michael Rheinheimer <[email protected] > >wrote: > > > >> > >> > >> Hi team, > >> > >> We have a double 'priority' param that can be passed to some of the > >> ProvidersRegistry.addProvider methods. This is a non-spec key, thus a > WINK > >> feature. Given that, I've been treating it as an "override" rather than > a > >> "tie-breaker" when sorting Provider priority. For example, if a user > >> specifies ContextResolver1 that @Produces("text/*") and a > ContextResolver2 > >> that @Produces("text/xml") and adds them to the ProvidersRegistry as > such: > >> > >> addProvider(ContextResolver1, 5); > >> addProvider(ContextResolver2, 0); > >> > >> Even though ContextResolver2 would be a closer match for media type > >> "text/xml", ContextResolver1 would be favored due to the higher declared > >> priority. Any thoughts on this? > >> > >> If we all agree, I think we have some work to do around supporting this > >> priority feature; making sure the user knows what the default system > >> provider priority is, perhaps issuing warnings when the priority of > their > >> provider is the same as the system default or negative, adding tests, > >> optimizing code paths in ProvidersRegistry, etc. > >> > >> Please see patch in WINK-193 (this being the more informative) and > WINK-167 > >> (which is easier to see how the priority would be used as an override). > >> > >> Thanks.. > >> mike > > > > > > -- > > - Bryant Luk >
