On Mon, Dec 5, 2011 at 7:57 AM, Chris Nelson <[email protected]> wrote: > > On 12/04/2011 12:59 AM, Olemis Lang wrote: >> >> On Sat, Dec 3, 2011 at 8:26 AM, Chris Nelson <[email protected] >> <mailto:[email protected]>> wrote: >> On 12/02/2011 06:18 PM, osimons wrote: >> On Dec 2, 9:55 pm, Chris Nelson<[email protected]__> wrote: >> >> I can set up an extension point but my question is "where do >> I get the >> >> name from that I put in trac.ini to enable/disable each >> instance? >> Presumably, I'd use the same name in an ExtensionOption. >> >> trac.ini: >> >> teamcalendar.calendar.__TeamCalendar = enabled >> tracjsgantt.tracpm.__SimpleCalendar = disabled >> >> >> or in my source: >> >> cal = ExtensionOption('TracPM', >> 'calendar', >> IResourceCalendar, >> 'teamcalendar.calendar.TeamCalendar') >> >> But those names are an educated guess and I'd rather know how to >> derive/create them than hope I'm right. >> >> ExtensionPoint makes the magic by itself and loads the components for >> you, ... > > > But what about ExtensionOption? My example above fails though that seems the > right path by code inspection. > >
I think you are missing the point here that ExtensionOption offers a way to instantiate Components by relying on Python descriptors magic . Hence that's not the way to go if you want to list the entries under [components] section in trac.ini . I mentioned before you have basically two ways to go : - Use `env.config` object so as to read information in trac.ini file directly - Use `ComponentMeta._registry` to list the classes implementing a given interface (review the code for `ExtensionPoint.extensions` method for further details ;) and then invoke `ComponentManager.is_component_enabled` so as to know whether that particular class is enabled/disabled in that particular Trac environment. Hope this will help. -- Regards, Olemis Facebook => http://www.facebook.com/olemis Twitter => http://www.twitter.com/olemislc (@olemislc) Blog ES => http://simelo-es.blogspot.com Blog EN => http://simelo-en.blogspot.com Quora => http://www.quora.com/olemis Youtube => http://youtube.com/user/greatsoftw Get a signature like this. CLICK HERE. -- You received this message because you are subscribed to the Google Groups "Trac Users" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/trac-users?hl=en.
