Last Modified 2006-02-28 by Michael Slusarz

Next MIME Library

From Michael Slusarz:

What I would eventually like is to refer to these embedded mime parts by an id. PGP example:

0. multipart/signed

  1. encryption signature/version stuff

  2. encryped data

    Encrypted data contains:

    1. multipart/mixed

      1. text/plain

      2. image/jpeg

Then, if we want to access the image/jpeg option, we do a getPart('2.2') call to the MIME_Contents:: object and it will be responsible for rebuilding the data (it sees that 2.2 doesn't exist on the IMAP server, but that id 2 can contain embedded data, so it automatically downloads/parses as many parent parts as required). This will eliminate the need for MIME specific caching - which was always kind of a hackish implementation by me I admit.

More notes

Status of work that needs to be done for the various MIME components.

MIME_Part - Should do a better job of natively handling 'message/rfc822' parts - i.e. having a specific 'rfc822BasePart()/setrfc822BasePart()' methods to return/set the ID of the message/rfc822 part that is the parent of the current part (rather than using setInformation()/getInformation()). For IMP, we may want to override MIME_Part (esp. setContents()/getContents()) to obtain the information from the IMAP server - although haven't decided yet whether this should remain in IMP_Contents/MIME_Contents::, or even MIME_Viewer::.

MIME_Message - No major changes. Maybe try to clean up rebuild code a bit - but it works so don't mess with it too much.

MIME_Structure - No major changes

MIME_Headers - Remove deprecated code. Other than that, no major changes.

MIME_Contents - TODO

MIME_Viewer - TODO