diff options
author | Tycho <work.tycho+git@gmail.com> | 2014-04-27 15:35:27 +0200 |
---|---|---|
committer | Tycho <work.tycho+git@gmail.com> | 2014-04-27 15:35:27 +0200 |
commit | 57b8ee9163181920b634e475c781fe7764e11b98 (patch) | |
tree | 7d0675f8cda49a39b0b42eaaa928cfb66b57869a /src/HTTPServer/EnvelopeParser.h | |
parent | Implemented Chunk Sparsing with segments (diff) | |
parent | Merge pull request #863 from mc-server/chunkysparsing (diff) | |
download | cuberite-57b8ee9163181920b634e475c781fe7764e11b98.tar cuberite-57b8ee9163181920b634e475c781fe7764e11b98.tar.gz cuberite-57b8ee9163181920b634e475c781fe7764e11b98.tar.bz2 cuberite-57b8ee9163181920b634e475c781fe7764e11b98.tar.lz cuberite-57b8ee9163181920b634e475c781fe7764e11b98.tar.xz cuberite-57b8ee9163181920b634e475c781fe7764e11b98.tar.zst cuberite-57b8ee9163181920b634e475c781fe7764e11b98.zip |
Diffstat (limited to 'src/HTTPServer/EnvelopeParser.h')
-rw-r--r-- | src/HTTPServer/EnvelopeParser.h | 27 |
1 files changed, 14 insertions, 13 deletions
diff --git a/src/HTTPServer/EnvelopeParser.h b/src/HTTPServer/EnvelopeParser.h index 866bed11d..e96d80abe 100644 --- a/src/HTTPServer/EnvelopeParser.h +++ b/src/HTTPServer/EnvelopeParser.h @@ -22,7 +22,7 @@ public: // Force a virtual destructor in descendants: virtual ~cCallbacks() {} - /// Called when a full header line is parsed + /** Called when a full header line is parsed */ virtual void OnHeaderLine(const AString & a_Key, const AString & a_Value) = 0; } ; @@ -30,40 +30,41 @@ public: cEnvelopeParser(cCallbacks & a_Callbacks); /** Parses the incoming data. - Returns the number of bytes consumed from the input. The bytes not consumed are not part of the envelope header + Returns the number of bytes consumed from the input. The bytes not consumed are not part of the envelope header. + Returns AString::npos on error */ - int Parse(const char * a_Data, int a_Size); + size_t Parse(const char * a_Data, size_t a_Size); - /// Makes the parser forget everything parsed so far, so that it can be reused for parsing another datastream + /** Makes the parser forget everything parsed so far, so that it can be reused for parsing another datastream */ void Reset(void); - /// Returns true if more input is expected for the envelope header + /** Returns true if more input is expected for the envelope header */ bool IsInHeaders(void) const { return m_IsInHeaders; } - /// Sets the IsInHeaders flag; used by cMultipartParser to simplify the parser initial conditions + /** Sets the IsInHeaders flag; used by cMultipartParser to simplify the parser initial conditions */ void SetIsInHeaders(bool a_IsInHeaders) { m_IsInHeaders = a_IsInHeaders; } public: - /// Callbacks to call for the various events + /** Callbacks to call for the various events */ cCallbacks & m_Callbacks; - /// Set to true while the parser is still parsing the envelope headers. Once set to true, the parser will not consume any more data. + /** Set to true while the parser is still parsing the envelope headers. Once set to true, the parser will not consume any more data. */ bool m_IsInHeaders; - /// Buffer for the incoming data until it is parsed + /** Buffer for the incoming data until it is parsed */ AString m_IncomingData; - /// Holds the last parsed key; used for line-wrapped values + /** Holds the last parsed key; used for line-wrapped values */ AString m_LastKey; - /// Holds the last parsed value; used for line-wrapped values + /** Holds the last parsed value; used for line-wrapped values */ AString m_LastValue; - /// Notifies the callback of the key/value stored in m_LastKey/m_LastValue, then erases them + /** Notifies the callback of the key/value stored in m_LastKey/m_LastValue, then erases them */ void NotifyLast(void); - /// Parses one line of header data. Returns true if successful + /** Parses one line of header data. Returns true if successful */ bool ParseLine(const char * a_Data, size_t a_Size); } ; |