Add a few missing ABSTRACTs
[dbsrgits/DBIx-Class-DeploymentHandler.git] / lib / DBIx / Class / DeploymentHandler / LogRouter.pm
CommitLineData
374a05c8 1package DBIx::Class::DeploymentHandler::LogRouter;
2use Moo;
3use DBIx::Class::DeploymentHandler::Logger;
4
5with 'Log::Contextual::Role::Router';
6
7has _logger => (
8 is => 'lazy',
9 builder => sub { DBIx::Class::DeploymentHandler::Logger->new },
10);
11
12sub handle_log_request {
13 my ($self, %message_info) = @_;
14
15 my $log_code_block = $message_info{message_sub};
16 my $args = $message_info{message_args};
17 my $log_level_name = $message_info{message_level};
18 my $logger = $self->_logger;
19 my $is_active = $logger->can("is_${log_level_name}");
20
21 return unless defined $is_active && $logger->$is_active;
22
23 my $log_message = $log_code_block->(@$args);
24
25 $self->_logger->$log_level_name($log_message);
26}
27
28sub before_import {}
29sub after_import {}
30
311;