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 <mailto: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
    <mailto: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-users@googlegroups.com
        <mailto:castle-project-users@googlegroups.com>.
        To unsubscribe from this group, send email to
        castle-project-users+unsubscr...@googlegroups.com
        <mailto:castle-project-users%2bunsubscr...@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-users@googlegroups.com
    <mailto:castle-project-users@googlegroups.com>.
    To unsubscribe from this group, send email to
    castle-project-users+unsubscr...@googlegroups.com
    <mailto:castle-project-users%2bunsubscr...@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.

Reply via email to