Log::Log4perl::Appender::TestArrayBuffer - Subclass of Appender::TestBuffer


Log-Log4perl documentation Contained in the Log-Log4perl distribution.

Index


Code Index:

NAME

Top

Log::Log4perl::Appender::TestArrayBuffer - Subclass of Appender::TestBuffer

SYNOPSIS

Top

  use Log::Log4perl::Appender::TestArrayBuffer;

  my $appender = Log::Log4perl::Appender::TestArrayBuffer->new( 
      name      => 'buffer',
  );

      # Append to the buffer
  $appender->log( 
      level =  > 'alert', 
      message => ['first', 'second', 'third'],
  );

      # Retrieve the result
  my $result = $appender->buffer();

      # Reset the buffer to the empty string
  $appender->reset();

DESCRIPTION

Top

This class is a subclass of Log::Log4perl::Appender::TestBuffer and just provides message array refs as an additional feature.

Just like Log::Log4perl::Appender::TestBuffer, Log::Log4perl::Appender::TestArrayBuffer is used for internal Log::Log4perl testing only.

COPYRIGHT AND LICENSE

Top


Log-Log4perl documentation Contained in the Log-Log4perl distribution.

##################################################
package Log::Log4perl::Appender::TestArrayBuffer;
##################################################
# Like Log::Log4perl::Appender::TestBuffer, just with 
# array capability.
# For testing only.
##################################################

use base qw( Log::Log4perl::Appender::TestBuffer );

##################################################
sub log {   
##################################################
    my $self = shift;
    my %params = @_;

    $self->{buffer} .= "[$params{level}]: " if $LOG_PRIORITY;

    if(ref($params{message}) eq "ARRAY") {
        $self->{buffer} .= "[" . join(',', @{$params{message}}) . "]";
    } else {
        $self->{buffer} .= $params{message};
    }
}

1;