Middleware Functionality Storage node load from config unit test on configuration/initialization of StorageNode make volume store files make virtual volume store files into volumes make upload service put chunks from volume into storage make hosting service take chunks from storage and yield them into pipe request/response parser Master node load from config make transaction flow for upload increment filebucket stored file size, but decrease if the upload fails initialization packet send/receive to cluster initialization packet from client upload finalization packet from client upload initialization packet from client file request authorization packet to client for file request, get filebucket id receive & approve or reject authorization code from storage cluster to store file request/response parser Client node General Make storage class use hashing Id rather than atomic int for file ids make Id class use bitset internally Make client use its own namespace better hashing mechanism for files, non-int ids remove META file necessity (buckets should have uuid) storage node/master node distinction spawn should load from configuration for storage nodes make FileBucketRegistry and VolumeRegistry use same base class converter changes convertInput -> deserialize convertField -> deserializeField convertToValue -> serialize make Volume an abstract class like FileStorage? Dockerfiles for master node, storage node, and client node replication strategy class (geolocation, backup, & ) owned filebuckets Testing Split up unit tests and integrations tests into different folders basic serialization/deserialization tests for StorageClusterNode, MasterNode, VirtualVolume Integration testing revise filehosting revise fileuploading Unit testing Volume creation VirtualVolume commit new StorageVolume addFileBucketVolume “mount” existing volume - i.e. loadDb and fbVolDb StorageVolume creation StorageVolumeManager new StorageVolume setSize StorageClusterMarshaller marshall instance from config VolumeMarshaller load from JSON into Volume instance Protocol StorageClusterNode initialization request/response Master StorageClusterNode initialization acknowledgment request/response