NAME

Metabase::Client::Simple - a client that submits to Metabase servers

SYNOPSIS

use Metabase::Client::Simple;
use Metabase::User::Profile;
use Metabase::User::Secret;

my $profile = Metabase::User::Profile->load('user.profile.json');
my $secret  = Metabase::User::Secret ->load('user.secret.json' );

my $client = Metabase::Client::Simple->new({
  profile => $profile,
  secret  => $secret,
  uri     => 'http://metabase.example.com/',
});

my $fact = generate_metabase_fact;

$client->submit_fact($fact);

DESCRIPTION

Metabase::Client::Simple provides is extremely simple, lightweight library for submitting facts to a Metabase web server.

METHODS

new

my $client = Metabase::Client::Simple->new(\%arg)

This is the object constructor.

Valid arguments are:

profile - a Metabase::User::Profile object
secret  - a Metabase::User::Secret object
uri     - the root URI for the metabase server

submit_fact

$client->submit_fact($fact);

This method will submit a Metabase::Fact object to the client's server. On success, it will return a true value. On failure, it will raise an exception.

guid_exists

$client->guid_exists('2f8519c6-24cf-11df-90b1-0018f34ec37c');

This method will check whether the given GUID is found on the metabase server. The GUID must be in lower-case, string form. It will return true or false. Note that a server error will also result in a false value.

register

$client->register;

This method will submit the user credentials to the metabase server. It will be called automatically by submit_fact if necessary. You generally won't need to use it. On success, it will return a true value. On failure, it will raise an exception.

LICENSE

Portions Copyright (C) 2008 by Ricardo SIGNES Portions Copyright (C) 2009-2010 by David Golden

This is free software, available under the same terms as perl itself.