Name
    Class::Usul - A base class other packages

Version
    Describes Class::Usul version 0.1.$Revision: 205 $

Synopsis
       use Class::Usul::Moose;

       extends qw(Class::Usul);

Description
    These modules provide a set of base classes for Perl packages and
    applications

Configuration and Environment
       $self = Class::Usul->new( $attr );

    The $attr argument is a hash ref containing the object attributes.

    config
       The "config" attribute should be a hash ref that may define key/value
       pairs that provide filesystem paths for the temporary directory etc.

    debug
       Defaults to false

    encoding
       Decode input and encode output. Defaults to "UTF-8"

    Defined the application context log. Defaults to a Class::Null object

Subroutines/Methods
  dumper
       $self->dumper( $some_var );

    Use Data::Printer to dump arguments for development purposes

  loc
       $local_text = $self->loc( $key, \%options );

    Localizes the message. Calls "localize" in Class::Usul::L10N. Adds the
    constant "DEFAULT_L10N_DOMAINS" to the list of domain files that are
    searched

  _build__lock
    Defines the lock object. This instantiates on first use

    An IPC::SRLock object which is used to single thread the application
    where required. This is a singleton object. Provides defaults for and
    returns a new IPC::SRLock object. The keys of the
    "$self->config->lock_attributes" hash are:

    debug
       Debug status. Defaults to "$self->debug"

    log
       Logging object. Defaults to "$self->log"

    tempdir
       Directory used to store the lock file and lock table if the "fcntl"
       backend is used. Defaults to "$self->config->tempdir"

Diagnostics
    Setting the *debug* attribute to true causes messages to be logged at
    the debug level

Dependencies
    Class::Usul::Constants
    Class::Usul::Functions
    Class::Usul::L10N
    Class::Usul::Log
    Class::Usul::Moose
    IPC::SRLock

Incompatibilities
    There are no known incompatibilities in this module

Bugs and Limitations
    There are no known bugs in this module. Please report problems to the
    address below. Patches are welcome

Author
    Peter Flanigan, "<Support at RoxSoft.co.uk>"

Acknowledgements
    Larry Wall - For the Perl programming language

License and Copyright
    Copyright (c) 2012 Peter Flanigan. All rights reserved

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

    This program is distributed in the hope that it will be useful, but
    WITHOUT WARRANTY; without even the implied warranty of MERCHANTABILITY
    or FITNESS FOR A PARTICULAR PURPOSE

