[Twisted-Python] WebDAV / FTP / etc.
Itamar Shtull-Trauring
twisted at itamarst.org
Sat Apr 27 08:56:59 MDT 2002
Various thoughts - if someone ever implements this stuff or refactors
FTP server, talk to me first.
1. WebDAV, FTP, sftp, HTTP for file serving - they're all basically
using three interfaces (only WebDAV makes this explicit.)
ICollection - collection of IEntities (a "directory")
IEntity - an entity that stores data (a "file")
IProperyManager - set and get properties (implemented by ICollections
and IEntities.)
So, we define the interfaces, and then write at least one implemntation,
a filesystem backed one. FTP, WebDAV and twisted.web.static would all
depend on these interfaces, and given a FS-backed implementation could
serve files.
2. WebDAV does *not* depend on twisted.web - it's a separate HTTP-based
protocol. Note that WebDAV has its own port (e.g. because it breaks with
certain web proxies) and in general the concept of twisted.web's
Resource doesn't map to WebDAV, since WebDAV isn't supposed to be
*doing* stuff, it's for *editing* entities.
More information about the Twisted-Python
mailing list