From: Gerd Stolpmann <info@gerd-stolpmann.de>
To: caml-list@inria.fr
Subject: [Caml-list] [ANN] Webdav client library
Date: Sun, 30 Jan 2011 17:16:32 +0100 [thread overview]
Message-ID: <1296404192.1843.78.camel@gps-desktop> (raw)
Hi,
the search engine team at Mylife is very proud to announce the release
of a WebDAV client library for Ocaml:
http://oss.wink.com/webdav/
WebDAV allows one to access a remote filesystem via the HTTP protocol.
It is often used as easy replacement for FTP, and is e.g. built-in to
many desktop file browsers.
The library is an add-on to Ocamlnet's Http_client, and basically allows
one to submit WebDAV-specific request methods (like PROPFIND or COPY) in
addition to the core HTTP methods (like GET and PUT). There is also
support for the Netfs.stream_fs class type that was recently added to
Ocamlnet, and which models a simple filesystem. So, for example, to get
the file listing at a WebDAV server, one could write
let fs = Webdav_netfs.webdav_netfs "http://my-webdav.server.com/root"
let files = fs # readdir [] "/the/path/to/the/directory"
There are more such functions for retrieving files, uploading files, and
managing directories. Note that Ocamlnet already contains a compatible
implementation for the local filesystem, and one can also e.g. upload an
entire directory tree with something like
let local_fs = Netfs.local_fs()
Netfs.copy_into local_fs "/source/dir" fs "/remote/root"
The WebDAV implementation is complete with the omission of the locking
methods. The library also includes the XML parsers and printers that
would be needed for a WebDAV server (but does not include a server yet).
The library uses PXP for parsing and printing XML. See this file for all
requirements:
http://oss.wink.com/webdav/webdav-1.0/INSTALL
The library is included in GODI for ocaml-3.12 as package godi-webdav.
Lots of fun,
Gerd
P.S. Mylife is using this library for copying large files between
machines of their search clusters, and for accessing HDFS volumes.
--
------------------------------------------------------------
Gerd Stolpmann, Bad Nauheimer Str.3, 64289 Darmstadt,Germany
gerd@gerd-stolpmann.de http://www.gerd-stolpmann.de
Phone: +49-6151-153855 Fax: +49-6151-997714
------------------------------------------------------------
reply other threads:[~2011-01-30 16:16 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1296404192.1843.78.camel@gps-desktop \
--to=info@gerd-stolpmann.de \
--cc=caml-list@inria.fr \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox