26 #ifndef http_response_h
27 #define http_response_h
48 extern void close_temp(FILE *s,
const string &name);
59 std::vector<std::string> *d_headers;
87 HTTPResponse(FILE *s,
int status, std::vector<std::string> *h,
const std::string &temp_file)
88 :
Response(s, status), d_headers(h), d_file(temp_file)
90 DBG(cerr <<
"Headers: " << endl);
91 DBGN(copy(d_headers->begin(), d_headers->end(),
92 ostream_iterator<string>(cerr,
"\n")));
93 DBGN(cerr <<
"end of headers." << endl);
105 HTTPResponse(std::fstream *s,
int status, std::vector<std::string> *h,
const std::string &temp_file)
106 :
Response(s, status), d_headers(h), d_file(temp_file)
108 DBG(cerr <<
"Headers: " << endl);
109 DBGN(copy(d_headers->begin(), d_headers->end(),
110 ostream_iterator<string>(cerr,
"\n")));
111 DBGN(cerr <<
"end of headers." << endl);
119 DBG(cerr <<
"Freeing HTTPConnect resources (" + d_file +
")... ");
127 if (!dods_keep_temps && !d_file.empty()) {
133 long res = unlink(d_file.c_str());
158 virtual std::vector<std::string> *
get_headers()
const {
return d_headers; }
159 virtual std::string
get_file()
const {
return d_file; }
164 virtual void set_headers(std::vector<std::string> *h) { d_headers = h; }
165 virtual void set_file(
const std::string &n) { d_file = n; }
171 #endif // http_response_h
virtual void set_stream(FILE *s)
virtual void set_headers(std::vector< std::string > *h)
virtual std::istream * get_cpp_stream() const
A class for software fault reporting.
virtual std::string get_file() const
void close_temp(FILE *s, const string &name)
virtual void set_cpp_stream(std::istream *s)
string long_to_string(long val, int base)
HTTPResponse(FILE *s, int status, std::vector< std::string > *h, const std::string &temp_file)
HTTPResponse & operator=(const HTTPResponse &)
HTTPResponse(std::fstream *s, int status, std::vector< std::string > *h, const std::string &temp_file)
Build a HTTPResponse using a cpp fstream When working with DAP4 responses, use C++ streams for I/0...
virtual void set_file(const std::string &n)
virtual std::vector< std::string > * get_headers() const
virtual FILE * get_stream() const