...
- Determine bodypath for file storage, from ContentHostingService
- Determine if bodypath exists via ContentHostingService. To/when determining In order to determine existence, find:
- Site type from a Sakai reference object (that ContentHostingService uses) if site type is:
- Depending upon which type of site, find the appropriate volume relative to the bodypath that should be created
- User Workspace Sites
- Determine userid from reference path (e.g. /content/user)
- From userid, determine user AFS home root from firstname, lastname algorithm. This is AFS HOME ROOT
- Create bodypath as /afs/home.ucdavis.edu/home/AFS HOME ROOT/.sakai/INSTANCE
- Save bodypath in file system, and run quota extension check against current size of resource (e.g. byte length)
- Personal Project Sites
- Course Sites
- Other Site Types (e.g. Institutional Project Sites)
- else if bodypath doesn't exist.. try to run volume create script based on volume previously determined
- Determine if bodypath exists via ContentHostingService. To/when determining In order to determine existence, find:
- Save file given by ContentHostingService
- Handle errors (checked exceptions) at the Java level via: AFS errors bubble up from shell/perl script to Java level
- No errors, no logging
- If errors, log errors and either try again (e.g. quota extend), or fail and throw exception (e.g. AFS down)
...