Anyone? Can I go on with the proposed changes? 2010/3/9 Simone Busoli <[email protected]>
> So giving a look at the change log I noticed that there was a breaking > change that was not reflected in the docs. > The xml docs for SelectInterceptors say that > > "If the selector is not interested in modifying the interceptors > for this model, it > /// should return a null reference and the next selector in line > would be executed (or the default > /// model.Interceptors) > /// If the selector return a non null value, this is the value that > is used, and the model.Interectors are ignored, if this > /// is not the desirable behavior, you need to merge your > interceptors with the ones in model.Interecptors yourself. > " > That's not true since the change modified the behavior so that the > model.Interceptors are always appended after all interceptors returned by > all interceptor selectors, if any, so it's not true that by returning any > interceptors from a selector then the default ones are discarded. This > inconsistency can bring to duplicate interceptors being applied. > > In addition to this I think HasInterceptors is misleading, therefore I > would suggest calling it before calling SelectInterceptors so that in case > the first returns false then the second is not called. This is to centralize > the logic to decide whether a model has interceptors or not in a single > place. > > Finally, I'd suggest to make the SelectInterceptors contract clearer. > Either modify the model.Interceptors collection or return something from the > method, not both because it's hard to figure out where your interceptors end > up WRT order, which is important. > > Ideas? > > 2010/3/8 Krzysztof Koźmic <[email protected]> > >> yes, as well as the official documentation. >> >> W dniu 8 marca 2010 21:50 użytkownik Simone Busoli >> <[email protected]> napisał: >> > About the wiki, are there plans to move the contents in >> > using.castleproject.org there? >> > >> > 2010/3/8 Krzysztof Koźmic <[email protected]> >> >> >> >> If we do one more v2.x build (which I'd like to do) we'd rather limit >> >> breaking changes. >> >> For v3.0 we have some major changes in mind already, so that would not >> be >> >> a big problem as long as the change and migration path are properly >> >> documented (see breakingchanges.txt file in repository) >> >> >> >> On 3/8/2010 9:16 PM, Simone Busoli wrote: >> >> >> >> Sure, although that would probably be a breaking change. >> >> >> >> 2010/3/8 Krzysztof Koźmic <[email protected]> >> >>> >> >>> We'll be more than happy to discuss your ideas and patches with >> >>> improvements, both for code and documentation. >> >>> >> >>> cheers, >> >>> Krzysztof >> >>> >> >>> W dniu 8 marca 2010 21:12 użytkownik Simone Busoli >> >>> <[email protected]> napisał: >> >>> > Thanks, I was just trying to figure out its behavior. I think >> >>> > interceptor >> >>> > selectors stuff can be improved, the API is not intuitive in my >> >>> > opinion, in >> >>> > that you need to know what you need to return for it to behave >> >>> > correctly, >> >>> > although it's documented in the xml docs but you usually don't see >> it >> >>> > since >> >>> > you're not the client of the API. >> >>> > >> >>> > 2010/3/8 Krzysztof Koźmic <[email protected]> >> >>> >> >> >>> >> oh, and about docs, we added new wiki, that all docs will be >> migrated >> >>> >> to. >> >>> >> feel free to contribute :) >> >>> >> >> >>> >> http://stw.castleproject.org/Windsor.MainPage.ashx >> >>> >> >> >>> >> >> >>> >> >> >>> >> On 3/8/2010 9:04 PM, Simone Busoli wrote: >> >>> >> >> >>> >> Is there documentation about what purpose they are used for or >> should >> >>> >> I >> >>> >> look at the source? I'd expect to put in HasInterceptors the logic >> to >> >>> >> tell >> >>> >> whether SelectInterceptors should be called or not, otherwise I >> have >> >>> >> to >> >>> >> duplicate the logic in both methods. >> >>> >> >> >>> >> 2010/3/8 Krzysztof Koźmic <[email protected]> >> >>> >>> >> >>> >>> That is correct. Both method are used at different spots and for >> >>> >>> different purpose. >> >>> >>> >> >>> >>> If selector wants is not interested in particular component it >> should >> >>> >>> return null from select method >> >>> >>> >> >>> >>> On 3/8/2010 6:54 PM, SimoneB wrote: >> >>> >>>> >> >>> >>>> Should IModelInterceptorsSelector have its SelectInterceptors >> method >> >>> >>>> called if HasInterceptors returns false? >> >>> >>>> >> >>> >>>> I'd expect not, but I'm experiencing the opposite. >> >>> >>>> >> >>> >>>> >> >>> >>> >> >>> >>> -- >> >>> >>> You received this message because you are subscribed to the Google >> >>> >>> Groups >> >>> >>> "Castle Project Users" group. >> >>> >>> To post to this group, send email to >> >>> >>> [email protected]. >> >>> >>> To unsubscribe from this group, send email to >> >>> >>> [email protected]<castle-project-users%[email protected]> >> . >> >>> >>> For more options, visit this group at >> >>> >>> http://groups.google.com/group/castle-project-users?hl=en. >> >>> >>> >> >>> >> >> >>> >> -- >> >>> >> You received this message because you are subscribed to the Google >> >>> >> Groups >> >>> >> "Castle Project Users" group. >> >>> >> To post to this group, send email to >> >>> >> [email protected]. >> >>> >> To unsubscribe from this group, send email to >> >>> >> [email protected]<castle-project-users%[email protected]> >> . >> >>> >> For more options, visit this group at >> >>> >> http://groups.google.com/group/castle-project-users?hl=en. >> >>> >> >> >>> >> -- >> >>> >> You received this message because you are subscribed to the Google >> >>> >> Groups >> >>> >> "Castle Project Users" group. >> >>> >> To post to this group, send email to >> >>> >> [email protected]. >> >>> >> To unsubscribe from this group, send email to >> >>> >> [email protected]<castle-project-users%[email protected]> >> . >> >>> >> For more options, visit this group at >> >>> >> http://groups.google.com/group/castle-project-users?hl=en. >> >>> > >> >>> > -- >> >>> > You received this message because you are subscribed to the Google >> >>> > Groups >> >>> > "Castle Project Users" group. >> >>> > To post to this group, send email to >> >>> > [email protected]. >> >>> > To unsubscribe from this group, send email to >> >>> > [email protected]<castle-project-users%[email protected]> >> . >> >>> > For more options, visit this group at >> >>> > http://groups.google.com/group/castle-project-users?hl=en. >> >>> > >> >>> >> >>> -- >> >>> You received this message because you are subscribed to the Google >> Groups >> >>> "Castle Project Users" group. >> >>> To post to this group, send email to >> >>> [email protected]. >> >>> To unsubscribe from this group, send email to >> >>> [email protected]<castle-project-users%[email protected]> >> . >> >>> For more options, visit this group at >> >>> http://groups.google.com/group/castle-project-users?hl=en. >> >>> >> >> >> >> -- >> >> You received this message because you are subscribed to the Google >> Groups >> >> "Castle Project Users" group. >> >> To post to this group, send email to >> >> [email protected]. >> >> To unsubscribe from this group, send email to >> >> [email protected]<castle-project-users%[email protected]> >> . >> >> For more options, visit this group at >> >> http://groups.google.com/group/castle-project-users?hl=en. >> >> >> >> -- >> >> You received this message because you are subscribed to the Google >> Groups >> >> "Castle Project Users" group. >> >> To post to this group, send email to >> >> [email protected]. >> >> To unsubscribe from this group, send email to >> >> [email protected]<castle-project-users%[email protected]> >> . >> >> For more options, visit this group at >> >> http://groups.google.com/group/castle-project-users?hl=en. >> > >> > -- >> > You received this message because you are subscribed to the Google >> Groups >> > "Castle Project Users" group. >> > To post to this group, send email to >> [email protected]. >> > To unsubscribe from this group, send email to >> > [email protected]<castle-project-users%[email protected]> >> . >> > For more options, visit this group at >> > http://groups.google.com/group/castle-project-users?hl=en. >> > >> >> -- >> You received this message because you are subscribed to the Google Groups >> "Castle Project Users" group. >> To post to this group, send email to >> [email protected]. >> To unsubscribe from this group, send email to >> [email protected]<castle-project-users%[email protected]> >> . >> For more options, visit this group at >> http://groups.google.com/group/castle-project-users?hl=en. >> >> > -- You received this message because you are subscribed to the Google Groups "Castle Project Users" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/castle-project-users?hl=en.
