A client for the SmartREST protocol from Cumulocity.
Fork of MbedSmartRest by
Diff: AbstractDataSink.h
- Revision:
- 7:26524a6a04a1
- Parent:
- 6:71e0439d9af7
- Child:
- 8:762dc52db813
--- a/AbstractDataSink.h Thu Jan 30 11:47:16 2014 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,75 +0,0 @@ -/* - * AbstractDataSink.h - * - * Created on: Nov 1, 2013 - * * Authors: Vincent Wochnik <v.wochnik@gmail.com> - * - * Copyright (c) 2013 Cumulocity GmbH - * - * Permission is hereby granted, free of charge, to any person obtaining - * a copy of this software and associated documentation files (the - * "Software"), to deal in the Software without restriction, including - * without limitation the rights to use, copy, modify, merge, publish, - * distribute, sublicense, and/or sell copies of the Software, and to - * permit persons to whom the Software is furnished to do so, subject to - * the following conditions: - * - * The above copyright notice and this permission notice shall be - * included in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE - * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION - * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION - * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - */ - -#ifndef ABSTRACTDATASINK_H -#define ABSTRACTDATASINK_H - -#include <stddef.h> - -/* - * The AbstractDataSink class provides a way to write data to a - * connection. - */ -class AbstractDataSink -{ -public: - virtual ~AbstractDataSink() - { - } - - /** - * Writes a single character. - * @param c the character to write - * @return the number of characters written, in this case 1 or 0 - */ - virtual size_t write(char c) = 0; - - /** - * Writes a buffer. - * @param buf the buffer to write - * @param length the length of the buffer in bytes - * @return the number of characters written - */ - virtual size_t write(void *buf, size_t length) = 0; - - /** - * Writes a character string. - * @param str the string to write - * @return the number of characters written - */ - virtual size_t write(const char *str) = 0; - - /** - * Writes a number with base 10. - * @param number the number to write - * @return the number of digits written - */ - virtual size_t write(unsigned long number) = 0; -}; - -#endif