Why not adopt me?
NAME
Net::FluidDB - A Perl interface to FluidDB
SYNOPSIS
use Net::FluidDB;
use Net::FluidDB::Object;
use Net::FluidDB::Tag;
use Net::FluidDB::Namespace;
# predefined FluidDB client for playing around, points
# to the sandbox with user test/test
$fdb = Net::FluidDB->new_for_testing;
$fdb = Net::FluidDB->new_for_testing(trace_http => 1);
# FluidDB client pointing to production
$fdb = Net::FluidDB->new(user => 'user', password => 'password');
# create object, with optional about
$object = Net::FluidDB::Object->new(
fdb => $fdb,
about => $unique_about
);
$object->create;
$object->id; # returns the object's ID in FluidDB
# get object by ID, optionally fetching about
$object = Net::FluidDB::Object->get($fdb, $object_id, about => 1);
# create tags
$tag = Net::FluidDB::Tag->new(
fdb => $fdb,
description => $description,
indexed => 1,
path => $path
);
$tag->create;
$tag->namespace; # lazy loaded
# get tag by path, optionally fetching descrition
$tag = Net::FluidDB::Tag->get($fdb, $tag->path, description => 1);
# tag objects using an existing tag path
$object->tag("fxn/rating", 10);
# tag objects using an existing tag object
$object->tag($tag, "foo");
# get a tag's value on an object by tag path
$object->tag("fxn/rating"); # => 10
# get a tag's value on an object by tag object
$object->tag($tag); # => "foo"
# delete a tag
$tag->delete;
# create a namespace by path
$ns = Net::FluidDB::Namespace->new(
fdb => $fdb,
path => $path,
description => $description
);
$ns->create;
$ns->parent # lazy loaded
# delete a namespace
$ns->delete;
DESCRIPTION
Net::FluidDB provides an interface to the FluidDB API.
FluidDB's tagline is "a database with the heart of a wiki". It was launched just a few days ago. Check these pages to know about FluidDB:
FluidDB Documentation: http://doc.fluidinfo.com/fluidDB/
FluidDB Essence blog entries: http://blogs.fluidinfo.com/fluidDB/category/essence/
The design goal of Net::FluidDB is to offer a complete OO model for FluidDB with a convenience layer on top of it.
ALPHA VERSION & WORK IN PROGRESS
Net::FluidDB is in a very alpha stage:
The FluidDB API is partially implemented.
The overall interface is taking shape. I consider the basis to be there, but while in alpha the API may change.
In particular, since FluidDB is new usage patterns have yet to arise. They may influence the design of the interface.
As of this version calls to FluidDB return a status flag. If there was any failure the module only prints the response to STDERR and returns false.
The module is underdocumented, to use a generous adjective :-).
AUTHOR
Xavier Noria (FXN), <fxn@cpan.org>
COPYRIGHT AND LICENSE
Copyright (C) 2009 Xavier Noria
This program is free software; you can redistribute it and/or modify it under the terms of either: the GNU General Public License as published by the Free Software Foundation; or the Artistic License.
See http://dev.perl.org/licenses/ for more information.
1 POD Error
The following errors were encountered while parsing the POD:
- Around line 202:
Nested L<> are illegal. Pretending inner one is X<...> so can continue looking for other errors.
Unterminated L<...> sequence