Binsor is the perfect example of an installer, and the main reason why I originally introduced them in the fluent api. As you suggested, they are for registration only.
On Sep 24, 2010, at 9:43 AM, Dru Sellers wrote: > :) > > 2010/9/24 Krzysztof Koźmic <krzysztof.koz...@gmail.com> > On 25/09/2010 12:18 AM, Dru Sellers wrote: >> >> This might be clearer is the WindsorInstaller passed some kind of component >> register instead of the actual container, then in the Facility you actually >> had the container to do all the low level stuff. > Yeap, that's been on my mind as well. > IRegistrationStore or something along these lines. > >> >> Based on my limited experience with the installers I feel that I could >> actually accompolish the same task with either approach. > In both cases you get access to the full container, so it's mostly a matter > of conveying intent rather than limiting you through the API. > As mentioned above, it might change (likely will, don't know to what extent > yet) in vNext to make it less confusing and more focused. >> >> Am I crazy? >> >> -d >> >> 2010/9/24 Krzysztof Koźmic <krzysztof.koz...@gmail.com> >> João, >> >> here's how I see it: >> >> Facilities are extensions on top of the container. They encapsulate single >> logical piece of additional functionality.They may be using some more >> objects/components to provide that functionality. They may use other >> components to provide that functionality, like interceptors, >> lifecycleconcerns, ComponentModel creation contributors, lazy component >> loaders or what have you. These components coexist and cooperate to provide >> that piece of functionality. >> To make the facility self contained and cohesive it's ok (and desired) for >> it to register these components in its Init method. >> >> Installers are meant to register application services. While facilities >> register framework, low level code, that is intrinsicly aware of the >> container, Installers register application services which have no knowledge >> of the container. I would have like "RepositoriesInstaller", >> "ControllersInstaller", "ViewsViewModelsInstaller", >> "MessageHandlersInstaller" etc. >> >> I do add facilities in an installer if the facility is working only with the >> components registered in that installer. Otherwise I tend to pre-register >> the facilities. >> >> Hopefully that clarifies this a bit. >> >> Note to self - add that to FAQ >> >> cheers, >> Krzysztof >> >> >> 2010/9/24 João Bragança <j...@braviawebdesign.com> >> >> A lot of the talk about facilities and installers got me thinking. >> Before Windsor 2.x, I would use facilities to do a lot of the >> component registration work. But now it seems like installers are the >> way to go. Still, a facility may. need to register many components to >> extend the container. Is it legitimate for an installer to add >> facilities to the container? Or what about adding an InstallComponents >> method to IFacility to take advantage of the optimized registration? >> It would be cool to do this all from one place. >> >> -- >> You received this message because you are subscribed to the Google Groups >> "Castle Project Users" group. >> To post to this group, send email to castle-project-us...@googlegroups.com. >> To unsubscribe from this group, send email to >> castle-project-users+unsubscr...@googlegroups.com. >> 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 castle-project-us...@googlegroups.com. >> To unsubscribe from this group, send email to >> castle-project-users+unsubscr...@googlegroups.com. >> 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 castle-project-us...@googlegroups.com. >> To unsubscribe from this group, send email to >> castle-project-users+unsubscr...@googlegroups.com. >> 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 castle-project-us...@googlegroups.com. > To unsubscribe from this group, send email to > castle-project-users+unsubscr...@googlegroups.com. > 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 castle-project-us...@googlegroups.com. > To unsubscribe from this group, send email to > castle-project-users+unsubscr...@googlegroups.com. > 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 castle-project-us...@googlegroups.com. To unsubscribe from this group, send email to castle-project-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/castle-project-users?hl=en.