how to change a factory use of rfc822.Message to mhlib.Message

J

John Doe

I've never used a factory and would like to get some help.
The class
mailbox.UnixMailbox has a defination for a factory.

__init__(self, fp, factory=<class rfc822.Message>)

where fp is a file pointer.

I don't want to use rfc822.Message. I'd like to use mhlib.Message instead.

rfc822.Message requires:
__init__(self, fp, seekable=1)

mhlib.Message requires:
__init__(self, f, n, fp=None)

where f think the is a folder name. I've seen '.' used.
(The documentation is very unclear here). And 'n' is the seekable.

How do I call mailbox.UnixMailbox( fp ... ) with mhlib.Message?

Thanks
 
S

Steve Holden

John said:
I've never used a factory and would like to get some help.
The class
mailbox.UnixMailbox has a defination for a factory.

__init__(self, fp, factory=<class rfc822.Message>)

where fp is a file pointer.

I don't want to use rfc822.Message. I'd like to use mhlib.Message instead.

rfc822.Message requires:
__init__(self, fp, seekable=1)

mhlib.Message requires:
__init__(self, f, n, fp=None)

where f think the is a folder name. I've seen '.' used.
(The documentation is very unclear here). And 'n' is the seekable.

How do I call mailbox.UnixMailbox( fp ... ) with mhlib.Message?


You'll need to write a "wrapper" class or function around mhlib.Message
to make it look sufficiently similar to rfc822.Message. Then you provide
the wrapper as the factory argument when you create your UnixMailbox.

Clearly the __init__() signature of whatever factory you provide has to
match that of rfc822.Message otherwise you'll get an error when the
mailbox code tries to create a message instance.

regards
Steve
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,755
Messages
2,569,536
Members
45,009
Latest member
GidgetGamb

Latest Threads

Top