Cikl

 view release on metacpan or  search on metacpan

lib/Cikl/Smrt/HandlerRole.pm  view on Meta::CPAN

package Cikl::Smrt::HandlerRole;

use strict;
use warnings;
use Cikl::Client::Factory;
use Cikl::Smrt::ClientBroker;
use Cikl::Smrt::Decoders::Null;
use Cikl::EventBuilder;
use Cikl::Smrt::Broker;
use Config::Simple;
use Try::Tiny;
use AnyEvent;
use Coro;
use DateTime;

use Mouse::Role;
use Cikl::Logging;
use Net::SSLeay;
Net::SSLeay::SSLeay_add_ssl_algorithms();

use namespace::autoclean;

my $logger = get_logger();

requires 'name';
requires '_default_event_data';

has 'global_config' => (
  is => 'ro',
  isa => 'Config::Simple',
  required => 1
);

has 'event_builder' => (
  is => 'ro',
  isa => 'Cikl::EventBuilder',
  lazy => 1,
  builder => "_event_builder"
);

has 'default_event_data' => (
  is => 'ro',
  isa => 'HashRef',
  lazy => 1,
  builder => "_default_event_data"
);

has 'refresh' => (
  is => 'ro',
  isa => 'Bool',
  lazy => 1,
  builder => "_refresh"
);

has 'not_before' => (
  is => 'ro', 
  isa => 'DateTime',
  required => 1,
  default => sub {return DateTime->now()->subtract(days => 3);}
);

has 'proxy' => (
  is => 'ro',
  required => 0
);

has 'fetcher' => (
  is => 'ro',
  isa => 'Cikl::Smrt::Fetcher',
  lazy => 1,
  builder => "_fetcher"



( run in 1.861 second using v1.01-cache-2.11-cpan-d8267643d1d )