42 #ifndef _object_type_h
46 #ifndef _encoding_type_h
74 bool is_boundary(
const char *line,
const std::string &boundary);
79 void parse_mime_header(
const std::string &header, std::string &name, std::string &value);
80 std::string
name_path(
const std::string &path);
84 const ObjectType object_type,
const std::string &cid =
"");
92 const ObjectType object_type,
const std::string &cid =
"");
93 bool do_version(
const std::string &script_ver,
const std::string &dataset_ver);
94 void ErrMsgT(
const std::string &Msgt);
100 bool found_override(std::string name, std::string &doc);
118 const time_t last_modified = 0);
121 const time_t last_modified = 0);
124 const time_t last_modified = 0,
125 const std::string &protocol =
"");
129 const time_t last_modified = 0);
132 const time_t last_modified = 0);
135 const time_t last_modified = 0,
136 const std::string &protocol =
"");
140 const time_t last_modified = 0);
143 const time_t last_modified = 0);
146 const time_t last_modified = 0,
147 const std::string &protocol =
"");
152 const time_t last_modified = 0);
156 const time_t last_modified = 0,
const std::string &protocol =
"",
157 const std::string &url =
"");
168 const std::string &reason =
"Dataset not found",
169 const std::string &
version =
"");
171 const std::string &reason =
"Dataset not found",
172 const std::string &
version =
"");
182 #endif // _mime_util_h
string get_next_mime_header(FILE *in)
void ErrMsgT(const string &Msgt)
Logs an error message.
void set_mime_data_boundary(ostream &strm, const string &boundary, const string &cid, ObjectType type, EncodingType enc)
time_t last_modified_time(const string &name)
string rfc822_date(const time_t t)
void read_multipart_headers(FILE *in, const string &content_type, const ObjectType object_type, const string &cid)
ObjectType
The type of object in the stream coming from the data server.
string cid_to_header_value(const string &cid)
void set_mime_text(FILE *out, ObjectType type, const string &ver, EncodingType enc, const time_t last_modified)
void parse_mime_header(const string &header, string &name, string &value)
ObjectType get_description_type(const string &value)
bool remove_mime_header(FILE *in)
Read and discard the MIME header of the stream in.
void set_mime_ddx_boundary(ostream &strm, const string &boundary, const string &cid, ObjectType type, EncodingType enc)
ObjectType get_type(const string &value)
void set_mime_binary(FILE *out, ObjectType type, const string &ver, EncodingType enc, const time_t last_modified)
string read_multipart_boundary(FILE *in, const string &boundary)
void set_mime_error(FILE *out, int code, const string &reason, const string &version)
void set_mime_not_modified(FILE *out)
Send a `Not Modified' response.
string name_path(const string &path)
Returns the filename portion of a pathname.
bool is_boundary(const char *line, const string &boundary)
void set_mime_html(FILE *out, ObjectType type, const string &ver, EncodingType enc, const time_t last_modified)
void set_mime_multipart(ostream &strm, const string &boundary, const string &start, ObjectType type, const string &version, EncodingType enc, const time_t last_modified)
EncodingType
The type of encoding used on the current stream.
bool do_version(const string &script_ver, const string &dataset_ver)
Send a version number.