[Twisted-Python] WebDAV / FTP / etc.
![](https://secure.gravatar.com/avatar/433365de0f787faa3ed3e6dd1da5884f.jpg?s=120&d=mm&r=g)
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.
participants (1)
-
Itamar Shtull-Trauring