| 286 | } |
| 287 | |
| 288 | std::string |
| 289 | HttpHeader::toString() const |
| 290 | { |
| 291 | std::string res; |
| 292 | |
| 293 | if (isValid()) { |
| 294 | TSIOBuffer const iobufp = TSIOBufferCreate(); |
| 295 | TSHttpHdrPrint(m_buffer, m_lochdr, iobufp); |
| 296 | TSIOBufferReader const reader = TSIOBufferReaderAlloc(iobufp); |
| 297 | |
| 298 | if (nullptr != reader) { |
| 299 | TSIOBufferBlock block = TSIOBufferReaderStart(reader); |
| 300 | bool done = false; |
| 301 | while (!done && nullptr != block) { |
| 302 | int64_t avail = 0; |
| 303 | char const *blockptr = TSIOBufferBlockReadStart(block, reader, &avail); |
| 304 | if (0 < avail) { |
| 305 | res.append(blockptr, avail); |
| 306 | } |
| 307 | block = TSIOBufferBlockNext(block); |
| 308 | } |
| 309 | |
| 310 | TSIOBufferReaderFree(reader); |
| 311 | } |
| 312 | |
| 313 | TSIOBufferDestroy(iobufp); |
| 314 | } |
| 315 | |
| 316 | if (res.empty()) { |
| 317 | res = "<null>"; |
| 318 | } |
| 319 | |
| 320 | return res; |
| 321 | } |
| 322 | |
| 323 | /////// HdrMgr |
| 324 |
no test coverage detected