[ome-devel] Shoola login sequence issues
Harry Hochheiser
hsh at nih.gov
Thu May 12 19:52:53 BST 2005
I've got some questions/concerns about the shoola login sequence that
I'd like to discuss..
As initially implemented, Shoola was apparently designed to reflect the
stateless nature of the server. Although shoola presents the user with
an initial login screen, the model did not require a
constantly-available legitimate connection. Instead, if a user made a
request to the server _without_ being logged in, properly designed
agents would request a user name and password, login to the server, and
process the request. Or, sort of - in actuality, they might choose to
return to some reasonable state, instead of continuing with the exact
request as processed.
As this model was not documented, I wrote several shoola agents that
did not implement this behavior.
A few months back, I took a look at the login sequence. Unaware of this
model of managing sessions, I revised the Shoola login screen to
require a valid user name and password. Essentially, given an invalid
user name/password, the login screen would throw up a notifier dialog
window and then return itself to wait for another login attempt.
This code was recently removed from CVS, in favor of the original code.
In the generic sense, I think it would be appropriate/nice/helpful to
try to alert folks before we make changes to CVS that essentially
"undo" work that others have done. Presumably a change was made for a
reason. I had good reasons for making that change - one of which was
to fix a bug: http://bugs.openmicroscopy.org.uk/show_bug.cgi?id=370.
Now, it's entirely possible that the other changes that were made
elsewhere allowed the code to be rolled back without re-introducing the
bug, but that's hard to tell from the CVS comments or bugzilla. Can
we try to discuss such changes in the future?
In the particular sense, I think this handling of the login behavior is
not ideal.
- From a practical viewpoint, my agents are not built to correctly
respond to requests when an OMEDS connection is not available. As I
mentioned above, this requirement was not documented. Furthermore, it
is not supported transparently by the OMEDS code: all agents must
implement it individually. It might be possible to modify OMEDSGateway
to do this login work - I'm not sure. If this can't easily be done, it
would take me a non-trivial amount of effort to revise my agents to fit
this model, and that's not really work that I want to do right now.
- From a UI viewpoint, this model has the potential to confuse the hell
out of users. As it stands now, someone can provide an incorrect user
name/password at the start of Shoola, press "login", try to start an
agent, and then be presented with a new login screen". I think this is
going to be very confusing for many users.
So, I'd like to suggest that we restore the code that requires a
legitimate login before doing any work in Shoola. In this model, the
code is built to recover nicely in the absence of a connection will
still work fine, and other agents (ie., my code) will continue to
function well.
-harry
More information about the ome-devel
mailing list