Config::Extend::MySQL man page on Pidora

Man page or keyword search:  
man Server   31170 pages
apropos Keyword Search (all sections)
Output format
Pidora logo
[printable version]

Config::Extend::MySQL(User Contributed Perl DocumentatConfig::Extend::MySQL(3)

NAME
       Config::Extend::MySQL - Extend your favourite .INI parser module to
       read MySQL configuration file

VERSION
       Version 0.04

SYNOPSIS
	   use Config::Extend::MySQL;

	   # read MySQL config using Config::IniFiles
	   my $config = Config::Extend::MySQL->new({ from => $file, using => "Config::IniFiles" });

	   # read MySQL config using Config::Tiny
	   my $config = Config::Extend::MySQL->new({ from => $file, using => "Config::Tiny" });

	   # use the resulting object as you usually do
	   ...

DESCRIPTION
       This module extends other "Config::" modules so they can read MySQL
       configuration files. It works by slurping and preprocessing the files
       before letting your favourite "Config::" module parse the result.

       Currently supported modules are "Config::IniFiles",
       "Config::INI::Reader" and "Config::Tiny".

   Rationale
       This module was written out of a need of reading MySQL configuration
       files from random machines. At first, the author thought they were just
       classical ".INI" files, but soon discovered that they include
       additional features like "!include" and "!includedir", and bare boolean
       options, which without surprise make most common modules choke or die.

       Hence this module which simply slurps all the files, recursing though
       the "!include" and "!includedir" directives, inlining their content in
       memory, and transforms the bare boolean options into explicitly
       assigned options.

       As to why this module extends other modules instead of being on its
       own, it's because the author was too lazy to think of yet another API
       and preferred to use the modules he already know. And given he use
       several of them, depending on the context, it was just as easy to avoid
       being too thighly coupled to a particular module.

METHODS
   new()
       Create and return an object

       Usage

	   my $config = Config::Extend::MySQL->new({ from => $file, using => $module });

       Options

       ·   "from" - the path to the main MySQL configuration file

       ·   "using" - the module name to use as backend for parsing the
	   configuration file

       Examples

	   # read MySQL config using Config::IniFiles
	   my $config = Config::Extend::MySQL->new({ from => $file, using => "Config::IniFiles" });
	   # $config ISA Config::Extend::MySQL, ISA Config::IniFiles

	   # read MySQL config using Config::Tiny
	   my $config = Config::Extend::MySQL->new({ from => $file, using => "Config::Tiny" });
	   # $config ISA Config::Extend::MySQL, ISA Config::Tiny

DIAGNOSTICS
       "Arguments must be given as a hash reference"
	   (E) As the message says, the arguments must be given to the
	   function or method as a hash reference.

       "Backend module failed to parse '%s'"
	   (F) The backend module was unable to parse the given file.  See
	   "CAVEATS" for some hints.

       "Can't load module %s: %s"
	   (F) The backend module could not be loaded.

       "Can't read in-memory buffer: %s"
	   (F) This should not happen.

       "Empty argument '%s'"
	   (E) The given argument was empty, but a value is required.

       "File '%s' is empty"
	   (W) The file is empty.

       "Missing required argument '%s'"
	   (E) You forgot to supply a mandatory argument.

       "No such file '%s'""
	   (F) The given path does not point to an existing file.

CAVEATS
       The different supported modules don't parse ".INI" files exactly the
       same ways, and have different behaviours:

       ·   "Config::IniFiles" doesn't want to create

       ·   "Config::INI::Reader" by default doesn't allow the pound sign ("#")
	   for beginning comments.

       ·   when assigning the same option twice, "Config::Tiny" replaces the
	   old value with the new one, "Config::IniFiles" appends it with a
	   newline.

       And probably many more.

       Also note that in order to keep the code simple, this module wants Perl
       5.6 or newer. However, a patch to make it work on Perl 5.5.3 is
       included in the distribution (patches/patch-for-perl5.5.diff).

SEE ALSO
       Config::IniFiles

       Config::INI::Reader

       Config::Tiny

AUTHOR
       Sebastien Aperghis-Tramoni, "<sebastien at aperghis.net>"

BUGS
       Please report any bugs or feature requests to "bug-config-extend-mysql
       at rt.cpan.org", or through the web interface at
       http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Config-Extend-MySQL
       <http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Config-Extend-MySQL>.
       I will be notified, and then you'll automatically be notified of
       progress on your bug as I make changes.

SUPPORT
       You can find documentation for this module with the perldoc command.

	   perldoc Config::Extend::MySQL

       You can also look for information at:

       ·   RT: CPAN's request tracker

	   http://rt.cpan.org/NoAuth/Bugs.html?Dist=Config-Extend-MySQL
	   <http://rt.cpan.org/NoAuth/Bugs.html?Dist=Config-Extend-MySQL>

       ·   AnnoCPAN: Annotated CPAN documentation

	   http://annocpan.org/dist/Config-Extend-MySQL
	   <http://annocpan.org/dist/Config-Extend-MySQL>

       ·   CPAN Ratings

	   http://cpanratings.perl.org/d/Config-Extend-MySQL
	   <http://cpanratings.perl.org/d/Config-Extend-MySQL>

       ·   Search CPAN

	   http://search.cpan.org/dist/Config-Extend-MySQL
	   <http://search.cpan.org/dist/Config-Extend-MySQL>

COPYRIGHT & LICENSE
       Copyright 2008 Sebastien Aperghis-Tramoni, all rights reserved.

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

perl v5.14.1			  2011-07-19	      Config::Extend::MySQL(3)
[top]

List of man pages available for Pidora

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net