NAME
Mail::Folder::NNTP - An NNTP folder interface for Mail::Folder.
WARNING: This code is in alpha release. Expect the interface to change.
SYNOPSIS
use Mail::Folder::NNTP;
DESCRIPTION
This module provides an interface to newsgroups accessible via the NNTP protocol.
METHODS
open($foldername)
Populates the Mail::Folder
object with information about the folder.
The given foldername can be given one of two formats. Either news://NEWSHOST/NEWSGROUP
where NEWSHOST
is the nntp host and NEWSGROUP
is the news group of interest, or #news:NEWSGROUP
in which case the NNTPSERVER
environment variable is referenced to determine the news host to connect to.
Please note that it opens an NNTP connection for each open NNTP folder.
If no Timeout
option is specified, it defaults to a timeout of 120 seconds.
Call the superclass
open
method.Make sure it is a valid NNTP foldername.
Connect to the NNTP server referenced in $foldername.
Perform an NNTP
group
command to determine quantity and range of articles available.Loop through available article numbers, retrieve and cache the headers.
Set
current_message
tofirst_message
.
close
Calls the superclass get_message
method and shuts down the connection to the NNTP server.
sync
Currently a no-op and returns 0
.
Eventually will expunge articles marked as seen, look for new articles, update the .newsrc
(or equivalent) file, and return the number of new articles found.
pack
Since the association between article and article number is determined by the server, this method is a no-op.
It return 1
.
get_message($msg_number)
Calls the superclass get_message
method.
Retrieves the contents of the news article pointed to by the given $msg_number
into a Mail::Internet object reference, caches the header, marks the message as 'seen
', and returns the reference.
It returns undef
on failure.
get_message_file($msg_number)
Not currently implemented. Returns undef
.
get_header($msg_number)
If the particular header has never been retrieved then get_header
retrieves the header for the given news article from the news server, converts it into a Mail::Header
object and returns a reference to the object.
If the header has already been retrieved in a prior call to get_header
, then the cached entry is returned.
It returns undef
on failure.
append_message($mref)
Not currently implemented. Returns 0
.
update_message($msg_number, $mref)
Not currently implemented. Returns 0
.
is_valid_folder_format($foldername)
Returns 1
if the foldername either starts with the string 'news://
' or starts with the string '#news:
' and the NNTPSERVER
environment variable is set, otherwise return 0;
create($foldername)
Not currently implemented. Returns 0
.
AUTHOR
Kevin Johnson <kjj@pobox.com>
COPYRIGHT
Copyright (c) 1997-1998 Kevin Johnson <kjj@pobox.com>.
All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.