The following module was proposed for inclusion in the Module List:

  modid:       Global::Notifications
  DSLIP:       adpfp
  description: Generic proxy for messages, such as logging
  userid:      SRIEHM (Stephen Riehm)
  chapterid:   3 (Development_Support)
  communities:
    irc.perl.org

  similar:
    Notification::Center, Log::Dispatch, Log::Log4Perl

  rationale:

    Notifications is a generic message dispatcher which requires
    (almost) no configuration and has no dependencies (other than
    Global::Notifications) - making it light enough for any module to
    use, something like:

    package myModule; use Notficications qw( error info progress ); #
    each name here generates a simple message dispatcher

    # now you can dispatch messages rather than printf's progress(
    'doing that thang...', steps => 5 ); info( 'fuddling the whodicky'
    ); error( 'something went wrong' );

    Essentially, individual modules should NOT know or care how or
    where their logging information etc. is configured. They should not
    have to create logging objects etc, but they should report what
    they're doing!

    The application would then do something like:

    # Set up any / favourite logging object(s!) my $real_log =
    Log::Dispatch->new(...); # Make sure they can get Notifications my
    $logger = Notifications::Observer::LogDispatch->new( log =>
    $real_log ); # or a simple handmade object # and now start logging
    $logger->start();

    and then any modules sending notifications would have their
    messages logged.

    The benefit being that modules need know nothing, leaving full
    control to the application.

  enteredby:   SRIEHM (Stephen Riehm)
  enteredon:   Sun Feb 13 10:28:35 2011 GMT

The resulting entry would be:

Global::
::Notifications   adpfp Generic proxy for messages, such as logging  SRIEHM


Thanks for registering,
-- 
The PAUSE

PS: The following links are only valid for module list maintainers:

Registration form with editing capabilities:
  
https://pause.perl.org/pause/authenquery?ACTION=add_mod&USERID=b6400000_5772c1f51ae14fa3&SUBMIT_pause99_add_mod_preview=1
Immediate (one click) registration:
  
https://pause.perl.org/pause/authenquery?ACTION=add_mod&USERID=b6400000_5772c1f51ae14fa3&SUBMIT_pause99_add_mod_insertit=1
Peek at the current permissions:
  
https://pause.perl.org/pause/authenquery?pause99_peek_perms_by=me&pause99_peek_perms_query=Global%3A%3ANotifications

Reply via email to