Squid Web Cache master
Loading...
Searching...
No Matches
HttpBody.h
Go to the documentation of this file.
1/*
2 * Copyright (C) 1996-2025 The Squid Software Foundation and contributors
3 *
4 * Squid software is distributed under GPLv2+ license and includes
5 * contributions from numerous individuals and organizations.
6 * Please see the COPYING and CONTRIBUTORS files for details.
7 */
8
9#ifndef SQUID_SRC_HTTPBODY_H
10#define SQUID_SRC_HTTPBODY_H
11
12#include "sbuf/SBuf.h"
13
14class Packable; // TODO: Add and use base/forward.h.
15
22{
23public:
25
26 void set(const SBuf &newContent) { raw_ = newContent; }
27
32 void packInto(Packable *) const;
33
35 void clear() { raw_.clear(); }
36
38 bool hasContent() const { return raw_.length() > 0; }
39
41 size_t contentSize() const { return raw_.length(); }
42
44 const char *content() const { return raw_.rawContent(); }
45
46private:
47 HttpBody& operator=(const HttpBody&); //not implemented
48 HttpBody(const HttpBody&); // not implemented
49
50 SBuf raw_; // body bytes
51};
52
53#endif /* SQUID_SRC_HTTPBODY_H */
54
bool hasContent() const
Definition HttpBody.h:38
const char * content() const
Definition HttpBody.h:44
SBuf raw_
Definition HttpBody.h:50
void packInto(Packable *) const
Definition HttpBody.cc:14
HttpBody & operator=(const HttpBody &)
size_t contentSize() const
Definition HttpBody.h:41
void clear()
clear the HttpBody content
Definition HttpBody.h:35
void set(const SBuf &newContent)
Definition HttpBody.h:26
HttpBody()
Definition HttpBody.h:24
HttpBody(const HttpBody &)
Definition SBuf.h:94
const char * rawContent() const
Definition SBuf.cc:509
size_type length() const
Returns the number of bytes stored in SBuf.
Definition SBuf.h:419
void clear()
Definition SBuf.cc:175