Implemented recursive scanning of the filetree to register all child
directories for the FileWatcher hierarchy.
Fixed the null pointer exception with the Map in AbstractFileWatcher.
Corrected the shared folder name.
Instead of passing around all of these repetitive values, we pass around
an instance of the Amesbox client. There's no need for threads to have
to keep track of this information on their own. This commit also
introduces the classes needed for sharing. (Very duplicated at the
moment)
Updated client and server utility methods to accommodate sharing.
Realized that there was an issue with the pub/priv key sharing system.
Refactored logins, in addition to writing some code for the sharing
process.
The authentication process has been put back together following the
previous refactor.
Updated the test keys to reflect the changed login method. Wrote a ton
of code for shared keys that quite frankly hasn't been tested at all.
Wrote SyncSharingKeyToClient, which I also didn't test at all.
Preparing to test multiple users and sharing.
Debug messages for visualization of the key sharing process and the
shared file syncing process.
Added debug messages to the server for visualization of the sharing
process.
Misc. bug fixes.
Allowed for persistence of shared storage keys.
Created default shared key list files.
Directories now need not exist before the sharing key creation protocol
can take place.
Fixed the pathing problem when sharing a file.
Setting up for demo on local machine.
Updated so that multiple clients could run on the same machine for the
demo.
The demo crisis may have been solved. Single user sync/storage appears
to be working.
Fixed typos in the demo config files. Confirmed success following the
refactor for the basic features.