mirror of
https://github.com/tahoe-lafs/tahoe-lafs.git
synced 2025-03-22 03:35:16 +00:00
docs: remove obsolete doc file "codemap.txt"
I started to update this to reflect the current codebase, but then I thought (a) nobody seemed to notice that it hasn't been updated since December 2007, and (b) it will just bit-rot again, so I'm removing it.
This commit is contained in:
parent
47cba4b51a
commit
95296e01a3
@ -1,64 +0,0 @@
|
||||
|
||||
CODE OVERVIEW
|
||||
|
||||
A brief map to where the code lives in this distribution:
|
||||
|
||||
src/allmydata: the code for this project. When installed, this provides the
|
||||
'allmydata' package. This includes a few pieces copied from
|
||||
the PyCrypto package, in allmydata/Crypto/* .
|
||||
|
||||
Within src/allmydata/ :
|
||||
|
||||
interfaces.py: declaration of zope.interface-style Interfaces for most
|
||||
components, also defines Foolscap RemoteInterfaces for
|
||||
all remotely-accessible components
|
||||
|
||||
node.py: the base Node, which handles connection establishment and
|
||||
application startup
|
||||
|
||||
client.py, introducer.py:
|
||||
these are two specialized subclasses of Node, for users and the central
|
||||
introducer, respectively. Each works by assembling a collection of services
|
||||
underneath a top-level Node instance.
|
||||
|
||||
introducer.py: node introduction handlers, client and server
|
||||
|
||||
storageserver.py: provides storage services to other nodes
|
||||
|
||||
codec.py: low-level erasure coding, wraps the zfec library
|
||||
|
||||
encode.py: handles turning data into shares and blocks, computes hash trees
|
||||
|
||||
upload.py: upload server selection, reading data from upload sources
|
||||
|
||||
download.py: download server selection, share retrieval, decoding
|
||||
|
||||
dirnode2.py: implements the distributed directory nodes.
|
||||
|
||||
webish.py, web/*.xhtml: provides the web frontend, using a Nevow server
|
||||
|
||||
uri.py: URI packing/parsing routines
|
||||
|
||||
hashtree.py: Merkle hash tree classes
|
||||
|
||||
debugshell.py, manhole.py: SSH-connected python shell, for debug purposes
|
||||
|
||||
util/*.py: misc utility classes
|
||||
|
||||
test/*.py: unit tests
|
||||
|
||||
|
||||
Both the client and the central introducer node runs as a tree of
|
||||
(twisted.application.service) Service instances. The Foolscap "Tub" is one of
|
||||
these. Client nodes have an Uploader service and a Downloader service that
|
||||
turn data into URIs and back again.
|
||||
|
||||
The Uploader is given an "upload source" (which could be an open filehandle,
|
||||
a filename on local disk, or even a string), and returns a Deferred that
|
||||
fires with the URI once the upload is complete. The Downloader is given a URI
|
||||
and a "download target" (an open filehandle, filename, or instructions to
|
||||
provide a string), and fires a Deferred with a target-specific value when the
|
||||
download is complete. The source/target API is intended to make it easy to
|
||||
stream the incoming data to a media player or HTTP connection without having
|
||||
to consume a lot of memory for buffering.
|
||||
|
Loading…
x
Reference in New Issue
Block a user