An option between #1 and #2 is you can create a plugin and in the Manifest.MF there is an option that will make the plugin be loaded on startup. The startup of that method can do the authentication. This way you don't need to change anything in uDig at all. I can't remember the exact option that you need but you should be able to look it up in the eclipse online help.

Jesse

euan crawford wrote:
I need to authenticate users of my uDig plugin (restricts access to a MySQL backend and selectively disables tools/menu items according to a user's role). The hooks for displaying a login form are ..

#1 at uDig startup: clean for the user but requires catching UDigApplication.run() and showing the login before createAndRunWorkbench()) is called. However I don't want to make changes to the uDig platform. Is it possible to create a new RCP application that extends uDig - it would one contain one class that overrides and calls UDigApplication.run() after the login.

#2 during plugin initialization: ideal but can't be done with lazy loading of plugins. Classes within a plugin are only loaded when the UI component (tool/menu etc) is invoked?

#3 on demand (user presses a login tool): not ideal as it requires an extra mouse click and the menus/tools to be disabled at startup.

Any suggestions/comments?

Euan

_________________________________________________________________
MSNĀ® Calendar keeps you organized and takes the effort out of scheduling get-togethers. http://join.msn.com/?pgmarket=en-ca&page=byoa/prem&xAPID=1994&DI=1034&SU=http://hotmail.com/enca&HL=Market_MSNIS_Taglines Start enjoying all the benefits of MSNĀ® Premium right now and get the first two months FREE*.

_______________________________________________
User-friendly Desktop Internet GIS (uDig)
http://udig.refractions.net
http://lists.refractions.net/mailman/listinfo/udig-devel

_______________________________________________
User-friendly Desktop Internet GIS (uDig)
http://udig.refractions.net
http://lists.refractions.net/mailman/listinfo/udig-devel

Reply via email to