1Mail::Box::Locker::MultUis(e3r)Contributed Perl DocumentMaatiilo:n:Box::Locker::Multi(3)
2
3
4

NAME

6       Mail::Box::Locker::Multi - lock a folder in all ways which work
7

INHERITANCE

9        Mail::Box::Locker::Multi
10          is a Mail::Box::Locker
11          is a Mail::Reporter
12

SYNOPSIS

14        See Mail::Box::Locker
15

DESCRIPTION

17       The "::Multi" locker locks a folder in each way it can.  This way, the
18       chance is highest that any other program will leave the folder alone
19       during our access to it.
20
21       NFS-lock and Flock are tried.  More may be added when the ways to lock
22       are extended.  DotLock overlaps with NFS-lock, but NFS-lock is safer,
23       so that version is preferred.
24
25       Extends "DESCRIPTION" in Mail::Box::Locker.
26

METHODS

28       Extends "METHODS" in Mail::Box::Locker.
29
30   Constructors
31       Extends "Constructors" in Mail::Box::Locker.
32
33       Mail::Box::Locker::Multi->new(%options)
34           You may also pass all %options understood by the initiated lockers
35           used by the multi locker.
36
37            -Option --Defined in       --Default
38             expires  Mail::Box::Locker  1 hour
39             file     Mail::Box::Locker  undef
40             folder   Mail::Box::Locker  <undef>
41             log      Mail::Reporter     'WARNINGS'
42             method   Mail::Box::Locker  'MULTI'
43             timeout  Mail::Box::Locker  10
44             trace    Mail::Reporter     'WARNINGS'
45             use                         <all possible>
46
47           expires => SECONDS
48           file => FILENAME
49           folder => FOLDER
50           log => LEVEL
51           method => STRING|CLASS|ARRAY
52           timeout => SECONDS|'NOTIMEOUT'
53           trace => LEVEL
54           use => ARRAY-of-(NAMES|LOCKER)
55             Array of locker type NAMES or LOCKER objects to be used to lock
56             one folder.  The type NAMES are converted into objects.  When you
57             create your own LOCKER objects, be sure to set the timeout very
58             short (preferably to 1).
59
60             Some locking types are not available on some platforms, so they
61             will not be excluded from the default list (NFS POSIX Flock).
62
63           example: using a subset of multi-lockers
64
65            my $locker = Mail::Box::Locker::Multi->new(use => ['DOTLOCK','FLOCK']);
66
67   Attributes
68       Extends "Attributes" in Mail::Box::Locker.
69
70       $obj->expires( [SECONDS] )
71           Inherited, see "Attributes" in Mail::Box::Locker
72
73       $obj->timeout( [SECONDS] )
74           Inherited, see "Attributes" in Mail::Box::Locker
75
76   The Locker
77       Extends "The Locker" in Mail::Box::Locker.
78
79       $obj->filename( [$filename] )
80           Inherited, see "The Locker" in Mail::Box::Locker
81
82       $obj->folder( [$folder] )
83           Inherited, see "The Locker" in Mail::Box::Locker
84
85       $obj->lockers()
86           Returns a list with all locker objects used by this object.
87
88       $obj->name()
89           Inherited, see "The Locker" in Mail::Box::Locker
90
91   Locking
92       Extends "Locking" in Mail::Box::Locker.
93
94       $obj->hasLock()
95           Inherited, see "Locking" in Mail::Box::Locker
96
97       $obj->isLocked()
98           Inherited, see "Locking" in Mail::Box::Locker
99
100       $obj->lock($folder)
101           Inherited, see "Locking" in Mail::Box::Locker
102
103       $obj->unlock()
104           Inherited, see "Locking" in Mail::Box::Locker
105
106   Error handling
107       Extends "Error handling" in Mail::Box::Locker.
108
109       $obj->AUTOLOAD()
110           Inherited, see "Error handling" in Mail::Reporter
111
112       $obj->addReport($object)
113           Inherited, see "Error handling" in Mail::Reporter
114
115       $obj->defaultTrace( [$level]|[$loglevel, $tracelevel]|[$level,
116       $callback] )
117       Mail::Box::Locker::Multi->defaultTrace( [$level]|[$loglevel,
118       $tracelevel]|[$level, $callback] )
119           Inherited, see "Error handling" in Mail::Reporter
120
121       $obj->errors()
122           Inherited, see "Error handling" in Mail::Reporter
123
124       $obj->log( [$level, [$strings]] )
125       Mail::Box::Locker::Multi->log( [$level, [$strings]] )
126           Inherited, see "Error handling" in Mail::Reporter
127
128       $obj->logPriority($level)
129       Mail::Box::Locker::Multi->logPriority($level)
130           Inherited, see "Error handling" in Mail::Reporter
131
132       $obj->logSettings()
133           Inherited, see "Error handling" in Mail::Reporter
134
135       $obj->notImplemented()
136           Inherited, see "Error handling" in Mail::Reporter
137
138       $obj->report( [$level] )
139           Inherited, see "Error handling" in Mail::Reporter
140
141       $obj->reportAll( [$level] )
142           Inherited, see "Error handling" in Mail::Reporter
143
144       $obj->trace( [$level] )
145           Inherited, see "Error handling" in Mail::Reporter
146
147       $obj->warnings()
148           Inherited, see "Error handling" in Mail::Reporter
149
150   Cleanup
151       Extends "Cleanup" in Mail::Box::Locker.
152
153       $obj->DESTROY()
154           Inherited, see "Cleanup" in Mail::Box::Locker
155

DIAGNOSTICS

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

SEE ALSO

165       This module is part of Mail-Box distribution version 3.010, built on
166       July 18, 2023. Website: http://perl.overmeer.net/CPAN/
167

LICENSE

169       Copyrights 2001-2023 by [Mark Overmeer]. For other contributors see
170       ChangeLog.
171
172       This program is free software; you can redistribute it and/or modify it
173       under the same terms as Perl itself.  See http://dev.perl.org/licenses/
174
175
176
177perl v5.38.0                      2023-07-24       Mail::Box::Locker::Multi(3)
Impressum