Merge pull request #3915 from artbristol/diagrams

Add some diagrams to help developers
This commit is contained in:
cketti 2019-02-13 00:44:34 +01:00 committed by GitHub
commit f6cd4c4efd
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
13 changed files with 46 additions and 0 deletions

View file

@ -42,6 +42,9 @@ https://www.transifex.com/projects/p/k9mail/
## Contributing
Thank you for contributing! If you're unfamiliar with the code,
start by reading the [developer documentation](docs/DESIGN.md)
Please fork this repository and contribute back using [pull requests](https://github.com/k9mail/k-9/pulls).
Any contributions, large or small, major features, bug fixes, unit/integration tests are welcomed and appreciated

36
docs/DESIGN.md Normal file
View file

@ -0,0 +1,36 @@
# Repository structure
The project is divided into several directories below which are nested gradle projects.
## app
This contains the highest level code such as UI and core logic.
## backend
APIs for sending and receiving messages
## mail
Low level code for dealing with internet mail protocols
## plugins
Additional, standalone, libraries used by K-9
![modules](Modules.png)
# Walkthrough
To help you understand the design, the following sequence diagrams show typical flows through the
classes. Each class is colour-coded by its top-level project.
## Reading email
![read email sequence](ReadEmail.png)
![read email classes](ReadEmailClasses.png)
## Sending email
![send email sequence](SendEmail.png)

BIN
docs/Modules.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 166 KiB

BIN
docs/ReadEmail.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 96 KiB

BIN
docs/ReadEmailClasses.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 55 KiB

BIN
docs/SendEmail.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 52 KiB

View file

@ -0,0 +1 @@
<mxfile modified="2019-01-11T10:26:15.402Z" host="www.draw.io" agent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/9.3.1 Chrome/66.0.3359.181 Electron/3.0.6 Safari/537.36" etag="7TMj1jc2HB3p0JL3eQl-" version="10.0.31" type="device"><diagram id="YKoQ1aF3pb8lkexGjirb" name="Page-1">1VjbcpswEP0aHpPhYrD9aDtpOp02ScedaSZvMqxBjUCMELGdr+8KxM041EmdScKDLR2WRXt0dr2y4Szi7ZUgafSDB8AM2wy2hnNh2PbYc/BTAbsSGLlmCYSCBiVkNcCSPoEGK7OcBpB1DCXnTNK0C/o8ScCXHYwIwTddszVn3bemJIQesPQJ66O/aSCjEp3Y4wb/CjSMqjdb3rS8E5PKWEeSRSTgmxbkXBrOQnAuy1G8XQBT3FW8lM99eeZuvTABiTzmgZtkJuZ36fj628+n+9ub4C4nszPt5ZGwXAc8832eJ3IJMk8XEfgPOJI0CTMdhdxV1Ai0C0B5Nw1nvomohGVKfHV3g1pALJIxw5mFw0cQkiKtM0bDBDHJlUE/hmpBaA7bFqRjugIegxQ7NNF3R6bmtxKYnm6a3bImGotaO1VhRAskrD03HOJA0/gCSu0epQWNmtdfJHswbI/hKuYrgaNQ1jy8lttTsOh2WfTcPov2ARZHb8XipMdijyMIMFP1lAsZ8ZAnhF026LzLYouxP6jpnS42JJccocbDd660OcxsxnPhw8D6R7pWERGCHLDTPKtYBvdJACOSPnar0slZHw2WgznJqP+fdeAkGf+qhH8zqVr9jP9cWnWP1KplfSixuoNivSYx9g0fsNJ21WuZ7y1f7wj1JsFM9VI48xnJsAocScvJyuSxymux6B4gscKOFqh+wy2nGFm9h87EOp+2rklnS+vetXJYsqB9tDu0fbfT8ZBbd89tSVrPbSGCmpLX62La08WCMIaZgtu1obirNvo1+xm25kK5TnweY9uo1puoZ3guQ14Ae+LCvJFdOQnI6BNZFQYqKVMVYhG0OzfcC0SI7iJ9FByIA+1lTIOgKKuMrIDNif8QFom+4AyXp97rrIvroHoH82Q/0+uzh16x0W7vD1UA89xxx9OTCPHM8s7djkrO7D2V8PU6gzcRiPXs4eEz1F3vveuu5fQTTACR6lfLzFLwKVE+GPeLb3VyBdHvvvBYmaphwiX8m8hVnQk3uWQ0AY1nZX9huSci2+uyPT1wnDAH6vMLyMZpc4Yupd38EeFc/gU=</diagram></mxfile>

View file

@ -0,0 +1 @@
<mxfile modified="2019-01-11T10:16:50.353Z" host="www.draw.io" agent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/9.3.1 Chrome/66.0.3359.181 Electron/3.0.6 Safari/537.36" etag="RNswfYzUOSRtBdjBfTBV" version="10.0.31" type="device"><diagram id="QmmH9szRuSUe-1hLpNK0" name="Page-1">5Zlhc5owGMc/jS97J4mCvHStrr12N+/s1p1vdimkEBsIC7HoPv1CCSBELXO14O2NF56EhPyeJ/8niT14Gaw/cxT5X5iLaQ/03XUPXvUAMCGQv6lhkxmgBTODx4mbmYzSMCe/sTL2lXVFXBxXGgrGqCBR1eiwMMSOqNgQ5yypNntitDpqhDysGeYOorr1gbjCz6wjYJX2a0w8Px/ZMO2sJkB5YzWT2EcuS7ZMcNKDl5wxkZWC9SWmKbucS/bedE9t8WEch6LJCw9L6+F2Ft5fL8n3xb354+tP9HihnPGC6EpNGEWR7MNhHPeASWXPnx65LHlpSU1EbHI6nK1CF6cD9GV14hOB5xFy0tpEhoO0+SKg8smQxRfMBZFkx5R4obQJFhV9pnV4vXdmRsFLxhlmARZ8I5uoF+BIIVYxNlCPSekwCJXN33ZW3hCpIPGKrkuOsqBQ/gVWsAfripwN1MHbTMGpmP5afqMgni3Gyc1i7iSwv5hOLwyN6RwLQUIvvgkiJmfK35vtHmQ7wB6gWMVoQJ1jgWyb48kwjjSMGiTsSglUjxKszzwWIjoprZ+qGLeQLaVLNkrF0UowaSp7uGNpcB5GG7MVd/CB71efKxD3sDjQTgl0OpeDjuKYIkFeqnL//sE7+E+wG7BT3HUhHjuOpCjiDorFsKoVVttSYeiSe15BazUMWrtTMWtp1LMEN8dU7nAJC68IoszrfgC3n+zyU8TZRrDdVHY7FcH2nggex5vQuUfxc+uRWpwvuxOq+lFshuI4YdydcRZEorOrvs7yI/PWztOXvteacfyE5RQdfKK8/49HrY4BHDZQzdAdp9cr8smhMk6JswtLTY+O08D82mdLA/e7XYe8RXG4A2Jua6yMaoQZI3IihQ9NuyYoZs052TTVW2DrmqbWkVU7eBtGraOMg9bRq6OLaR/ve1PzfXZ1EQvG07uyc7m/qF8Kgb6+qnbeCo1Otar0fd08YzpxiSx0UJiGZotZcidD/fbi1j43iqB1ivr+7JC+P1LmPFepyNopScd8RXic1h/y75tab7Wp9TasOnQwPFLrbe3i+mO1vtHxqHuJvlXng7rzj030oO78D070BtCcf8dkJk7l9N3T/AlktPVd8o4T2zmsnszvrS2f4RtR33T5wNqhCdbX4dHLRz6W/8pmzcu/tuHkDw==</diagram></mxfile>

1
docs/draw.io/Modules.xml Normal file
View file

@ -0,0 +1 @@
<mxfile modified="2019-02-08T04:59:27.033Z" host="www.draw.io" agent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/9.3.1 Chrome/66.0.3359.181 Electron/3.0.6 Safari/537.36" etag="Kic4OgUTI6yT3TjFu3K7" version="10.1.9" type="device"><diagram id="CDRuDVhlQKBUJFbpxX4l" name="Page-1">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</diagram></mxfile>

1
docs/draw.io/README.md Normal file
View file

@ -0,0 +1 @@
This folder is for the draw.io raw source for the images in the parent directory

View file

@ -0,0 +1 @@
<mxfile modified="2019-02-10T03:40:30.943Z" host="www.draw.io" agent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/9.3.1 Chrome/66.0.3359.181 Electron/3.0.6 Safari/537.36" etag="BVVYUPB0dM-kGAl1bI9W" version="10.1.9" type="device"><diagram id="W6TN20NKzh2WQxqSpMed" name="Page-1">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</diagram></mxfile>

View file

@ -0,0 +1 @@
<mxfile modified="2019-02-10T04:00:02.532Z" host="www.draw.io" agent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/9.3.1 Chrome/66.0.3359.181 Electron/3.0.6 Safari/537.36" etag="K0nVuP_f0XyCsGwlqD9i" version="10.2.0" type="device"><diagram id="Jxua7O0Ivqfy6dVKNSXa" name="Page-1">3Vpdc6IwFP01Pu6MSRT00bra7kdndrbd2ecUUsg0EibEqvvrN5SAktSKrHy4Lw5cwg2cnHvuvcEBmq+2twLH4T33CRvAob8doM8DCF0Hqd/UsMsMo/EwMwSC+pkJ7A0P9A/RxnzYmvokKQ2UnDNJ47LR41FEPFmyYSH4pjzsmbPyrDEOiGV48DCzrb+pL0NtBc50f+GO0CDUU0+gm11Y4XywfpMkxD7fHJjQYoDmgnOZHa22c8JS7HJcsvuWR64WDyZIJKvc8HW3RPJncO8+3oLHu7Gcicf4k/byitlav/DMk/SVyt13mkgSEaEfXu5yRARfRz5JnQ4H6GYTUkkeYuylVzeKAsoWyhVTZ0AdPlPG5pxx8XYvWjjL5Xyu7HpaIiTZHn0fUKCk2EX4ikixU0P0DSONqyYWcPX55mCZHG0LD1YIaRvWzAgKz3vw1IHG7wwsoYXlA13FjNyTJMEBjYJGIF0um4N02DWkyIL0asEcdY3lyMLSgo5E/izVTHX2xLj3ooDwcRK+gZmipa4vaTrrG7TqTOs1gGVUM8fEt6TVwE5NztfCI6eDSmIREHmKKfZavIe2IAwrjSs/23twa3c/OFVPvV9XUF5YNDVWLHsnfdehIBuOxu4JR9lLW47eVr94x/qEcCxCLLYqpPykCi8OFt+xmHFABcxoEKljT628ClZ0k6hYTMOXPEs9Oo0yqjLuTA+VPL4sh0BFDsHWOATH5aUfOzU5ZJLRctQwh1w75+0iryFtXjiX0ubeifPEwnHOIyk4Y0Q0iOjlsl3/yrHpVea7SUWtclvTKseQGFBXqyxHsF2tyqevyAif4hWP/MeQRiUqgBIV4KgxKlRNW5PWqOAaQY7qUmFq5L8ijbVFBbvvLRqLvfAOoMMU8DdP6VEgi9W9AvntPqMBux2+wd6LipzeVgWjSc+qAmD3v78S8pFo8ZhEdqoqJbWGxKpqo9Ze4gLDqZFw6nZqwKzXLU9N69V5zXvnqatqFQOOBGQLLVcR7P/aclmOmubC2OLClxWOr01cwdDpWl3tDZCPgqovHUK+/qeDq739DNcMrmHdwtAMLtNRw8EFjxWGJO3Ar/XbSPeVTB5a//9mI6zatrWX+gAy6JBLyNl1kOGo2ORpKzrtelinvSVnfo/3G52+dRbQLii/TZvE8nLaZmIJJp2D+X5Flu7bNr6F0GCB1j2u5xVonXc9sHJlNm5N+6HRA0M0qaf9Zv8Ekduu9tufmvq6F1KZB7DFr9YGD5yaJYBJA9NP0yywP5R9RIG+9Gx5uu0TI5Dx9wMwrtmzWY4u9l1Hne7/H5cN3//JEC3+Ag==</diagram></mxfile>

View file

@ -0,0 +1 @@
<mxfile modified="2019-02-10T04:02:43.187Z" host="www.draw.io" agent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/9.3.1 Chrome/66.0.3359.181 Electron/3.0.6 Safari/537.36" etag="sryRBrGrWx2Xdk4-LGi-" version="10.1.9" type="device"><diagram id="UKgcjDadpjXdOPNuiZzW" name="Page-1">7VrbcqM4EP0aV+0+ZIqLufgxduzZS7I7Nc5Udh9lkG0qAlFCTux8/TYgDEgY34jHSW0eUqjRBdSnj0437pmjcP2VoXj5QH1Meobmr3vmXc8wHNuE/6lhkxv6lpYbFizwc5NeGqbBGxbGotsq8HFS68gpJTyI60aPRhH2eM2GGKOv9W5zSuqrxmiBFcPUQ0S1PgU+Xwqrbg/KG7/hYLEUS7uGk98IUdFZvEmyRD59rZjMcc8cMUp5fhWuR5ike1fsSz5usuPu9sEYjvghA7DrJrPX5NZ/mv/59Pi34Zhvf9xY+SwviKzECyc48nuGTWDO4YzB1SK9CnGSpDuVvwnfFNsDnW/TXYaWR1CSBB50XvKQgEGHyxfMeAC7eUuCRQS2MPD9dOyQoBkmQ+Q9LxhdRf6IEsrgfkSj9K76buJ1E7piHm55IUO8EUdsgXlLR1PMiP0aAMTefcU0xJxtoMNr6fYCu8uKwwsbwwTx4KUOGyTQt9hOt13hGw3g3QxtXUwj5hFxYhbzFlPkby5GVd0sT2RJE2nSRPnOKBOBG9Gm0i1OOyS7H9h06+voTg1+cJHPWLQqe1qaMogeAVddV/CK4jhDrKaCllMw0xWf0fXRwG3HpwzrGeWchmcBt8DjfuC6VwVcW8KBIePtUOA6pgQoOQI6Am7fkdZxLwHco4lWvtExgi8BVOuqgOpIQDX7JwLVNWTE2xcBarER7wtU5/MA9WApMLguoNp1v/ftU4GqSxPp78OojqRdDPsSQB0oQH3IITmiYUwTVauCAI/Ty1VI7oM5JkGGrxizAJ4Fp5AjwvyttA1flwHH0xhlUHuFHKcOXsg7OIIhbNsmBMVJMMtW1cDCsLdiCcDhO07y9Ca1gixJVxpt05bUOIfJRAqkZ+2AkCIceoY5tieT0agtJlJdgtetGC7IRYKGaFYQrmsNEDdk0qzCueLwVn9OH260UbB6/DHz3fFY/74Zv/11U2Cz4k/Fg5V9F5gEszXsWXeSIynjS7qgESJVV7YTjbTZ8+xvu9nKztb3vwWiu11g1XWI1uSDBhd04IHm1En1gIio4SogPmzhp4uoyaS7iDJk2v7pIaUy5EePqErh5ICIcg4LKPPdAkrNVtvEEYVE9hhlBEMnQfpEGdJP10nFSbpXJxUEcSU6SZcrHe6JOkmXdJIpI6IjnaTLJRP9AjqpwFwNhLlmT2IUFap9llI8dCtlPQpTYo5mSZyhKx8Cj1Ad1TTTLyjZRN6vO0dIAQAcwOuoZymro5LuVWJCouziAdYzHtpZjzk2t2iPY5WxRNlZPG3P2ENQN9oX3aiT1E2/k2BwGyctxtP5PMFcAls38DIVeCUrzwMUtVHdjFDvuZOCW0mC+nl1Y+1AEtSvK1k0JSFvDk4kwe3AXeWRrkhQIlu9fwkSVMtvU0COkLePKHlW0PrhtW2X2aJ81F5U2zZ71D5TW11ePV1XOVSuACgy+FDiMCTi0GUZ1hVxSPmVfokqk6HmUHgNIcpBIWlbpfMBJU0RPmdLGlA0fcc+D5LvL1NMNRXLyT+IFsCqnAER/1/gaD8ETOfaDgFz18eKho/B6VdicHbjPZH0NEhW4OqpaJYVkHFprfq1CGGC5yIn8mDB+6x1Z+RHjiyAsxDGvnAm+IZt/tkeUND4V9zpJOgP/snD2b9lqBO1c9jJcvRnB6txmcbzQH3G/hfHcm1Ds92BbVm6UZ9LVtE7zrAT6Km5+N2UpH/sUp255/uD5DyziUxULpH90h2VqBnC7yGK0w3LGOXzHQxju6uDwRr8xIOhOZ7UqsSHjyfrmHjaBs+eeJK/CHcXT67igXsKcnbKKfuEn2a71Fl99+p0lpoFTUMePzIUJTGEx2f052jUlT/ln0dcAT0e8GHqeulxT6lqICkL+92YEJrlz7dzKVj+Bt4c/wc=</diagram></mxfile>