A client for the SmartREST protocol from Cumulocity.
Fork of MbedSmartRest by
HTTPResponseFilter.h@18:f76f9ae79195, 2014-05-26 (annotated)
- Committer:
- vwochnik
- Date:
- Mon May 26 08:25:44 2014 +0000
- Revision:
- 18:f76f9ae79195
- Parent:
- 15:0ce90c525e7a
fix for bootstrapping
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
vwochnik | 14:dc3f8dd5c02b | 1 | #ifndef HTTPRESPONSEFILTER_H |
vwochnik | 14:dc3f8dd5c02b | 2 | #define HTTPRESPONSEFILTER_H |
vwochnik | 14:dc3f8dd5c02b | 3 | |
vwochnik | 14:dc3f8dd5c02b | 4 | #include <stddef.h> |
vwochnik | 14:dc3f8dd5c02b | 5 | #include "AbstractDataSource.h" |
vwochnik | 14:dc3f8dd5c02b | 6 | |
vwochnik | 14:dc3f8dd5c02b | 7 | #define RESPF_STATE_INIT 0 |
vwochnik | 14:dc3f8dd5c02b | 8 | #define RESPF_STATE_READ_STATUS 1 |
vwochnik | 14:dc3f8dd5c02b | 9 | #define RESPF_STATE_READ_HEADERS 2 |
vwochnik | 14:dc3f8dd5c02b | 10 | |
vwochnik | 14:dc3f8dd5c02b | 11 | /** |
vwochnik | 14:dc3f8dd5c02b | 12 | * Reads and evaluates a HTTP response. |
vwochnik | 14:dc3f8dd5c02b | 13 | * The read() and status() methods allow access to the response content |
vwochnik | 14:dc3f8dd5c02b | 14 | * without HTTP headers. |
vwochnik | 14:dc3f8dd5c02b | 15 | */ |
vwochnik | 14:dc3f8dd5c02b | 16 | class HTTPResponseFilter : public AbstractDataSource |
vwochnik | 14:dc3f8dd5c02b | 17 | { |
vwochnik | 14:dc3f8dd5c02b | 18 | public: |
vwochnik | 14:dc3f8dd5c02b | 19 | HTTPResponseFilter(AbstractDataSource& source); |
vwochnik | 14:dc3f8dd5c02b | 20 | ~HTTPResponseFilter(); |
vwochnik | 14:dc3f8dd5c02b | 21 | |
vwochnik | 14:dc3f8dd5c02b | 22 | char read(); |
vwochnik | 14:dc3f8dd5c02b | 23 | uint8_t status(); |
vwochnik | 14:dc3f8dd5c02b | 24 | |
vwochnik | 14:dc3f8dd5c02b | 25 | uint16_t readStatus(); |
vwochnik | 14:dc3f8dd5c02b | 26 | bool skipHeaders(); |
vwochnik | 14:dc3f8dd5c02b | 27 | |
vwochnik | 14:dc3f8dd5c02b | 28 | void reset(); |
vwochnik | 14:dc3f8dd5c02b | 29 | |
vwochnik | 14:dc3f8dd5c02b | 30 | private: |
vwochnik | 14:dc3f8dd5c02b | 31 | AbstractDataSource& _source; |
vwochnik | 14:dc3f8dd5c02b | 32 | uint8_t _state; |
vwochnik | 15:0ce90c525e7a | 33 | size_t _length, _read; |
vwochnik | 14:dc3f8dd5c02b | 34 | }; |
vwochnik | 14:dc3f8dd5c02b | 35 | |
vwochnik | 14:dc3f8dd5c02b | 36 | #endif |