title: How do I configure a single component instance providing multiple services in Castle.Windsor?
body: <p>I'd like to configure the Windsor container so that a single, singleton-style instance can provide two or more services through the container.</p>
  
  <p>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. </p>
  
  <p>For example:</p>
  
  <pre><code>interface IA { }
  interface IB { }
  class AB : IA, IB { ... } 
  </code></pre>
  
  <p>I want the one instance of AB to provide both the IA and IB services. </p>
  
  <p>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.</p>
  
  <p>lol, I think that was clear as mud! :P</p>
  
  <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?</p>