I'd like to configure the Windsor container so that a single, singleton-style instance can provide two or more services through the container.
I've found that using the same type in multiple component declarations (XML-based config) will result in an instance of that type being created to provide each component's service interface, which is not the behaviour I desire.
For example:
interface IA { }
interface IB { }
class AB : IA, IB { ... }
I want the one instance of AB to provide both the IA and IB services.
The specific reason I want to do this is that my concrete DAO implementation extends multiple interfaces. On the flip side, I have several worker components which hold a reference to different interfaces. The concrete DAO instance respects this, but the constructors of these seperate worker components want the implementation of their seperate interfaces and I desire Castle.Windsor to pass the same object instance through to these worker containers via the respective service requests.
lol, I think that was clear as mud! :P
Does anyone understand what I mean, and has anyone got any ideas how I can acheive this through the XML configuration fo the components?