Eidolon::Driver::Log - Eidolon generic log driver.


Eidolon documentation Contained in the Eidolon distribution.

Index


Code Index:

NAME

Top

Eidolon::Driver::Log - Eidolon generic log driver.

SYNOPSIS

Top

Example log driver:

    package MyApp::Driver::Log;
    use base qw/Eidolon::Driver::Log/;

    sub notice
    {
        my ($self, $msg) = @_;
        throw DriverError::Log::Open("This is just an example!");
    }

    sub warning
    {
        my ($self, $msg) = @_;
        throw DriverError::Log::Open("This is just an example!");
    }

    sub error
    {
        my ($self, $msg) = @_;
        throw DriverError::Log::Open("This is just an example!");
    }

DESCRIPTION

Top

The Eidolon::Driver::Log is a generic log driver for Eidolon. It declares some functions that are common for all driver types and some abstract methods, that must be overloaded in ancestor classes. All log drivers should subclass this package.

METHODS

Top

new()

Class constructor.

open()

Opens log handle. Abstract method, should be overloaded by the ancestor class.

close()

Closes log handle. Abstract method, should be overloaded by the ancestor class.

notice($msg)

Log a notice message $msg. Abstract method, should be overloaded by the ancestor class.

warning($msg)

Log a warning message $msg. Abstract method, should be overloaded by the ancestor class.

error($msg)

Log an error message $msg. Abstract method, should be overloaded by the ancestor class.

SEE ALSO

Top

Eidolon, Eidolon::Driver::Log::Exceptions

LICENSE

Top

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

AUTHOR

Top

Anton Belousov, <abel@cpan.org>

COPYRIGHT

Top


Eidolon documentation Contained in the Eidolon distribution.

package Eidolon::Driver::Log;
# ==============================================================================
#
#   Eidolon
#   Copyright (c) 2009, Atma 7
#   ---
#   Eidolon/Driver/Log.pm - generic log driver
#   
# ==============================================================================

use base qw/Eidolon::Driver/;
use Eidolon::Driver::Log::Exceptions;
use warnings;
use strict;

our $VERSION = "0.02"; # 2009-05-14 05:21:50

# ------------------------------------------------------------------------------
# \% new()
# constructor
# ------------------------------------------------------------------------------
sub new
{
    my ($class, $self);

    $class = shift;
    $self  = {};

    bless $self, $class;

    return $self;
}

# ------------------------------------------------------------------------------
# open()
# open log
# ------------------------------------------------------------------------------
sub open
{
    throw CoreError::AbstractMethod;
}

# ------------------------------------------------------------------------------
# close()
# close log
# ------------------------------------------------------------------------------
sub close
{
    throw CoreError::AbstractMethod;
}

# ------------------------------------------------------------------------------
# notice($msg)
# log notice
# ------------------------------------------------------------------------------
sub notice
{
    throw CoreError::AbstractMethod;
}

# ------------------------------------------------------------------------------
# warning($msg)
# log warning
# ------------------------------------------------------------------------------
sub warning
{
    throw CoreError::AbstractMethod;
}

# ------------------------------------------------------------------------------
# error($msg)
# log error
# ------------------------------------------------------------------------------
sub error
{
    throw CoreError::AbstractMethod;
}

1;

__END__