The following module was proposed for inclusion in the Module List:
modid: MIME::Multipart::ParseSimple
DSLIP: adpO2
description: simple multipart parser, maintains doc order
userid: JIMI (Jimi Carlo Wills)
chapterid: 19 (Mail_and_Usenet_News)
communities:
comp.lang.perl.modules
similar:
MIME::Parse
rationale:
I have a requirement for knowing the part order, and I can't find
another parser that keeps the order (because they're all in a hash
keyed on content-disposition). Also, they all write the files out to
tmp, which I don't want (and can't guarantee will work on every
target).
So instead of that, I parse into an array. This is returned (by
reference) from a parse() method, which accepts a filehandle as its
argument. Each item of the list corresponds to a MIME header and is
a hash of header items, with the first corresponding to the
multipart header and including Preable and Epilog if present. The
content of each part is keyed as "Body" and any header parameters
(e.g. boundary) are parsed into hashed and keyed as
"<Header-Name>.params".
E.g., the boundary itself would be at:
$returned_listref->[0]->{"Content-Type.params"}->{boundary}
I do nothing to parse/decode the actual content.
This module is pure for my own needs, but I figure I might as well
share it. Somebody might find it interesting.
enteredby: JIMI (Jimi Carlo Wills)
enteredon: Mon Dec 30 14:42:17 2013 UTC
The resulting entry would be:
MIME::Multipart::
::ParseSimple adpO2 simple multipart parser, maintains doc order JIMI
Thanks for registering,
--
The PAUSE
PS: The following links are only valid for module list maintainers:
Registration form with editing capabilities:
https://pause.perl.org/pause/authenquery?ACTION=add_mod&USERID=79f00000_44752e74b41fd338&SUBMIT_pause99_add_mod_preview=1
Immediate (one click) registration:
https://pause.perl.org/pause/authenquery?ACTION=add_mod&USERID=79f00000_44752e74b41fd338&SUBMIT_pause99_add_mod_insertit=1
Peek at the current permissions:
https://pause.perl.org/pause/authenquery?pause99_peek_perms_by=me&pause99_peek_perms_query=MIME%3A%3AMultipart%3A%3AParseSimple