589
edits
| Line 30: | Line 30: | ||
In this section, the product's architecture is described. Any individual components or actors are identified, their "knowledge" or what data they store is identified, and data flow between components and external entities is described. | In this section, the product's architecture is described. Any individual components or actors are identified, their "knowledge" or what data they store is identified, and data flow between components and external entities is described. | ||
'''The main objective of this feature/product is: | '''The main objective of this feature/product is: | ||
* store large file attachments in online storage | |||
* providers are XPCOM components | |||
* cooperating with service providers on both a technical and business side | |||
* can be pulblic services or private (ie. local ftp) | |||
* Files are uploaded when you attach them, possibly also from the attachment box afterwards. | |||
* "provision" UI | |||
* "logging in" UI | |||
* "attachment" UI | |||
* receiving a mail would have a link with some annotations created by Thunderbird. | |||
'''Design Documents''': | '''Design Documents''': | ||
https://wiki.mozilla.org/Features/Thunderbird/BigFiles | |||
== Components == | == Components == | ||
Each big file provider is a component. The mail compose code uses the nsIMsgCloudFileProvider.idl interface to talk to the big file provider. The big file providers then use their own API to talk to their servers. This communication is specific to each provider. The general flow is authentication of the user, followed by uploading of file contents, and retrieval of a link to the shared file. This link is then included in the e-mail sent to the mail recipients. | |||
=== Component X === | === Component X === | ||
| Line 75: | Line 84: | ||
| | | | ||
|} | |} | ||
= User Data Risk Minimization = | = User Data Risk Minimization = | ||
edits