00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef INCL_TRANSPORT_AGENT
00020 #define INCL_TRANSPORT_AGENT
00021
00023 #include "base/fscapi.h"
00024
00025 #include "http/URL.h"
00026 #include "http/Proxy.h"
00027
00028
00029
00030
00031 #define DEFAULT_MAX_TIMEOUT 300
00032
00033
00034
00035
00036
00037 #define DEFAULT_MAX_MSG_SIZE 512000
00038
00039
00040
00041
00042
00043 #define DEFAULT_INTERNET_READ_BUFFER_SIZE 4096
00044
00045
00046
00047
00048
00049
00050
00051 class TransportAgent {
00052
00053 protected:
00054 URL url;
00055 Proxy proxy;
00056
00057 unsigned int timeout;
00058 unsigned int maxmsgsize;
00059 unsigned int readBufferSize;
00060 char userAgent[128];
00061 BOOL compression;
00062
00063 public:
00064 TransportAgent() EXTRA_SECTION_03;
00065 TransportAgent(URL& url,
00066 Proxy& proxy,
00067 unsigned int responseTimeout = DEFAULT_MAX_TIMEOUT,
00068 unsigned int maxmsgsize = DEFAULT_MAX_MSG_SIZE) EXTRA_SECTION_03;
00069
00070 virtual ~TransportAgent() EXTRA_SECTION_03;
00071
00072
00073
00074
00075
00076
00077
00078 virtual void setURL(URL& newURL) EXTRA_SECTION_03;
00079
00080
00081
00082
00083 virtual URL& getURL() EXTRA_SECTION_03;
00084
00090 virtual void setTimeout(unsigned int t) EXTRA_SECTION_03;
00091
00095 virtual unsigned int getTimeout() EXTRA_SECTION_03;
00096
00102 virtual void setMaxMsgSize(unsigned int t) EXTRA_SECTION_03;
00103
00107 virtual unsigned int getMaxMsgSize()EXTRA_SECTION_03;
00108
00114 virtual void setReadBufferSize(unsigned int t) EXTRA_SECTION_03;
00115
00116 virtual void setUserAgent(const char* ua);
00117
00118 virtual void setCompression(BOOL newCompression);
00119 virtual BOOL getCompression();
00120
00121 virtual const char* getUserAgent();
00122
00126 virtual unsigned int getReadBufferSize()EXTRA_SECTION_03;
00127
00128
00129
00130
00131
00132
00133
00134
00135
00136 virtual char* sendMessage(const char* msg) = 0;
00137
00138 };
00139
00141 #endif