Beefy Boxes and Bandwidth Generously Provided by pair Networks
laziness, impatience, and hubris

Re: Singleton Log Object

by blue_cowdawg (Monsignor)
on Jan 08, 2013 at 20:08 UTC ( #1012330=note: print w/replies, xml ) Need Help??

in reply to Singleton Log Object

      sub new{ my ($class,$logpath) = @_; unless ( ref $singleton eq 'Log' ) { $singleton = {}; bless( $singleton, $class ); $singleton->create_path($logpath); } return $singleton; }

There's a couple of things I'd change:

package Log; my $instance = undef; sub new { shift; unless ($instance){ $instance={}; bless $instance,"Log"; } return $instasnce; }
You would not need the get_log_instance sub since
| handwaving here my $log=new Log(); |
would either return the instance in play already or create a new one it there wasn't one in play. Creating a singleton is something I do all the time. Especially for my logging module. :-)

Peter L. Berghold -- Unix Professional
Peter -at- Berghold -dot- Net; AOL IM redcowdawg Yahoo IM: blue_cowdawg

Replies are listed 'Best First'.
Re^2: Singleton Log Object
by Anonymous Monk on Jan 08, 2013 at 20:17 UTC
    Great to get some feed back so promptly! You're the best, thanks so much.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1012330]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others avoiding work at the Monastery: (4)
As of 2016-10-23 23:16 GMT
Find Nodes?
    Voting Booth?
    How many different varieties (color, size, etc) of socks do you have in your sock drawer?

    Results (302 votes). Check out past polls.