diff options
Diffstat (limited to 'lib/HomePanel/AsyncUA.pm')
-rw-r--r-- | lib/HomePanel/AsyncUA.pm | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/lib/HomePanel/AsyncUA.pm b/lib/HomePanel/AsyncUA.pm new file mode 100644 index 0000000..b12e8d9 --- /dev/null +++ b/lib/HomePanel/AsyncUA.pm @@ -0,0 +1,31 @@ +package HomePanel::AsyncUA; +use Moo; +use namespace::autoclean; +use Net::Async::HTTP; + +has loop => ( + is => 'ro', + required => 1, +); + +has agent => ( + is => 'lazy', +); +sub _build_agent { + my ($self) = @_; + + my $agent = Net::Async::HTTP->new( + max_connections_per_host => 1, + stall_timeout => 10, + ); + $self->loop->add($agent); + return $agent; +} + +sub get { + my ($self,$uri) = @_; + + return $self->agent->GET($uri)->get +} + +1; |