4 // Stefan Bund <info@j32.de>
7 \brief InternalNetworkAccessManager public header */
9 #ifndef HH_PyKit_Publisher_
10 #define HH_PyKit_Publisher_ 1
13 #include <QNetworkAccessManager>
14 #include <QNetworkRequest>
15 #include <QNetworkReply>
17 #include <boost/noncopyable.hpp>
19 //#include "Publisher.mpp"
20 ///////////////////////////////hh.p////////////////////////////////////////
24 namespace detail { class InternalServerReply; }
29 void write(std::string const & data);
32 void setContentType(std::string const & contentType);
33 void setLocation(std::string const & location);
34 void setHeader(std::string const & header, std::string const & value);
35 void setStatusCode(int code);
38 QByteArray postData() const;
39 QByteArray operation() const;
40 QString postContentType() const;
43 Request(detail::InternalServerReply & reply);
45 detail::InternalServerReply & reply_;
47 friend class detail::InternalServerReply;
54 virtual ~Publisher() {}
55 virtual void publish(Request & request) = 0;
58 class InternalNetworkAccessManager
59 : public QNetworkAccessManager
63 InternalNetworkAccessManager(QNetworkAccessManager * manager, QObject * parent,
64 Publisher * publisher);
66 QNetworkReply * createRequest(Operation operation, QNetworkRequest const & request,
70 Publisher * publisher_;
75 ///////////////////////////////hh.e////////////////////////////////////////
76 //#include "Publisher.cci"
77 //#include "Publisher.ct"
78 //#include "Publisher.cti"
86 // c-file-style: "j32"
87 // indent-tabs-mode: nil
88 // ispell-local-dictionary: "american"
89 // compile-command: "scons -U"