NAME ArangoDB - ArangoDB client for Perl SYNOPSIS use ArangoDB; my $db = ArangoDB->new( host => 'localhost', port => 8529, keep_alive => 1, ); # Find or create collection my $foo = $db->('foo'); # Create new document $foo->save({ x => 42, y => { a => 1, b => 2, } }); $foo->save({ x => 1, y => { a => 1, b => 10, } }); $foo->name('new_name'); # rename the collection # Create hash index. $foo->ensure_hash_index([qw/x y/]); # Simple query my $cursor = $db->('new_name')->by_example({ b => 2 }); while( my $doc = $cursor->next ){ # do something } # AQL my $cursor2 = $db->query( 'FOR u IN users FILTER u.age > @age SORT u.name ASC RETURN u' )->bind( { age => 19 } )->execute(); my $docs = $cursor2->all; DESCRIPTION This module is an ArangoDB's REST API client for Perl. ArangoDB is a universal open-source database with a flexible data model for documents, graphs, and key-values. More information: SUPPORT API VERSION This supports ArangoDB API implementation 1.01. METHODS new($options) Constructor. $options is HASH reference.The attributes of $options are: host Hostname or IP address of ArangoDB server. Default: localhost port Port number of ArangoDB server. Default: 8529 timeout Seconds of HTTP connection timeout. Default: 300 keep_alive If it is true, use HTTP Keep-Alive connection. Default: false auth_type Authentication method. Supporting "Basic" only. auth_user User name for authentication auth_passwd Password for authentication proxy Proxy url for HTTP connection. inet_aton A callback function to customize name resolution. Takes two arguments: ($hostname, $timeout_in_seconds). See Furl::HTTP. collection($name) Get or create a collection based on $name. Returns instance of ArangoDB::Collection. If the Collection $name does not exist, Create it. There is shorthand method for get collection instance. my $collection = $db->('collection-name'); create($name) Create new collection. Returns instance of ArangoDB::Collection. find($name) Get a Collection based on $name. Returns instance of ArangoDB::Collection. If the collection does not exist, returns "undef". collections() Get all collections. Returns ARRAY reference. query($query) Get AQL statement handler. Returns instance of ArangoDB::Statement. my $sth = $db->query('FOR u IN users FILTER u.age > @age SORT u.name ASC RETURN u'); SEE ALSO ArangoDB websie DEVELOPMENT Repository AUTHOR Hideaki Ohno LICENSE This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.