Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
Mail::Server::IMAP4::UUser3Contributed Perl DocumeMail::Server::IMAP4::User(3)

NAME
       Mail::Server::IMAP4::User - manage the folders of one user

INHERITANCE
	Mail::Server::IMAP4::User
	  is a Mail::Box::Manage::User
	  is a Mail::Box::Manager
	  is a Mail::Reporter

SYNOPSIS
	my $mgr	= Mail::Server::IMAP4::User->new(...);

DESCRIPTION
       This class adds IMAP protocol features to the normal
       Mail::Box::Manager.

       Extends "DESCRIPTION" in	Mail::Box::Manage::User.

METHODS
       Extends "METHODS" in Mail::Box::Manage::User.

   Constructors
       Extends "Constructors" in Mail::Box::Manage::User.

       Mail::Server::IMAP4::User->new(%options)
	    -Option		--Defined in		 --Default
	     autodetect		  Mail::Box::Manager	   undef
	     collection_type	  Mail::Box::Manage::User  Mail::Box::Collection
	     default_folder_type  Mail::Box::Manager	   'mbox'
	     delimiter		  Mail::Box::Manage::User  "/"
	     folder_id_type	  Mail::Box::Manage::User  Mail::Box::Identity
	     folder_types	  Mail::Box::Manager	   <all	standard types>
	     folderdir		  Mail::Box::Manager	   [ '.' ]
	     folderdirs		  Mail::Box::Manager	   <synonym for	C<folderdir>>
	     identity		  Mail::Box::Manage::User  <required>
	     inbox		  Mail::Box::Manage::User  undef
	     index_filename				   $folderdir/index
	     log		  Mail::Reporter	   'WARNINGS'
	     topfolder_name	  Mail::Box::Manage::User  '='
	     trace		  Mail::Reporter	   'WARNINGS'

	   autodetect => TYPE|ARRAY-OF-TYPES
	   collection_type => CLASS
	   default_folder_type => NAME|CLASS
	   delimiter =>	STRING
	   folder_id_type => CLASS|OBJECT
	   folder_types	=> NEW-TYPE | ARRAY-OF-NEW-TYPES
	   folderdir =>	DIRECTORY
	   folderdirs => [DIRECTORIES]
	   identity => OBJECT
	   inbox => NAME
	   index_filename => FILENAME
	   log => LEVEL
	   topfolder_name => STRING
	   trace => LEVEL

   Attributes
       Extends "Attributes" in Mail::Box::Manage::User.

       $obj->defaultFolderType()
	   Inherited, see "Attributes" in Mail::Box::Manager

       $obj->folderTypes()
	   Inherited, see "Attributes" in Mail::Box::Manager

       $obj->folderdir()
	   Inherited, see "Attributes" in Mail::Box::Manager

       $obj->identity()
	   Inherited, see "Attributes" in Mail::Box::Manage::User

       $obj->inbox( [$name] )
	   Inherited, see "Attributes" in Mail::Box::Manage::User

       $obj->indexFilename()
	   Returns the filename	of the index file.

       $obj->registerType($type, $class, %options)
	   Inherited, see "Attributes" in Mail::Box::Manager

   Manage open folders
       Extends "Manage open folders" in	Mail::Box::Manage::User.

       $obj->close($folder, %options)
	   Inherited, see "Manage open folders"	in Mail::Box::Manager

       $obj->closeAllFolders(, %options)
	   Inherited, see "Manage open folders"	in Mail::Box::Manager

       $obj->isOpenFolder($folder)
	   Inherited, see "Manage open folders"	in Mail::Box::Manager

       $obj->open( [$foldername], %options )
	   Inherited, see "Manage open folders"	in Mail::Box::Manager

       $obj->openFolders()
	   Inherited, see "Manage open folders"	in Mail::Box::Manager

   Manage existing folders
       Extends "Manage existing	folders" in Mail::Box::Manage::User.

   Manage folders
       Extends "Manage folders"	in Mail::Box::Manage::User.

       $obj->create($name, %options)
	   Creates a new folder	with the specified name.  Folder info is
	   returned, which will	be very	simple.	 In the	accidental case	that
	   the folder already exists, a	warning	will be	issued,	and that
	   folder's data returned.

	    -Option	  --Defined in		   --Default
	     create_real    Mail::Box::Manage::User  <true>
	     create_supers  Mail::Box::Manage::User  <false>
	     deleted	    Mail::Box::Manage::User  <false>
	     id_options	    Mail::Box::Manage::User  []

	   create_real => BOOLEAN
	   create_supers => BOOLEAN
	   deleted => BOOLEAN
	   id_options => ARRAY
       $obj->delete($name, %options)
	   Remove all signs from the folder on the file-system.	 Messages
	   still in the	folder will be removed.	 This method returns a true
	   value when the folder has been removed or not found,	so "false"
	   means failure.

	   It is also possible to delete a folder using	"$folder->delete",
	   which will call this	method here.  %options,	which are used for
	   some	other folder types, will be ignored here: the user's index
	   contains the	required details.

	    -Option   --Defined	in	  --Default
	     recursive	Mail::Box::Manager  <folder's default>

	   recursive =>	BOOLEAN

	   example: how	to delete a folder

	    print "no xyz (anymore)\n" if $user->delete('xyz');

       $obj->folder($name)
	   Inherited, see "Manage folders" in Mail::Box::Manage::User

       $obj->folderCollection($name)
	   Inherited, see "Manage folders" in Mail::Box::Manage::User

       $obj->folderInfo($name)
	   Returns a hash with folder information.  In normal circumstances,
	   it is cheap to get these details, because they are cached in	an
	   index file, maintained by Mail::Box::Netzwert::UserIndex.

	   DO NOT modify the values you	find in	the hash, because that data
	   may or may not be lost (see Mail::Box::Netzwert::UserIndex
	   subroutine change).

	   DO NOT trust	on the existence of any	field in the info: fields may
	   get renamed,	removed, or added over time.  Not all folder indexes
	   will	be generated by	the same software release.

	   example: how	to get global info about a folder

	    my $info = $user->folderInfo($name); # get info

       $obj->rename($oldname, $newname,	%options)
	   Inherited, see "Manage folders" in Mail::Box::Manage::User

       $obj->topfolder()
	   Inherited, see "Manage folders" in Mail::Box::Manage::User

   Move	messages to folders
       Extends "Move messages to folders" in Mail::Box::Manage::User.

       $obj->appendMessage( [$folder|$foldername], $messages, %options )
	   Inherited, see "Move	messages to folders" in	Mail::Box::Manager

       $obj->copyMessage( [$folder|$foldername], $messages, %options )
	   Inherited, see "Move	messages to folders" in	Mail::Box::Manager

       $obj->moveMessage( [$folder|$foldername], $messages, %options )
	   Inherited, see "Move	messages to folders" in	Mail::Box::Manager

   Manage message threads
       Extends "Manage message threads"	in Mail::Box::Manage::User.

       $obj->threads( [$folders], %options )
	   Inherited, see "Manage message threads" in Mail::Box::Manager

   Internals
       Extends "Internals" in Mail::Box::Manage::User.

       $obj->decodeFolderURL($url)
	   Inherited, see "Internals" in Mail::Box::Manager

       $obj->toBeThreaded($folder, $messages)
	   Inherited, see "Internals" in Mail::Box::Manager

       $obj->toBeUnthreaded($folder, $messages)
	   Inherited, see "Internals" in Mail::Box::Manager

   Error handling
       Extends "Error handling"	in Mail::Box::Manage::User.

       $obj->AUTOLOAD()
	   Inherited, see "Error handling" in Mail::Reporter

       $obj->addReport($object)
	   Inherited, see "Error handling" in Mail::Reporter

       $obj->defaultTrace( [$level]|[$loglevel,	$tracelevel]|[$level,
       $callback] )
       Mail::Server::IMAP4::User->defaultTrace(	[$level]|[$loglevel,
       $tracelevel]|[$level, $callback]	)
	   Inherited, see "Error handling" in Mail::Reporter

       $obj->errors()
	   Inherited, see "Error handling" in Mail::Reporter

       $obj->log( [$level, [$strings]] )
       Mail::Server::IMAP4::User->log( [$level,	[$strings]] )
	   Inherited, see "Error handling" in Mail::Reporter

       $obj->logPriority($level)
       Mail::Server::IMAP4::User->logPriority($level)
	   Inherited, see "Error handling" in Mail::Reporter

       $obj->logSettings()
	   Inherited, see "Error handling" in Mail::Reporter

       $obj->notImplemented()
	   Inherited, see "Error handling" in Mail::Reporter

       $obj->report( [$level] )
	   Inherited, see "Error handling" in Mail::Reporter

       $obj->reportAll(	[$level] )
	   Inherited, see "Error handling" in Mail::Reporter

       $obj->trace( [$level] )
	   Inherited, see "Error handling" in Mail::Reporter

       $obj->warnings()
	   Inherited, see "Error handling" in Mail::Reporter

   Cleanup
       Extends "Cleanup" in Mail::Box::Manage::User.

       $obj->DESTROY()
	   Inherited, see "Cleanup" in Mail::Reporter

DETAILS
       Extends "DETAILS" in Mail::Box::Manage::User.

DIAGNOSTICS
       Error: Cannot create folder directory $dir: $!
       Error: Cannot rename $name to $new: higher levels missing
	   Unless you set create(create_supers), all higher level folders must
	   exist before	this new one can be created.

       Error: Cannot write name	for folder in $file: $!
       Error: Failed writing folder name to $file: $!
       Warning:	Folder $name already exists, creation skipped
       Error: Folder $name is already open.
	   You cannot ask the manager for a folder which is already open. In
	   some	older releases (before MailBox 2.049), this was	permitted, but
	   then	behaviour changed, because many	nasty side-effects are to be
	   expected.  For instance, an Mail::Box::update() on one folder
	   handle would	influence the second, probably unexpectedly.

       Error: Folder $name is not a Mail::Box; cannot add a message.
	   The folder where the	message	should be appended to is an object
	   which is not	a folder type which extends Mail::Box.	Probably, it
	   is not a folder at all.

       Warning:	Folder does not	exist, failed opening $type folder $name.
	   The folder does not exist and creating is not permitted (see
	   open(create)) or did	not succeed.  When you do not have sufficient
	   access rights to the	folder (for instance wrong password for	POP3),
	   this	warning	will be	produced as well.

	   The manager tried to	open a folder of the specified type.  It may
	   help	to explicitly state the	type of	your folder with the "type"
	   option.  There will probably	be another warning or error message
	   which is related to this report and provides	more details about its
	   cause.  You may also	have a look at new(autodetect) and
	   new(folder_types).

       Warning:	Folder type $type is unknown, using autodetect.
	   The specified folder	type (see open(type), possibly derived from
	   the folder name when	specified as url) is not known to the manager.
	   This	may mean that you forgot to require the	Mail::Box extension
	   which implements this folder	type, but probably it is a typo.
	   Usually, the	manager	is able	to figure-out which type to use	by
	   itself.

       Error: Illegal folder URL '$url'.
	   The folder name was specified as URL, but not according to the
	   syntax.  See	decodeFolderURL() for an description of	the syntax.

       Error: No foldername specified to open.
	   "open()" needs a folder name	as first argument (before the list of
	   options), or	with the "folder" option within	the list.  If no name
	   was found, the MAIL environment variable is checked.	 When even
	   that	does not result	in a usable folder, then this error is
	   produced.  The error	may be caused by an accidental odd-length
	   option list.

       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.

       Error: Unable to	remove folder $dir
       Error: Use appendMessage() to add messages which	are not	in a folder.
	   You do not need to copy this	message	into the folder, because you
	   do not share	the message between folders.

       Warning:	Use moveMessage() or copyMessage() to move between open
       folders.
	   The message is already part of a folder, and	now it should be
	   appended to a different folder.  You	need to	decide between copy or
	   move, which both will clone the message (not	the body, because they
	   are immutable).

       Warning:	Will never create a folder $name without having	write access.
	   You have set	open(create), but only want to read the	folder.
	   Create is only useful for folders which have	write or append	access
	   modes (see Mail::Box::new(access)).

SEE ALSO
       This module is part of Mail-Box-IMAP4 distribution version 3.007, built
       on June 13, 2019. Website: http://perl.overmeer.net/CPAN/

LICENSE
       Copyrights 2001-2019 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://dev.perl.org/licenses/

perl v5.32.0			  2019-06-13	  Mail::Server::IMAP4::User(3)

NAME | INHERITANCE | SYNOPSIS | DESCRIPTION | METHODS | DETAILS | DIAGNOSTICS | SEE ALSO | LICENSE

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=Mail::Server::IMAP4::User&sektion=3&manpath=FreeBSD+12.2-RELEASE+and+Ports>

home | help