From Michael Slusarz:
What I would eventually like is to refer to these embedded mime parts by an id. PGP example:
-
multipart/signed
-
encryption signature/version stuff
-
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.