44 #ifndef COMMONCPP_MIME_H_
45 #define COMMONCPP_MIME_H_
47 #ifndef COMMONCPP_CONFIG_H_
48 #include <commoncpp/config.h>
51 #ifndef COMMONCPP_SOCKET_H_
67 class __EXPORT MIMEMultipart
70 __DELETE_COPY(MIMEMultipart);
73 friend class MIMEItemPart;
77 MIMEItemPart *first, *last;
79 virtual ~MIMEMultipart();
87 MIMEMultipart(
const char *document);
95 virtual void head(std::ostream *output);
103 virtual void body(std::ostream *output);
111 char **getHeaders(
void) {
124 class __EXPORT MIMEMultipartForm :
public MIMEMultipart
127 __DELETE_COPY(MIMEMultipartForm);
130 virtual ~MIMEMultipartForm();
148 class __EXPORT MIMEItemPart
151 __DELETE_COPY(MIMEItemPart);
154 friend class MIMEMultipart;
165 virtual void head(std::ostream *output);
172 virtual void body(std::ostream *output) = 0;
180 MIMEItemPart(MIMEMultipart *top,
const char *ct);
182 virtual ~MIMEItemPart();
192 class __EXPORT MIMEFormData :
public MIMEItemPart
195 __DELETE_COPY(MIMEFormData);
201 virtual ~MIMEFormData();
209 void head(std::ostream *output) __OVERRIDE;
216 void body(std::ostream *output) __OVERRIDE;
225 MIMEFormData(MIMEMultipartForm *top,
const char *name,
const char *content);