hi everyone!
i have a rather huge and intrusive patch lying around here that will
rename almost all usecases to the form <moduleShortName>.<action> (see
http://issues.apache.org/bugzilla/show_bug.cgi?id=39796).
it will require changes to all your custom publications, but i will
provide some documentation to make the transition as painless as possible.
the idea behind this is to
* keep the global usecase namespace tidy
* map the usecase namespace onto the module namespace (i.e. if you
implement a module "FOO", then you can rely on nobody else introducing
usecases named FOO.something). that way, once your module name is clear,
all your internal symbols are fine as well.
that means that from now on new usecases should adhere to this naming
scheme. i'd also like to suggest that all local symbols in a module that
might leak out be prefixed with the module shortname and a dot,
including magic sitemap match keywords, css classes, variables and whatnot.
NB: this scheme assumes that our current *module shortnames* are
reliably unique and will work for the foreseeable future. if that is not
the case, we might have to use the long module names, but that would be
very verbose indeed. please comment.
the patch does not touch the admin.* and tab.* usecases - although their
names do not start with a module prefix, they are consistent in
themselves, and patching them would be messy.
the tab.* usecases are just a different view, and "tab" is orthogonal to
functionality. i suggest reserving the tab.* namespace for views that
plug into the lenya tab structure. so if you have a module FOO and it
provides a tab view, you should name it tab.FOO.niftyFeature.
the patch also does not touch the blog publication, for two reasons:
a) it has been broken for me for ages, and thus evades all attempts at
regression testing
b) it introduces its own usecase naming scheme (blog/site.create etc.)
which i frankly don't understand. some usecases seem to map to global
modules, some to publication-local modules. can anyone explain?
one last open question:
since recently, many usecases define themselves as their exit usecase in
their xconf files (the bxe insert* ones, for example). that looks odd,
although it certainly works. can anybody explain and perhaps add a
comment to the code?
i'd welcome your comments. if you have any objections to this patch,
please holler now. otherwise i will commit it tonight after i've
finished with the testing.
jörn
--
"Open source takes the bullshit out of software."
- Charles Ferguson on TechnologyReview.com
--
Jörn Nettingsmeier, EDV-Administrator
Institut für Politikwissenschaft
Universität Duisburg-Essen, Standort Duisburg
Mail: [EMAIL PROTECTED], Telefon: 0203/379-2736
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]