Log::Log4perl::Config::BaseConfigurator man page on Fedora

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

Config::BaseConfiguratUser)Contributed Perl DocumenConfig::BaseConfigurator(3)

NAME
       Log::Log4perl::Config::BaseConfigurator - Configurator Base Class

SYNOPSIS
       This is a virtual base class, all configurators should be derived from
       it.

DESCRIPTION
   METHODS
       "new"
	   Constructor, typically called like

	       my $config_parser = SomeConfigParser->new(
		   file => $file,
	       );

	       my $data = $config_parser->parse();

	   Instead of "file", the derived class "SomeConfigParser" may define
	   any type of configuration input medium (e.g. "url =>
	   'http://foobar'").  It just has to make sure its "parse()" method
	   will later pull the input data from the medium specified.

	   The base class accepts a filename or a reference to an array of
	   text lines:

	   "file"
	       Specifies a file which the "parse()" method later parses.

	   "text"
	       Specifies a reference to an array of scalars, representing
	       configuration records (typically lines of a file). Also accepts
	       a simple scalar, which it splits at its newlines and transforms
	       it into an array:

		   my $config_parser = MyYAMLParser->new(
		       text => ['foo: bar',
				'baz: bam',
			       ],
		   );

		   my $data = $config_parser->parse();

	   If either "file" or "text" parameters have been specified in the
	   constructor call, a later call to the configurator's "text()"
	   method will return a reference to an array of configuration text
	   lines.  This will typically be used by the "parse()" method to
	   process the input.

       "parse"
	   Virtual method, needs to be defined by the derived class.

   Parser requirements
       ·   If the parser provides variable substitution functionality, it has
	   to implement it.

       ·   The parser's "parse()" method returns a reference to a hash of
	   hashes (HoH).  The top-most hash contains the top-level keywords
	   ("category", "appender") as keys, associated with values which are
	   references to more deeply nested hashes.

       ·   The "log4perl." prefix (e.g. as used in the PropertyConfigurator
	   class) is stripped, it's not part in the HoH structure.

       ·   Each Log4perl config value is indicated by the "value" key, as in

	       $data->{category}->{Bar}->{Twix}->{value} = "WARN, Logfile"

   EXAMPLES
       The following Log::Log4perl configuration:

	   log4perl.category.Bar.Twix	     = WARN, Screen
	   log4perl.appender.Screen	     = Log::Log4perl::Appender::File
	   log4perl.appender.Screen.filename = test.log
	   log4perl.appender.Screen.layout   = Log::Log4perl::Layout::SimpleLayout

       needs to be transformed by the parser's "parse()" method into this data
       structure:

	   { appender => {
	       Screen  => {
		 layout => {
		   value  => "Log::Log4perl::Layout::SimpleLayout" },
		   value  => "Log::Log4perl::Appender::Screen",
	       },
	     },
	     category => {
	       Bar => {
		 Twix => {
		   value => "WARN, Screen" }
	       } }
	   }

       For a full-fledged example, check out the sample YAML parser
       implementation in "eg/yamlparser". It uses a simple YAML syntax to
       specify the Log4perl configuration to illustrate the concept.

SEE ALSO
       Log::Log4perl::Config::PropertyConfigurator

       Log::Log4perl::Config::DOMConfigurator

       Log::Log4perl::Config::LDAPConfigurator (tbd!)

COPYRIGHT AND LICENSE
       Copyright 2002-2009 by Mike Schilli <m@perlmeister.com> and Kevin Goess
       <cpan@goess.org>.

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

perl v5.14.1			  2011-05-02	   Config::BaseConfigurator(3)
[top]

List of man pages available for Fedora

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