=encoding utf8
=head1 NAME
Mail::Box::Locker::DotLock -
lock
a folder
with
a separate file
=head1 INHERITANCE
Mail::Box::Locker::DotLock
is a Mail::Box::Locker
is a Mail::Reporter
=head1 SYNOPSIS
See Mail::Box::Locker
=head1 DESCRIPTION
The C<::DotLock> object
lock
the folder by creating a file
with
the
same name as the folder, extended by C<.
lock
>.
Extends L<
"DESCRIPTION"
in Mail::Box::Locker|Mail::Box::Locker/
"DESCRIPTION"
>.
=head1 METHODS
Extends L<
"METHODS"
in Mail::Box::Locker|Mail::Box::Locker/
"METHODS"
>.
=head2 Constructors
Extends L<
"Constructors"
in Mail::Box::Locker|Mail::Box::Locker/
"Constructors"
>.
=over 4
=item Mail::Box::Locker::DotLock-E<gt>B<new>(
%options
)
Name of the file to
lock
. By
default
, the folder's name is extended
with
C<.
lock
>.
-Option --Defined in --Default
dotlock_file <
undef
>
expires Mail::Box::Locker 1 hour
file Mail::Box::Locker <folderfile>.
lock
folder Mail::Box::Locker <
undef
>
log
Mail::Reporter
'WARNINGS'
method Mail::Box::Locker
'DOTLOCK'
timeout Mail::Box::Locker 10
trace Mail::Reporter
'WARNINGS'
=over 2
=item
dotlock_file
=> FILENAME
Alternative name
for
C<file>, especially useful to confusion
when
the multi locker is used.
=item
expires
=> SECONDS
=item
file
=> FILENAME
=item
folder
=> FOLDER
=item
log
=> LEVEL
=item
method
=> STRING|CLASS|ARRAY
=item
timeout
=> SECONDS|
'NOTIMEOUT'
=item
trace
=> LEVEL
=back
=back
=head2 Attributes
Extends L<
"Attributes"
in Mail::Box::Locker|Mail::Box::Locker/
"Attributes"
>.
=over 4
=item
$obj
-E<gt>B<expires>( [SECONDS] )
Inherited, see L<Mail::Box::Locker/
"Attributes"
>
=item
$obj
-E<gt>B<timeout>( [SECONDS] )
Inherited, see L<Mail::Box::Locker/
"Attributes"
>
=back
=head2 The Locker
Extends L<
"The Locker"
in Mail::Box::Locker|Mail::Box::Locker/
"The Locker"
>.
=over 4
=item
$obj
-E<gt>B<filename>( [
$filename
] )
Inherited, see L<Mail::Box::Locker/
"The Locker"
>
=item
$obj
-E<gt>B<folder>( [
$folder
] )
Inherited, see L<Mail::Box::Locker/
"The Locker"
>
=item
$obj
-E<gt>B<name>()
Inherited, see L<Mail::Box::Locker/
"The Locker"
>
=back
=head2 Locking
Extends L<
"Locking"
in Mail::Box::Locker|Mail::Box::Locker/
"Locking"
>.
=over 4
=item
$obj
-E<gt>B<hasLock>()
Inherited, see L<Mail::Box::Locker/
"Locking"
>
=item
$obj
-E<gt>B<isLocked>()
Inherited, see L<Mail::Box::Locker/
"Locking"
>
=item
$obj
-E<gt>B<
lock
>()
=item
$obj
-E<gt>B<unlock>()
=back
=head2 Error handling
Extends L<
"Error handling"
in Mail::Box::Locker|Mail::Box::Locker/
"Error handling"
>.
=over 4
=item
$obj
-E<gt>B<AUTOLOAD>()
Inherited, see L<Mail::Reporter/
"Error handling"
>
=item
$obj
-E<gt>B<addReport>(
$object
)
Inherited, see L<Mail::Reporter/
"Error handling"
>
=item
$obj
-E<gt>B<defaultTrace>( [
$level
]|[
$loglevel
,
$tracelevel
]|[
$level
,
$callback
] )
=item Mail::Box::Locker::DotLock-E<gt>B<defaultTrace>( [
$level
]|[
$loglevel
,
$tracelevel
]|[
$level
,
$callback
] )
Inherited, see L<Mail::Reporter/
"Error handling"
>
=item
$obj
-E<gt>B<errors>()
Inherited, see L<Mail::Reporter/
"Error handling"
>
=item
$obj
-E<gt>B<
log
>( [
$level
, [
$strings
]] )
=item Mail::Box::Locker::DotLock-E<gt>B<
log
>( [
$level
, [
$strings
]] )
Inherited, see L<Mail::Reporter/
"Error handling"
>
=item
$obj
-E<gt>B<logPriority>(
$level
)
=item Mail::Box::Locker::DotLock-E<gt>B<logPriority>(
$level
)
Inherited, see L<Mail::Reporter/
"Error handling"
>
=item
$obj
-E<gt>B<logSettings>()
Inherited, see L<Mail::Reporter/
"Error handling"
>
=item
$obj
-E<gt>B<notImplemented>()
Inherited, see L<Mail::Reporter/
"Error handling"
>
=item
$obj
-E<gt>B<report>( [
$level
] )
Inherited, see L<Mail::Reporter/
"Error handling"
>
=item
$obj
-E<gt>B<reportAll>( [
$level
] )
Inherited, see L<Mail::Reporter/
"Error handling"
>
=item
$obj
-E<gt>B<trace>( [
$level
] )
Inherited, see L<Mail::Reporter/
"Error handling"
>
=item
$obj
-E<gt>B<warnings>()
Inherited, see L<Mail::Reporter/
"Error handling"
>
=back
=head2 Cleanup
Extends L<
"Cleanup"
in Mail::Box::Locker|Mail::Box::Locker/
"Cleanup"
>.
=over 4
=item
$obj
-E<gt>B<DESTROY>()
Inherited, see L<Mail::Box::Locker/
"Cleanup"
>
=back
=head1 DIAGNOSTICS
=over 4
=item Warning: Couldn't remove lockfile
$lock
: $!
=item Error: Failed to remove expired lockfile
$lockfile
: $!
=item Warning: Folder already locked
with
file
$lockfile
=item 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
.
=item Warning: Removed expired lockfile
$lockfile
=back
=head1 SEE ALSO
This module is part of Mail-Box distribution version 3.010,
=head1 LICENSE
Copyrights 2001-2023 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.