Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependents: mbed_mqtt_endpoint_ublox_ethernet mbed_mqtt_endpoint_ublox_cellular mbed_mqtt_endpoint_nxp
IOCHTTPTransport.h
00001 /* Copyright C2013 Doug Anson, MIT License 00002 * 00003 * Permission is hereby granted, free of charge, to any person obtaining a copy of this software 00004 * and associated documentation files the "Software", to deal in the Software without restriction, 00005 * including without limitation the rights to use, copy, modify, merge, publish, distribute, 00006 * sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is 00007 * furnished to do so, subject to the following conditions: 00008 * 00009 * The above copyright notice and this permission notice shall be included in all copies or 00010 * substantial portions of the Software. 00011 * 00012 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 00013 * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 00014 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 00015 * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 00016 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 00017 */ 00018 00019 #ifndef _IOC_HTTP_TRANSPORT_H_ 00020 #define _IOC_HTTP_TRANSPORT_H_ 00021 00022 // Base Class 00023 #include "HTTPTransport.h" 00024 00025 class IOCHTTPTransport : public HTTPTransport { 00026 private: 00027 char m_url_buffer[IOC_REST_URL_LEN+1]; 00028 00029 public: 00030 IOCHTTPTransport(Logger *error_handler,void *endpoint); 00031 virtual ~IOCHTTPTransport(); 00032 00033 virtual bool httpGet(char *url,char *result,int result_length); 00034 virtual bool httpPut(char *url,char *data,int data_length,char *result,int result_length); 00035 virtual bool httpPost(char *url,char *data,int data_length,char *result,int result_length); 00036 virtual bool httpDelete(char *url,char *data,int data_length); 00037 00038 virtual bool loadEndpoint(char *data,int data_length,char *result,int result_length); 00039 virtual bool updateEndpoint(int ioc_id,char *data,int data_length,char *result,int result_length); 00040 00041 private: 00042 char *createIOCLoadURL(); 00043 char *packageData(char *verb,char *data,int ioc_id); 00044 char *createIOCUpdateURL(int ioc_id); 00045 char *createIOCUpdateURL(int ioc_id,bool useRedirector); 00046 }; 00047 00048 #endif // _IOC_HTTP_TRANSPORT_H_
Generated on Thu Jul 14 2022 16:49:25 by
1.7.2