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]

Reply via email to