The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

XML::Atom::Client - A client for the Atom API

SYNOPSIS

    use XML::Atom::Client;
    use XML::Atom::Entry;
    my $api = XML::Atom::Client->new;
    $api->username('Melody');
    $api->password('Nelson');

    my $entry = XML::Atom::Entry->new;
    $entry->title('New Post');
    $entry->content('Content of my post.');
    my $EditURI = $api->createEntry($PostURI, $entry);

    my $feed = $api->getFeed($FeedURI);
    my @entries = $feed->entries;

    my $entry = $api->getEntry($EditURI);

DESCRIPTION

XML::Atom::Client implements a client for the Atom API described at http://bitworking.org/projects/atom/draft-gregorio-09.html, with the authentication scheme described at http://www.intertwingly.net/wiki/pie/DifferentlyAbledClients.

NOTE: the API, and particularly the authentication scheme, are still in flux.

USAGE

XML::Atom::Client->new(%param)

$api->use_soap([ 0 | 1 ])

XML::Atom::Client supports both the REST and SOAP-wrapper versions of the Atom API. By default, the REST version of the API will be used, but you can turn on the SOAP wrapper--for example, if you need to connect to a server that supports only the SOAP wrapper--by calling use_soap with a value of 1:

    $api->use_soap(1);

If called without arguments, returns the current value of the flag.

$api->username([ $username ])

If called with an argument, sets the username for login to $username.

Returns the current username that will be used when logging in to the Atom server.

$api->password([ $password ])

If called with an argument, sets the password for login to $password.

Returns the current password that will be used when logging in to the Atom server.

$api->createEntry($PostURI, $entry)

Creates a new entry.

$entry must be an XML::Atom::Entry object.

$api->getEntry($EditURI)

Retrieves the entry with the given URL $EditURI.

Returns an XML::Atom::Entry object.

$api->updateEntry($EditURI, $entry)

Updates the entry at URL $EditURI with the entry $entry, which must be an XML::Atom::Entry object.

Returns true on success, false otherwise.

$api->deleteEntry($EditURI)

Deletes the entry at URL $EditURI.

$api->getFeed($FeedURI)

Retrieves the feed at $FeedURI.

Returns an XML::Atom::Feed object representing the feed returned from the server.

ERROR HANDLING

Methods return undef on error, and the error message can be retrieved using the errstr method.

AUTHOR & COPYRIGHT

Please see the XML::Atom manpage for author, copyright, and license information.