5. Client Application API¶
Staff Advice: Design a solution before starting the implementation. Students consistently agree that design is harder than implementation across multiple iterations of this project. A faithful implementation of a faulty design will not earn you many points.
See additional suggestions in Staff Advice.
The API for each of the 8 functions that you are required to implement in proj2.go are documented in the following pages.
- 5.1. InitUser: Create a user account.
- 5.2. GetUser: Log in using username and password
- 5.3. User.StoreFile: Store user files
- 5.4. User.LoadFile: Load user files
- 5.5. User.AppendFile: Efficiently append data to an existing file
- 5.6. User.ShareFile: Create a secure file share invitation
- 5.7. User.ReceiveFile: Add a shared file to personal file namespace
- 5.8. User.RevokeFile: Revoke file access