• Do not register here on develop.twiki.org, login with your twiki.org account.
• Use View topic Item7848 for generic doc work for TWiki-6.1.1. Use View topic Item7851 for doc work on extensions that are not part of a release. More... Close
• Anything you create or change in standard webs (Main, TWiki, Sandbox etc) will be automatically reverted on every SVN update.
Does this site look broken?. Use the LitterTray web for test cases.
For historical reasons we have some badly misnamed objects. These should be renamed for clarity.

Existing name Proper name Reason
TWiki::Client TWiki::LoginManager This is the superclass of TemplateLoginManager and ApacheLoginManager etc.
TWiki::Client::TemplateLoginManager TWiki::LoginManager::TemplateLoginManager Rename of superclass
TWiki::Client::ApacheLoginManager TWiki::LoginManager::ApacheLoginManager Rename of superclass
TWiki::Users::Password TWiki::PasswordManager Confusingly the password managers are held in the Users subdirectory alongside the user mappings
TWiki::Users::ApacheHtPasswdUser TWiki::PasswordManager::ApacheHtPasswd Rename of superclass, more intention-revealing name
TWiki::Users::HtPasswdUser TWiki::PasswordManager::HtPasswd Rename of superclass, more intention-revealing name
TWiki::Users::TWikiUserMapping TWiki::UserMappingManager, TWiki::UserMappingManager::Default This is really a base class of user mapping managers. It needs to be refactored into the bits that are defined the interface, and the bits that are specific to the twiki+userfiles+groupfiles implementation.

Note that the impact of this change is considerable, as these class names are used in the confgure interface to select the relevant implementations. The change will therefore invalidate an old LocalSite.cfg. This has to be considered in any upgrade notes/scripts.


I think the Users modules are OK. Recent changes have made the structure much clearer. I have renamed Client to LoginManager, though.

Note: this must be highlighted in the release notes!


Harald's response: >
> Crawford Currie <cc@c-dot.co.uk> writes:
>> If you are running off MAIN, you will need to run configure and
>> reset your Login Manager. Otherwise you will get an internal server
>> error.
>> I just renamed the 'Client' class to 'LoginManager' - something which
>> has been needing doing for a long time.
> 'Has been needing doing' - no. TWiki developers have been used to the
> sometimes strange nomenclature of variables. Now they need to re-adjust or
> change the things which don't go into SVN (emacs bookmarks, extra tests,
> experimental code). And it will break TWiki:Codev.RegistrationOnDemandHack
> again - hopefully Craig Meyer will keep up (again).
> There are very few cases where renaming interfaces or modules is actually
> needed (e.g. a name collision). Everything else is just convenience.

Yes, of course you are right; it does cause some pain in the short term. However I just had to explain to an end user (for at least the fifth time) why they couldn't find the login managers anywhere in the code; they just couldn't make the connection between "Client" and "Login manager", despite the clear relationship forged in TWiki.spec and the documentation (which of course they hadn't read). I was getting more than a bit fed up with this, so decided to go for the rename at the same time as the other user changes would impact, rather than drip-feeding the pain later.

I eliminated the admin pain by putting in a couple of lines to fix up old LocalSite.cfg, something that I should have done in the first place.


Summary Refactor object names for clarity
ReportedBy TWiki:Main.CrawfordCurrie

SVN Range TWiki-4.1, Sun, 31 Dec 2006, build 12395
AppliesTo Engine

Priority Normal
CurrentState Closed

Checkins TWikirev:13397 TWikirev:13410
TargetRelease minor
ReleasedIn 4.2.0
Edit | Attach | Watch | Print version | History: r10 < r9 < r8 < r7 < r6 | Backlinks | Raw View |  Raw edit | More topic actions
Topic revision: r10 - 2008-01-22 - KennethLavrsen
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2022 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback