unixdev.net


Switch to SpeakEasy.net DSL

The Modular Manual Browser

Home Page
Manual: (Debian-5.0)
Page:
Section:
Apropos / Subsearch:
optional field

Mail::Box::Locker::NFSUser)Contributed Perl DocumenMail::Box::Locker::NFS(3pm)



NAME
       Mail::Box::Locker::NFS - lock a folder with a separate file, NFS-safe

INHERITANCE
        Mail::Box::Locker::NFS
          is a Mail::Box::Locker
          is a Mail::Reporter

SYNOPSIS
        See Mail::Box::Locker

DESCRIPTION
       Like the "::DotLock" locker, but then in an NFS-safe fashion.  Over
       NFS, the creation of a file is not atomic.  The "::DotLock" locker
       depends on an atomic "open" system call, hence in not usable to lock a
       folder which accessed over NFS.  The "::NFS" locker is therefore more
       complicated (so therefore slower), but will work for NFS --and for
       local disks as well.

METHODS
       Constructors

       Mail::Box::Locker::NFS->new(OPTIONS)

        Option --Defined in     --Default
        expires  Mail::Box::Locker  1 hour
        file     Mail::Box::Locker  undef
        folder   Mail::Box::Locker  <required>
        log      Mail::Reporter   'WARNINGS'
        method   Mail::Box::Locker  'NFS'
        timeout  Mail::Box::Locker  10 seconds
        trace    Mail::Reporter   'WARNINGS'

           . expires => SECONDS

           . file => FILENAME

           . folder => FOLDER

           . log => LEVEL

           . method => STRING|CLASS|ARRAY

           . timeout => SECONDS|'NOTIMEOUT'

           . trace => LEVEL

       The Locker

       $obj->filename([FILENAME])

           See "The Locker" in Mail::Box::Locker

       $obj->folder

           See "The Locker" in Mail::Box::Locker

       $obj->name

           See "The Locker" in Mail::Box::Locker

       Locking

       $obj->hasLock

           See "Locking" in Mail::Box::Locker

       $obj->isLocked

           See "Locking" in Mail::Box::Locker

       $obj->lock

       $obj->unlock

           See "Locking" in Mail::Box::Locker

       Error handling

       $obj->AUTOLOAD

           See "Error handling" in Mail::Reporter

       $obj->addReport(OBJECT)

           See "Error handling" in Mail::Reporter

       $obj->defaultTrace([LEVEL]|[LOGLEVEL, TRACELEVEL]|[LEVEL, CALLBACK])

       Mail::Box::Locker::NFS->defaultTrace([LEVEL]|[LOGLEVEL,
       TRACELEVEL]|[LEVEL, CALLBACK])

           See "Error handling" in Mail::Reporter

       $obj->errors

           See "Error handling" in Mail::Reporter

       $obj->log([LEVEL [,STRINGS]])

       Mail::Box::Locker::NFS->log([LEVEL [,STRINGS]])

           See "Error handling" in Mail::Reporter

       $obj->logPriority(LEVEL)

       Mail::Box::Locker::NFS->logPriority(LEVEL)

           See "Error handling" in Mail::Reporter

       $obj->logSettings

           See "Error handling" in Mail::Reporter

       $obj->notImplemented

           See "Error handling" in Mail::Reporter

       $obj->report([LEVEL])

           See "Error handling" in Mail::Reporter

       $obj->reportAll([LEVEL])

           See "Error handling" in Mail::Reporter

       $obj->trace([LEVEL])

           See "Error handling" in Mail::Reporter

       $obj->warnings

           See "Error handling" in Mail::Reporter

       Cleanup

       $obj->DESTROY

           See "Cleanup" in Mail::Box::Locker

       $obj->inGlobalDestruction

           See "Cleanup" in Mail::Reporter

DIAGNOSTICS
       Warning: Folder $folder already locked over nfs

           Do not try to lock the folder when the application already has the
           lock: it will give you dead-locks.

       Error: Package $package does not implement $method.

           Fatal error: the specific package (or one of its superclasses) does
           not implement this method where it should. This message means that
           some other related classes do implement this method however the
           class at hand does not.  Probably you should investigate this and
           probably inform the author of the package.

       Warning: Removed expired lockfile $filename.

           A lock file was found which was older than the expiration period as
           specified with new(timeout).  The lock file was succesfully
           removed.

       Error: Unable to remove expired lockfile $lockfile: $!

           A lock file was found which was older than the expiration period as
           specified with the new(timeout) option.  It is impossible to remove
           that lock file, so we need to wait until it vanishes by some
           external cause.

SEE ALSO
       This module is part of Mail-Box distribution version 2.082, built on
       April 28, 2008. Website: http://perl.overmeer.net/mailbox/

LICENSE
       Copyrights 2001-2008 by Mark Overmeer. For other contributors see
       ChangeLog.

       This program is free software; you can redistribute it and/or modify it
       under the same terms as Perl itself.  See
       http://www.perl.com/perl/misc/Artistic.html



perl v5.10.0                      2008-04-28       Mail::Box::Locker::NFS(3pm)