Edgewall Software

Changes between Version 12 and Version 13 of TracDev/ComponentArchitecture


Ignore:
Timestamp:
Jul 25, 2009, 11:14:56 PM (15 years ago)
Author:
jevans
Comment:

fix broken source links

Legend:

Unmodified
Added
Removed
Modified
  • TracDev/ComponentArchitecture

    v12 v13  
    164164  ''Note that `trac.env.Environment` inherits `trac.core.ComponentManager`, so you'll typically see components initialized with an environment.''
    165165
    166 These are the first few lines of `PermissionSystem` as of r5790 (or [browser:trunk/trac/perm.py:r5790#L230 in context]):
     166These are the first few lines of `PermissionSystem` as of r5790 (or [browser:trunk/trac/perm.py@5790#L230 in context]):
    167167{{{
    168168#!python
     
    177177Note that this `Component`:
    178178 1. implements the `IPermissionRequestor` interface
    179  1. has an extension point for registering all the Components implementing `IPermissionRequestor` ([browser:trunk/trac/perm.py:r5790#L40 in context]):
     179 1. has an extension point for registering all the Components implementing `IPermissionRequestor` ([browser:trunk/trac/perm.py@5790#L40 in context]):
    180180{{{
    181181#!python
     
    192192In this specific case `PermissionSystem` will be part of that list as well, because it implements the `IPermissionRequestor` interface. In no way a Component is bound to implement the interfaces it declares an extension point for, the two operations being entirely independent. But when that make sense, it's entirely possible to do so.
    193193
    194   ''Note: it's certainly debatable whether it makes sense in this particular case—but if you '''do''' decide to do it, watch out for infinite recursion as `PermissionStore` does [browser:trunk/trac/perm.py:r5790#L380 here].
     194  ''Note: it's certainly debatable whether it makes sense in this particular case—but if you '''do''' decide to do it, watch out for infinite recursion as `PermissionStore` does [browser:trunk/trac/perm.py@5790#L380 here].
    195195
    196196Next in `PermissionSystem` there is a declaration of an `ExtensionOption` called `store`: