NAME
AnyEvent::Groonga - Groonga client for AnyEvent
SYNOPSIS
use AnyEvent::Groonga;
my $groonga = AnyEvent::Groonga->new(
protocol => 'http',
host => 'localhost,
port => '10041',
);
# blocking interface
my $result = $groonga->call(select => {
table => "Site",
query => 'title:@test',
output_columns => [qw(_id _score title)],
sortby => '_score',
})->recv;
# result is AnyEvent::Groonga::Result::Select object
print $result->dump;
# non-blocking interface
$groonga->call(select => {
table => "Site",
query => 'title:@test',
output_columns => [qw(_id _score title)],
sortby => '_score',
})->cb(
sub {
my $result = $_[0]->recv;
}
);
print Dumper $result->items;
DESCRIPTION
This is groonga client module for AnyEvent applications.
groonga is an open-source fulltext search engine and column store.
SEE ALSO
METHOD
new (%options)
Create groonga client object.
my $groonga = AnyEvent::Groonga->new(
protocol => 'http',
host => 'localhost,
port => '10041',
);
Available options are:
- protocol => 'http|gqtp|local_db'
-
groonga-server speaks http and gqtp protocol (groonga original protocol).
And it works for local database file, too.
- host
- port
- groonga_path
-
It is necessary if you set the protocol as gqtp or local_db.
- database_path
-
It is necessary if you set the protocol as local_db.
call ($command => \%args)
Call groonga command named $command with %args parameters.
It returns AnyEvent condvar object for response.
# blocking interface
my $result = $groonga->call(select => {
table => "Site",
query => 'title:@test',
output_columns => [qw(_id _score title)],
sortby => '_score',
})->recv;
# result is AnyEvent::Groonga::Result::Select object
print $result->dump;
# non-blocking interface
$groonga->call(select => {
table => "Site",
query => 'title:@test',
output_columns => [qw(_id _score title)],
sortby => '_score',
})->cb(
sub {
my $result = $_[0]->recv;
}
);
Available commands are:
- cache_limit
- check
- clearlock
- column_create
- column_list
- column_remove
- define_selector
- defrag
- delete
- dump
- load
- log_level
- log_put
- log_reopen
- quit
- select
- shutdown
- status
- suggest
- table_create
- table_list
- table_remove
- view_add
-
See Groonga's official site. http://groonga.org/
AUTHOR
Takeshi Miki <miki@cpan.org>
LICENSE
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.