NAME POE::Component::Metabase::Client::Submit - a POE client that submits to Metabase servers VERSION version 0.14 SYNOPSIS use strict; use warnings; use POE qw[Component::Metabase::Client::Submit]; POE::Session->create( package_states => [ 'main' => [qw(_start _status)], ], ); sub _start { POE::Component::Metabase::Client::Submit->submit( event => '_status', uri => 'https://foo.bar.com/metabase/', fact => $metabase_fact_object, profile => $metabase_user_profile_object, secret => $metabase_user_secret_object, ); return; } sub _status { my $data = $_[ARG0]; print "Success!\n" if $data->{success}; print $data->{error}, "\n" if $data->{error}; return; } DESCRIPTION POE::Component::Metabase::Client::Submit provides a POE mechanism for submitting facts to a Metabase web server. CONSTRUCTOR submit POE::Component::Metabase::Client::Submit->spawn( %args ); Constructs a POE session that will manage submitting a Metabase fact to a Metabase web server. Takes a number of mandatory arguments: 'profile', a Metabase::User::Profile object 'secret', a Metabase::User::Secret object 'fact', a Metabase::Fact object 'event', an event handler in the calling session to invoke on completion 'uri', the uri of a Metabase server to submit to. And some optional arguments: 'session', a session alias, reference or ID to send 'event' to instead of the calling session 'http_alias', the alias or ID of an existing POE::Component::Client::HTTP session to use. 'context', anything that can be stored in a scalar that is meaningful to you. 'resolver', a reference to a POE::Component::Resolver object to use (ignored if http_alias is used). 'compress', a compressor to use - defaults to none ( available compressors: gzip, deflate, x-bzip2, none ) OUTPUT EVENT An event will be sent to either the calling session or the session specified with session during submit. ARG0 of the event will be a hashref with the following keys: success Indicates that the submission was successful. error If there was an error this will contain a string indicating the error that occurred. context If you specified context in submit, whatever you passed will be here. <content> This will contain the content of any HTTP responses whether success or failure. SEE ALSO Metabase POE AUTHORS * Chris Williams <chris@bingosnet.co.uk> * Ricardo SIGNES * David A. Golden COPYRIGHT AND LICENSE This software is copyright (c) 2017 by Chris Williams. This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.