fastdo  0.5.12
webx_OutputMgr.hpp
浏览该文件的文档.
1 #pragma once
2 
3 #include "http.hpp"
4 
5 namespace eienwebx
6 {
7 
13 {
14 public:
16  OutputMgr();
17 
19  virtual ~OutputMgr();
20 
25  void setLocalEncoding( winux::String const & local );
26 
30  void setTargetEncoding( winux::String const & target );
31 
33  winux::String getLocalEncoding() const;
34 
36  winux::String getTargetEncoding() const;
37 
39  winux::String convFrom( winux::String const & str ) const;
40 
42  winux::String convTo( winux::String const & str ) const;
43 
45  winux::ulong getConvertedContentSize();
46 
47 public:
49  virtual void echo( winux::String const & str ) = 0;
50 
52  virtual void write( void const * data, int size ) = 0;
53 
55  virtual void printf( char const * format, va_list va ) = 0;
56 
58  virtual winux::ulong getCacheOutStreamSize() const = 0;
59 
60 protected:
64  bool _isNeedEncodingConvert() const;
65 
66 protected:
72  virtual int _tryEncodingConvert() = 0;
73 
75  virtual void _backupStd() = 0;
76 
78  virtual void _resumeStd() = 0;
79 
81  virtual void _redirectToSpec() = 0;
82 
86  virtual void _commit() = 0;
87 
92 
97 
100 
101 private:
102 
103  friend class Response;
105 };
106 
107 
108 
109 } // namespace eienwebx
代表HTTP头部
Definition: http_misc.hpp:10
winux::String _localEncoding
本地编码
#define EIENWEBX_DLL
std::basic_string< char > AnsiString
Definition: utilities.hpp:165
winux::AnsiString _bufConverted
已经进行编码转换的内容
#define DISABLE_OBJECT_COPY(clsname)
Definition: utilities.hpp:78
http::Header _header
http头部信息
输出管理器
代表一个客户响应
bool _headerCommited
指示头部是否已经提交发送到输出流
winux::String _targetEncoding
要输出的编码
unsigned long ulong
Definition: utilities.hpp:129
std::basic_string< tchar > String
Definition: utilities.hpp:162