1To parse the libapreq headers into xsbuilder/tables: 2 3 % perl ../../build/xsbuilder.pl run 4 5To build the xs/ directory and configure the tests: 6 7 % perl Makefile.PL -apxs /path/to/apache2/bin/apxs 8 9To run the test suite: 10 11 % make test 12 13 14 15 16DEVELOPER NOTES 17 18APR::Request::* should be a simple translation of the apreq C API: 19 20apreq_handle_t -> APR::Request-derived instance. 21apreq_module_t -> APR::Request-derived class. 22apreq_param_t -> APR::Request::Param 23apreq_cookie_t -> APR::Request::Cookie 24apreq_parser_t -> APR::Request::Parser (todo) 25apreq_hook_t -> APR::Request::Hook (todo) 26 27 28-------------------------------------------------- 29Current APR:: module breakdown 30-------------------------------------------------- 31 32APR::Request 33 34 subs: 35 encode 36 decode 37 38 methods: 39 parse 40 read_limit 41 brigade_limit 42 temp_dir 43 header_in 44 header_out 45 jar_status 46 args_status 47 body_status 48 param_status 49 disable_uploads 50 51 missing: 52 add_hook (requires APR::Request::Hook) 53 parser (requires APR::Request::Parser) 54 55================================================== 56 57APR::Request::CGI @ISA=(APR::Request) 58 59 method: 60 param 61 62 ctor: 63 new 64 65================================================== 66 67APR::Request::Apache2 @ISA=(APR::Request) 68 69 method: 70 param 71 72 ctor: 73 new 74 75================================================== 76 77APR::Request::Error @ISA=(APR::Error, APR::Request) 78 79 subs: 80 strerror 81 82================================================== 83 84APR::Request::Cookie 85 86 provides: 87 APR::Request::jar() 88 APR::Request::Cookie::Table 89 methods: 90 get, FETCH 91 FIRSTKEY, NEXTKEY 92 cookie_class 93 missing: 94 rest of const apr_table_t * API (do, etc) 95 96 methods: 97 name 98 value 99 secure 100 version 101 is_tainted 102 as_string 103 bake 104 bake2 105 expires 106 path 107 domain 108 port 109 comment 110 commentURL 111 112 freeze 113 thaw 114 115 bind_handle 116 117 ctor: 118 new 119 120================================================== 121 122APR::Request::Param 123 124 provides: 125 APR::Request::args() 126 APR::Request::body() 127 APR::Request::param() 128 APR::Request::params() 129 130 APR::Request::Param::Table 131 methods: 132 get, FETCH 133 FIRSTKEY, NEXTKEY 134 param_class 135 uploads 136 do 137 missing: 138 rest of const apr_table_t * API 139 140 APR::Request::Brigade 141 methods: 142 TIEHANDLE, new 143 READ 144 READLINE 145 APR::Request::Brigade::IO 146 read 147 readline 148 149 methods: 150 name 151 value 152 info 153 upload 154 upload_link 155 upload_slurp 156 upload_size 157 upload_type 158 upload_tempname 159 upload_io 160 upload_fh 161 162-------------------------------------------------- 163Current (pure-perl) Apache2:: module breakdown 164-------------------------------------------------- 165 166Apache2::Request @ISA=(Apache2::RequestRec, APR::Request::Apache2) 167 168 ctor: 169 new 170 171 methods: 172 instance (deprecated, ok to remove this) 173 disable_uploads 174 175 missing: 176 hook_data 177 upload_hook 178 179 2.04-deltas: 180 env() removed 181 params() method inherited from APR::Request; not deprecated anymore. 182 parms() removed 183 status() removed. 184 args() needs to become Apache2::RequestRec::args!!! 185 The args() change probably deserves a runtime warning in 2.05-dev. 186 187================================================== 188 189Apache2::Cookie @ISA=(APR::Request::Cookie) 190 191 provides: 192 Apache2::Cookie::Jar @ISA=(APR::Request::Apache2) 193 methods: 194 cookies 195 status 196 197 subs: 198 encode 199 decode 200 201 methods: 202 new 203 fetch 204 set_attr 205 freeze 206 thaw 207 value 208 209 2.04-deltas: 210 env() removed 211 212================================================== 213 214Apache2::Upload @ISA=(APR::Request::Param) 215 216 provides: 217 Apache2::Request::upload 218 219 methods: 220 slurp 221 type 222 size 223 link 224 tempname 225 fh 226 io 227 filename 228 bb (need to deprecate this) 229 230 2.04-deltas: 231 Apache::Upload::Brigade is now APR::Request::Brigade. 232