lp1102300 speed up staff client login sequence collab/phasefx/lp1102300_speed_up_login
authorJason Etheridge <jason@esilibrary.com>
Mon, 21 Jan 2013 07:41:03 +0000 (02:41 -0500)
committerJason Etheridge <jason@esilibrary.com>
Mon, 21 Jan 2013 08:53:16 +0000 (03:53 -0500)
commit82dbd5484d58a8af1f41697925d1305d5ffe73fe
tree837502e41c1a29f6a7928aaaffccb568bfe2db2a
parent829462a97d2c28d698c43adc01897e5946ed581f
lp1102300 speed up staff client login sequence

This code caches some data to the file system during the staff client login
sequence and will load that data from the file system on subsequent logins
instead of from the network, unless the data goes stale, in which case, new data
will be cached.

It relies on changes to OpenSRF to provide .md5 variants of methods.  I've done
this on the Perl side with collab/phasefx/auto_md5_method @ working/OpenSRF.git,
but if someone were to do the same on the C (and Python) sides, then we can
cache even more data during the login sequence.  The Perl side might could also
benefit from a better implementation.

This code potentially creates some security vulnerabilities, for if the data is
stored in the user profile directory, then that directory is probably not as
protected as the application itself.  But this is true for the data we already
store there.  In the long run, we'lll probably want to MD5 the data on the
client side to compare to the remote MD5, instead of caching remote MD5's.

Signed-off-by: Jason Etheridge <jason@esilibrary.com>
Open-ILS/xul/staff_client/chrome/content/OpenILS/data.js
Open-ILS/xul/staff_client/chrome/content/util/network.js