Hi,
On Tue, Sep 15, 2009 at 11:36 AM, Thomas Mortagne <thomas.mortagne(a)xwiki.com
  wrote: 
> +0.5 for 2.0, i'm not sure since its a big change in a deep level but
> it does not sounds dangerous and not doing it in 2.0 will be a pain
> for merging
>
> On Mon, Sep 14, 2009 at 09:22, Vincent Massol <vincent(a)massol.net
  wrote: 
> > We need to decide if we want
this only in 2.1M1 or also in 2.0 final
> > or 2.0.x.
> >
> > Reminder: This is needed to allow wiki macros to be able to be written
> > in multiwiki environments.
> >
> > Note: The code I have so far for it doesn't seem too dangerous.
> >
> > WDYT?
>
I'm +1 for 2.0 too since it's an important part of making wiki macros work
well.
Guillaume
 
 Thanks
 -Vincent
 On Sep 8, 2009, at 9:28 AM, Vincent Massol wrote:
  Hi,
 We have the need to isolate groups of components. For ex a wiki
 macro created in a subwiki should only be visible in that subwiki by
 default.
 Here's an implementation proposal that I'm planning to implement:
 * There's a Root Component Manager (the current CM)
 * There are 3 components which implement the ComponentManager role
 and with 3 hints: "wiki", "user" and "all". There's a
 CompositeComponentManager class that allows chaining CM and the
 "all" CM chains the "default" (root CM), "wiki" CM and
"user" CM.
 This works the same as with the configuration module.
 * Other components can have CMs injected as they want (if not
 specified then it's the default, etc). For ex:
 @Requirement("all")
 private ComponentManager cm
 * Creation process. As for now the user creates the root CM and then
 the annotation loader will create the descriptors for the other CMs
 and register them against the root CM. They'll get instantiated once
 (singleton) the first time they're looked up.
 * In order to register a component for, say, a given "enterprise"
 wiki, we need to add a new property to the ComponentDescriptor: get/
 setAdditionalData(Object data). For example:
 wikiCM.registerComponent(CD mycd) where
 cd.setAdditionalData("enterprise").
 * Last, Guice uses Modules to isolate component definitions so it
 should be possible and relatively easy to port the implementation to
 Guice (even though Guice uses static Modules we can make them
 dynamic).
 WDYT?
 Thanks
 -Vincent
 
 _______________________________________________
 devs mailing list
 devs(a)xwiki.org
 
http://lists.xwiki.org/mailman/listinfo/devs
 
 --
 Thomas Mortagne
 _______________________________________________
 devs mailing list
 devs(a)xwiki.org
 
http://lists.xwiki.org/mailman/listinfo/devs
  
--
Guillaume Lerouge
Product Manager - XWiki
Skype: wikibc
Twitter: glerouge
http://guillaumelerouge.com/