$Id: README,v 0.4 2001/07/24 17:14:50 pcollins Exp $ HTTP::DAV - A WebDAV client library for Perl5 WHAT IS IT? This is HTTP::DAV (a.k.a PerlDAV), a Perl5 library for interacting and modifying content on webservers using the WebDAV protocol. Now you can LOCK, DELETE and PUT files and much more on a DAV-enabled webserver. Learn more about WebDAV at http://www.webdav.org/ WARNING This is alpha software. It does function but please be careful not to use it in production. Please help to finish PerlDAV. There is a TODO list at the bottom of this file. AN EXAMPLE SCRIPT use HTTP::DAV; $dav = HTTP::DAV->new; $dav->credentials( "pcollins", "mypass", "http://localhost/" ); $resource = $dav->new_resource( -uri => "http://localhost/dav/myfile.txt" ); $response = $resource->lock; $response = $resource->put("New file contents\n"); print "BAD PUT\n" unless $response->is_success; $response = $resource->unlock; $resource->propfind; print "BAD PROPFIND\n" unless $response->is_success; $getlastmodified = $resource->get_property( "getlastmodified" ); print "Last modified $getlastmodified\n"; HOW DO I INSTALL IT? The lazy way: $ perl -MCPAN -e shell cpan> install HTTP::DAV or the manual way: Retrieve the latest copy from CPAN: http://www.cpan.org/authors/id/P/PC/PCOLLINS/ $ perl Makefile.PL $ make $ make test $ make install WHERE ARE THE MANUALS? Once you've installed HTTP::DAV, you can type: $ perldoc HTTP::DAV $ perldoc HTTP::DAV::Resource GETTING HELP The perldav mailing list There is a mailing list for PerlDAV for use by Developers and Users. Please see http://mailman.webdav.org/mailman/listinfo/perldav WHAT ARE THE PREREQUISITES? - LWP (Have not tested lower than v5.48) - XML::DOM (Have not tested lower than v1.26) - Perl (Have not tested lower than v5.005) To get the latest versions of these prerequisite modules you can simply type this at the command prompt: $ perl -MCPAN -e shell cpan> install LWP cpan> install XML::DOM or if you just 'install HTTP::DAV' the lovely CPAN module should just magically install all of the prerequisites for you. WHAT SYSTEMS DOES IT WORK WITH? At the moment, this module is still in development, and as such I haven't had the time to test it on anything other than Linux. But given that it is all pure Perl and no .xs or C-code it should be fairly portable. I have had few complaints about interop issues. BUGS Locking is getting better but probably still has bugs. The Response.pm module needs considerable work to allow access to the multistatus responses. REVISION HISTORY v0.05: General bug fixes and addition of proppatch - added PROPPATCH method to HTTP::DAV::Resource, thanks to Sylvain Plancon. - fixed uninitialized warnings in test scripts. - fixed new lock bug in DAV::Lock, thanks to Ben Evans - fixed dumb mistake where PUT was calling get instead of put, thanks to Sylvain and Ben again. - fixed call to Utils::bad, thanks to Sylvain v0.04: Initial Release - supports PUT,GET,MLCOL,DELETE,OPTIONS,PROPFIND,LOCK,UNLOCK, steal_lock,lock_discovery AUTHOR AND COPYRIGHT This module is Copyright (C) 2001 by Patrick Collins G03 Gloucester Place, Kensington Sydney, Australia Email: pcollins@cpan.org Phone: +61 2 9663 4916 All rights reserved. You may distribute this module under the terms of either the GNU General Public License or the Artistic License, as specified in the Perl README file.