NAME
AnyEvent::CouchDB::Stream - Watch changes from a CouchDB database.
SYNOPSIS
use AnyEvent::CouchDB::Stream;
my $listener = AnyEvent::CouchDB::Stream->new(
    url       => 'http://localhost:5984',
    database  => 'test',
    on_change => sub {
        my $change = shift;
        warn "document $change->{_id} updated";
    },
    on_keepalive => sub {
        warn "ping\n";
    },
    timeout => 1,
);
DESCRIPTION
AnyEvent::CouchDB::Stream is an interface to the CouchDB changes database API.
OPTIONS
- url
 - 
URL of the CouchDB host.
 - database
 - 
Name of the CouchDB database.
 - timeout
 - 
Number of seconds to wait before timing out. On timeout, The on_error code ref will be called with an argument of 'timeout'.
 - filter
 - 
Name of the filter to execute on this notifier.
 - since
 - 
Number to fetch changes from. Defaults to 1.
 - on_change
 - 
A code ref to execute when a change notification is received. It is mandatory.
 - on_keepalive
 - 
A code ref to execute when keepalive is called.
 - on_error
 - 
A code ref to execute on error. Code ref is passed the error message.
 - on_eof
 - 
A code ref to execute on eof
 - headers
 - 
An optional hashref of headers that should be used for the HTTP request. Defaults to
{ 'Content-Type' ='application/json' } >. - heartbeat
 - 
The interval in milliseconds between newlines sent from the server to ensure that an open connection is still being maintained
 
AUTHOR
franck cuny <franck.cuny@linkfluence.net>
SEE ALSO
AnyEvent::HTTP, AnyEvent::CouchDB, AnyEvent::Twitter::Stream, http://books.couchdb.org/relax/reference/change-notifications
LICENSE
Copyright 2010 by Linkfluence
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.