Murata RF modules are designed to simplify wireless development and certification by minimizing the amount of RF expertise you need to wirelessly enable a wide range of applications.

Committer:
yangcq88517
Date:
Tue Feb 03 21:24:15 2015 +0000
Revision:
0:8e83b9448758
Child:
2:f8e393a81c25
MuRata WiFi Module

Who changed what in which revision?

UserRevisionLine numberNew contents of line
yangcq88517 0:8e83b9448758 1 #include "HTTPResponse.h"
yangcq88517 0:8e83b9448758 2
yangcq88517 0:8e83b9448758 3 using namespace SmartLabMuRata;
yangcq88517 0:8e83b9448758 4
yangcq88517 0:8e83b9448758 5 HTTPResponse::HTTPResponse(Payload * payload)
yangcq88517 0:8e83b9448758 6 : Payload(payload)
yangcq88517 0:8e83b9448758 7 {
yangcq88517 0:8e83b9448758 8 statusCode = GetData()[2] << 8 | GetData()[3];
yangcq88517 0:8e83b9448758 9 if (statusCode >= 100) {
yangcq88517 0:8e83b9448758 10 contentLength = (GetData()[4] & 0x7F) << 8 | GetData()[5];
yangcq88517 0:8e83b9448758 11 contentType = string(GetData() + 6);
yangcq88517 0:8e83b9448758 12 payloadOffset = 6 + contentType.length() + 1;
yangcq88517 0:8e83b9448758 13 }
yangcq88517 0:8e83b9448758 14 }
yangcq88517 0:8e83b9448758 15
yangcq88517 0:8e83b9448758 16 bool HTTPResponse::isMoreDataComing()
yangcq88517 0:8e83b9448758 17 {
yangcq88517 0:8e83b9448758 18 return (GetData()[4] >> 7) == 0x01 ? true : false;
yangcq88517 0:8e83b9448758 19 }
yangcq88517 0:8e83b9448758 20
yangcq88517 0:8e83b9448758 21 int HTTPResponse::GetContentLength()
yangcq88517 0:8e83b9448758 22 {
yangcq88517 0:8e83b9448758 23 return contentLength;
yangcq88517 0:8e83b9448758 24 }
yangcq88517 0:8e83b9448758 25
yangcq88517 0:8e83b9448758 26 int HTTPResponse::GetStatusCode()
yangcq88517 0:8e83b9448758 27 {
yangcq88517 0:8e83b9448758 28 return statusCode;
yangcq88517 0:8e83b9448758 29 }
yangcq88517 0:8e83b9448758 30
yangcq88517 0:8e83b9448758 31 char HTTPResponse::GetContent(int index)
yangcq88517 0:8e83b9448758 32 {
yangcq88517 0:8e83b9448758 33 return GetData()[index + payloadOffset];
yangcq88517 0:8e83b9448758 34 }
yangcq88517 0:8e83b9448758 35
yangcq88517 0:8e83b9448758 36 const char * HTTPResponse::GetContent()
yangcq88517 0:8e83b9448758 37 {
yangcq88517 0:8e83b9448758 38 return GetData() + payloadOffset;
yangcq88517 0:8e83b9448758 39 }
yangcq88517 0:8e83b9448758 40
yangcq88517 0:8e83b9448758 41 string & HTTPResponse::GetContentType()
yangcq88517 0:8e83b9448758 42 {
yangcq88517 0:8e83b9448758 43 return contentType;
yangcq88517 0:8e83b9448758 44 }
yangcq88517 0:8e83b9448758 45
yangcq88517 0:8e83b9448758 46 int HTTPResponse::GetContentOffset()
yangcq88517 0:8e83b9448758 47 {
yangcq88517 0:8e83b9448758 48 return payloadOffset;
yangcq88517 0:8e83b9448758 49 }