From 2818b8516a8261787ecb184f36f892aa764a42ff Mon Sep 17 00:00:00 2001
From: iluican
Date: Wed, 23 Sep 2015 10:28:12 -0700
Subject: [PATCH 1/4] Fixed Windows paho build.
---
c/build_all/windows/build_paho.cmd | 1 -
1 file changed, 1 deletion(-)
diff --git a/c/build_all/windows/build_paho.cmd b/c/build_all/windows/build_paho.cmd
index 00164d2d..96311c61 100644
--- a/c/build_all/windows/build_paho.cmd
+++ b/c/build_all/windows/build_paho.cmd
@@ -105,7 +105,6 @@ rem ----------------------------------------------------------------------------
pushd %paho-build-root%
if exist "%programfiles(x86)%\MSBuild\14.0\\." (
-(
msbuild ".\Windows Build\paho-mqtt3cs\paho-mqtt3cs.vcxproj" /p:Configuration=Debug;PlatformToolset=v140
goto paho_build_done
)
From d8dd8fab1d57d2e54d7cdf972ded7a91b3b44bee Mon Sep 17 00:00:00 2001
From: iluican
Date: Wed, 23 Sep 2015 10:28:12 -0700
Subject: [PATCH 2/4] Fixed Windows paho build.
---
c/build_all/windows/build_paho.cmd | 1 -
1 file changed, 1 deletion(-)
diff --git a/c/build_all/windows/build_paho.cmd b/c/build_all/windows/build_paho.cmd
index 00164d2d..96311c61 100644
--- a/c/build_all/windows/build_paho.cmd
+++ b/c/build_all/windows/build_paho.cmd
@@ -105,7 +105,6 @@ rem ----------------------------------------------------------------------------
pushd %paho-build-root%
if exist "%programfiles(x86)%\MSBuild\14.0\\." (
-(
msbuild ".\Windows Build\paho-mqtt3cs\paho-mqtt3cs.vcxproj" /p:Configuration=Debug;PlatformToolset=v140
goto paho_build_done
)
From 16db009e1f806996927f2d60128b4bf4e0374093 Mon Sep 17 00:00:00 2001
From: Rajasekharan Vengalil
Date: Wed, 23 Sep 2015 11:13:16 -0700
Subject: [PATCH 3/4] Update API docs for Node.js device library
This commit moves the generated documentation files for the Node.js device
library to node/device/doc/api_reference. It also includes changes to the
document generation batch file to require installation of `jsdoc` on the
PC a pre-requisite.
---
build/docs/gen_jsdocs.cmd | 12 +-
build/docs/iot-doc-template/publish.js | 2 +-
...jsdoc.conf.json => jsdoc-device.conf.json} | 15 +-
build/docs/node-main-page-device.md | 9 +
build/docs/node-main-page.md | 15 -
build/gen_docs.cmd | 4 +-
.../common_authorization.js.html | 198 --
.../common_properties.js.html | 112 -
.../1.0.0-preview.1.0.0/index.html | 75 -
.../1.0.0-preview.1.0.0/iothub.js.html | 76 -
.../module-adapters_https-Https.html | 2090 -----------------
.../module-adapters_https.html | 170 --
...dule-common_authorization-DeviceToken.html | 379 ---
...ule-common_authorization-ServiceToken.html | 375 ---
.../module-common_authorization-Token.html | 284 ---
.../module-common_authorization.html | 184 --
.../module-common_message.html | 176 --
.../module-common_properties-Properties.html | 442 ----
.../module-common_properties.html | 166 --
.../module-device_client.html | 178 --
.../1.0.0-preview.1.0.0/module-iothub.html | 162 --
.../module-service_registry.html | 172 --
.../service_registry.js.html | 247 --
node/common/lib/https.js | 130 -
node/common/lib/message.js | 15 -
node/device/Jakefile | 2 +-
node/device/device.js | 38 +
.../doc/api_reference/Client.html} | 38 +-
.../doc/api_reference/Https.html} | 775 +++---
.../doc/api_reference/Message.html} | 18 +-
.../api_reference/common_lib_https.js.html} | 144 +-
.../api_reference/common_lib_message.js.html} | 23 +-
.../doc/api_reference/device_device.js.html | 98 +
.../api_reference/device_lib_client.js.html} | 46 +-
.../fonts/OpenSans-Bold-webfont.eot | Bin
.../fonts/OpenSans-Bold-webfont.svg | 0
.../fonts/OpenSans-Bold-webfont.woff | Bin
.../fonts/OpenSans-BoldItalic-webfont.eot | Bin
.../fonts/OpenSans-BoldItalic-webfont.svg | 0
.../fonts/OpenSans-BoldItalic-webfont.woff | Bin
.../fonts/OpenSans-Italic-webfont.eot | Bin
.../fonts/OpenSans-Italic-webfont.svg | 0
.../fonts/OpenSans-Italic-webfont.woff | Bin
.../fonts/OpenSans-Light-webfont.eot | Bin
.../fonts/OpenSans-Light-webfont.svg | 0
.../fonts/OpenSans-Light-webfont.woff | Bin
.../fonts/OpenSans-LightItalic-webfont.eot | Bin
.../fonts/OpenSans-LightItalic-webfont.svg | 0
.../fonts/OpenSans-LightItalic-webfont.woff | Bin
.../fonts/OpenSans-Regular-webfont.eot | Bin
.../fonts/OpenSans-Regular-webfont.svg | 0
.../fonts/OpenSans-Regular-webfont.woff | Bin
node/device/doc/api_reference/index.html | 67 +
.../module-azure-iot-device.html | 165 ++
.../doc/api_reference}/scripts/linenumber.js | 0
.../scripts/prettify/Apache-License-2.0.txt | 0
.../scripts/prettify/lang-css.js | 0
.../scripts/prettify/prettify.js | 0
.../api_reference}/styles/jsdoc-default.css | 0
.../api_reference}/styles/prettify-jsdoc.css | 0
.../styles/prettify-tomorrow.css | 0
node/device/lib/client.js | 38 -
node/service/Jakefile | 2 +-
63 files changed, 828 insertions(+), 6314 deletions(-)
rename build/docs/{jsdoc.conf.json => jsdoc-device.conf.json} (61%)
create mode 100644 build/docs/node-main-page-device.md
delete mode 100644 build/docs/node-main-page.md
delete mode 100644 node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/common_authorization.js.html
delete mode 100644 node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/common_properties.js.html
delete mode 100644 node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/index.html
delete mode 100644 node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/iothub.js.html
delete mode 100644 node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-adapters_https-Https.html
delete mode 100644 node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-adapters_https.html
delete mode 100644 node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-common_authorization-DeviceToken.html
delete mode 100644 node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-common_authorization-ServiceToken.html
delete mode 100644 node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-common_authorization-Token.html
delete mode 100644 node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-common_authorization.html
delete mode 100644 node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-common_message.html
delete mode 100644 node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-common_properties-Properties.html
delete mode 100644 node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-common_properties.html
delete mode 100644 node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-device_client.html
delete mode 100644 node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-iothub.html
delete mode 100644 node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-service_registry.html
delete mode 100644 node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/service_registry.js.html
rename node/{apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-device_client-Client.html => device/doc/api_reference/Client.html} (83%)
rename node/{apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-service_registry-Registry.html => device/doc/api_reference/Https.html} (50%)
rename node/{apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-common_message-Message.html => device/doc/api_reference/Message.html} (80%)
rename node/{apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/adapters_https.js.html => device/doc/api_reference/common_lib_https.js.html} (79%)
rename node/{apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/common_message.js.html => device/doc/api_reference/common_lib_message.js.html} (72%)
create mode 100644 node/device/doc/api_reference/device_device.js.html
rename node/{apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/device_client.js.html => device/doc/api_reference/device_lib_client.js.html} (77%)
rename node/{apidocs/azure-iot-sdk/1.0.0-preview.1.0.0 => device/doc/api_reference}/fonts/OpenSans-Bold-webfont.eot (100%)
rename node/{apidocs/azure-iot-sdk/1.0.0-preview.1.0.0 => device/doc/api_reference}/fonts/OpenSans-Bold-webfont.svg (100%)
rename node/{apidocs/azure-iot-sdk/1.0.0-preview.1.0.0 => device/doc/api_reference}/fonts/OpenSans-Bold-webfont.woff (100%)
rename node/{apidocs/azure-iot-sdk/1.0.0-preview.1.0.0 => device/doc/api_reference}/fonts/OpenSans-BoldItalic-webfont.eot (100%)
rename node/{apidocs/azure-iot-sdk/1.0.0-preview.1.0.0 => device/doc/api_reference}/fonts/OpenSans-BoldItalic-webfont.svg (100%)
rename node/{apidocs/azure-iot-sdk/1.0.0-preview.1.0.0 => device/doc/api_reference}/fonts/OpenSans-BoldItalic-webfont.woff (100%)
rename node/{apidocs/azure-iot-sdk/1.0.0-preview.1.0.0 => device/doc/api_reference}/fonts/OpenSans-Italic-webfont.eot (100%)
rename node/{apidocs/azure-iot-sdk/1.0.0-preview.1.0.0 => device/doc/api_reference}/fonts/OpenSans-Italic-webfont.svg (100%)
rename node/{apidocs/azure-iot-sdk/1.0.0-preview.1.0.0 => device/doc/api_reference}/fonts/OpenSans-Italic-webfont.woff (100%)
rename node/{apidocs/azure-iot-sdk/1.0.0-preview.1.0.0 => device/doc/api_reference}/fonts/OpenSans-Light-webfont.eot (100%)
rename node/{apidocs/azure-iot-sdk/1.0.0-preview.1.0.0 => device/doc/api_reference}/fonts/OpenSans-Light-webfont.svg (100%)
rename node/{apidocs/azure-iot-sdk/1.0.0-preview.1.0.0 => device/doc/api_reference}/fonts/OpenSans-Light-webfont.woff (100%)
rename node/{apidocs/azure-iot-sdk/1.0.0-preview.1.0.0 => device/doc/api_reference}/fonts/OpenSans-LightItalic-webfont.eot (100%)
rename node/{apidocs/azure-iot-sdk/1.0.0-preview.1.0.0 => device/doc/api_reference}/fonts/OpenSans-LightItalic-webfont.svg (100%)
rename node/{apidocs/azure-iot-sdk/1.0.0-preview.1.0.0 => device/doc/api_reference}/fonts/OpenSans-LightItalic-webfont.woff (100%)
rename node/{apidocs/azure-iot-sdk/1.0.0-preview.1.0.0 => device/doc/api_reference}/fonts/OpenSans-Regular-webfont.eot (100%)
rename node/{apidocs/azure-iot-sdk/1.0.0-preview.1.0.0 => device/doc/api_reference}/fonts/OpenSans-Regular-webfont.svg (100%)
rename node/{apidocs/azure-iot-sdk/1.0.0-preview.1.0.0 => device/doc/api_reference}/fonts/OpenSans-Regular-webfont.woff (100%)
create mode 100644 node/device/doc/api_reference/index.html
create mode 100644 node/device/doc/api_reference/module-azure-iot-device.html
rename node/{apidocs/azure-iot-sdk/1.0.0-preview.1.0.0 => device/doc/api_reference}/scripts/linenumber.js (100%)
rename node/{apidocs/azure-iot-sdk/1.0.0-preview.1.0.0 => device/doc/api_reference}/scripts/prettify/Apache-License-2.0.txt (100%)
rename node/{apidocs/azure-iot-sdk/1.0.0-preview.1.0.0 => device/doc/api_reference}/scripts/prettify/lang-css.js (100%)
rename node/{apidocs/azure-iot-sdk/1.0.0-preview.1.0.0 => device/doc/api_reference}/scripts/prettify/prettify.js (100%)
rename node/{apidocs/azure-iot-sdk/1.0.0-preview.1.0.0 => device/doc/api_reference}/styles/jsdoc-default.css (100%)
rename node/{apidocs/azure-iot-sdk/1.0.0-preview.1.0.0 => device/doc/api_reference}/styles/prettify-jsdoc.css (100%)
rename node/{apidocs/azure-iot-sdk/1.0.0-preview.1.0.0 => device/doc/api_reference}/styles/prettify-tomorrow.css (100%)
diff --git a/build/docs/gen_jsdocs.cmd b/build/docs/gen_jsdocs.cmd
index fdb8e1a1..44a89a23 100644
--- a/build/docs/gen_jsdocs.cmd
+++ b/build/docs/gen_jsdocs.cmd
@@ -8,12 +8,10 @@ set build-root=%~dp0..\..
cd %build-root%\node
rem -----------------------------------------------------------------------------
-rem -- Generate JS docs
+rem -- Generate device JS docs
rem -----------------------------------------------------------------------------
-set jsdoc=node_modules\.bin\jsdoc.cmd
-if not exist %jsdoc% (
- echo "jsdoc" was not found. Please make sure you've run "npm install" in %build-root%\node.
- exit /b 1
-)
+set doc-target-dir=%build-root%\node\device\doc\api_reference
+if exist %doc-target-dir% rd /s /q %doc-target-dir%
+mkdir %doc-target-dir%
+jsdoc -c ..\build\docs\jsdoc-device.conf.json -d %doc-target-dir%
-%jsdoc% -c ..\build\docs\jsdoc.conf.json -d apidocs
\ No newline at end of file
diff --git a/build/docs/iot-doc-template/publish.js b/build/docs/iot-doc-template/publish.js
index a0738ddc..18da2f72 100644
--- a/build/docs/iot-doc-template/publish.js
+++ b/build/docs/iot-doc-template/publish.js
@@ -571,7 +571,7 @@ exports.publish = function(taffyData, opts, tutorials) {
var files = find({kind: 'file'}),
packages = find({kind: 'package'});
- generate('Microsoft Azure IoT SDK for Node.js',
+ generate('Microsoft Azure IoT Device SDK for Node.js',
packages.concat(
[{kind: 'mainpage', readme: opts.readme, longname: (opts.mainpagetitle) ? opts.mainpagetitle : 'Main Page'}]
).concat(files),
diff --git a/build/docs/jsdoc.conf.json b/build/docs/jsdoc-device.conf.json
similarity index 61%
rename from build/docs/jsdoc.conf.json
rename to build/docs/jsdoc-device.conf.json
index 360c1c36..aea39447 100644
--- a/build/docs/jsdoc.conf.json
+++ b/build/docs/jsdoc-device.conf.json
@@ -5,15 +5,12 @@
},
"source": {
"include": [
- "package.json",
- "../build/docs/node-main-page.md",
- "src/iothub.js",
- "src/common/message.js",
- "src/common/properties.js",
- "src/common/authorization.js",
- "src/device/client.js",
- "src/adapters/https.js",
- "src/service/registry.js"
+ "../build/docs/node-main-page-device.md",
+ "common/common.js",
+ "common/lib/message.js",
+ "common/lib/https.js",
+ "device/device.js",
+ "device/lib/client.js"
],
"includePattern": ".+\\.js(doc)?$",
"excludePattern": "(^|\\/|\\\\)_"
diff --git a/build/docs/node-main-page-device.md b/build/docs/node-main-page-device.md
new file mode 100644
index 00000000..a4f2e3e3
--- /dev/null
+++ b/build/docs/node-main-page-device.md
@@ -0,0 +1,9 @@
+The Microsoft Azure IoT Device library for Node.js contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
+
+## Features
+
+Device library
+* Sends event data to an IoT Hub, in batches or individually.
+* Receives messages from an IoT Hub.
+* Uses HTTPS to communicate with IoT Hubs. AMQPS support is coming soon.
+
diff --git a/build/docs/node-main-page.md b/build/docs/node-main-page.md
deleted file mode 100644
index 09510c7c..00000000
--- a/build/docs/node-main-page.md
+++ /dev/null
@@ -1,15 +0,0 @@
-The Microsoft Azure IoT device libraries for Node.js contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services. The libraries also include code to manage your IoT Hub service.
-
-## Features
-
-Device libraries
-* Sends event data to Azure IoT based services.
-* Maps server commands to device functions.
-* Buffers data when network connection is down.
-* Batches messages to improve communication efficiency.
-* Supports pluggable transport protocols. HTTP and AMQP protocols are available now, with more coming soon.
-* Supports pluggable serialization methods. JSON is available now, with more coming soon.
-
-Service libraries
-* A service client you can use to send cloud-to-device commands from IoT Hub to your devices.
-* A registry manager that you can use to manage the contents of the IoT Hub device identity registry.
diff --git a/build/gen_docs.cmd b/build/gen_docs.cmd
index bd885624..40992a82 100644
--- a/build/gen_docs.cmd
+++ b/build/gen_docs.cmd
@@ -10,7 +10,7 @@ cd %build-root%\build\docs
rem -----------------------------------------------------------------------------
rem -- Check for environment pre-requisites. This script requires
rem -- that the following programs work:
-rem -- doxygen, git, node, javadoc, mvn
+rem -- doxygen, git, node, javadoc, mvn, jsdoc
rem -----------------------------------------------------------------------------
call :checkExists git
if not %errorlevel%==0 exit /b %errorlevel%
@@ -24,6 +24,8 @@ call :checkExists javadoc
if not %errorlevel%==0 exit /b %errorlevel%
call :checkExists mvn
if not %errorlevel%==0 exit /b %errorlevel%
+call :checkExists jsdoc
+if not %errorlevel%==0 exit /b %errorlevel%
rem -----------------------------------------------------------------------------
rem -- Generate C API docs
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/common_authorization.js.html b/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/common_authorization.js.html
deleted file mode 100644
index 7cb46cda..00000000
--- a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/common_authorization.js.html
+++ /dev/null
@@ -1,198 +0,0 @@
-
-
-
-
- JSDoc: Source: common/authorization.js
-
-
-
-
-
-
-
-
-
-
-
-
Source: common/authorization.js
-
-
-
-
-
-
-
- // Copyright (c) Microsoft. All rights reserved.
-// Licensed under the MIT license. See LICENSE file in the project root for full license information.
-
-/**
- * Functions in the authorization module are used to generate shared-access
- * signature (SAS) tokens, which can be inserted into the `Authorization`
- * header of HTTP requests to Azure IoT Hub.
- *
- * @example
- * var auth = require('./src/common/authorization');
- *
- * var token = new auth.DeviceToken('hostname', deviceId, deviceKey, oneHourFromNow());
- * console.log(token.toString());
- *
- * token = new auth.ServiceToken('hostname', policyName, policyKey, oneHourFromNow());
- * console.log(token.toString());
- *
- * @module common/authorization
- * @see {@link https://msdn.microsoft.com/en-us/library/azure/dn170477.aspx|Shared Access Signature Authentication with Service Bus}
- */
-
-'use strict';
-
-var internal = require('./authorization_internals');
-
-/**
- * @class Token
- * @classdesc Constructs a `Token` object.
- * @param {String} resourceUri The resource URI to encode into the token
- * @param {String} keyName An identifier associated with the key
- * @param {String} key A base64-encoded key value
- * @param {String} expiry An integer value representing the number
- * of seconds since the epoch 00:00:00 UTC
- * on 1 January 1970.
- */
-/*Codes_SRS_NODE_COMMON_AUTHORIZATION_05_001: [The Token constructor shall accept four arguments:
-resourceUri - the resource URI to encode into the token
-keyName - an identifier associated with the key
-key - a base64-encoded key value
-expiry - an integer value representing the number of seconds since the epoch 00:00:00 UTC on 1 January 1970.]*/
-function Token(resourceUri, keyName, key, expiry) {
-
- /*Codes_SRS_NODE_COMMON_AUTHORIZATION_05_003: [The toString method shall return a shared-access signature token of the form:
- SharedAccessSignature sr=<resourceUri>&sig=<urlEncodedSignature>&se=<expiry>&skn=<urlEncodedKeyName>]*/
- this.toString = function () {
- var hash = internal.hmacHash(key, internal.stringToSign(resourceUri, expiry));
- return 'SharedAccessSignature ' +
- 'sr=' + resourceUri +
- '&sig=' + internal.encodeUriComponentStrict(hash) +
- '&se=' + expiry +
- '&skn=' + internal.encodeUriComponentStrict(keyName);
- };
-
- function throwRef(name, value) {
- throw new ReferenceError('Argument \'' + name + '\' is ' + value);
- }
-
- /*Codes_SRS_NODE_COMMON_AUTHORIZATION_05_002: [If resourceUri, key, or expiry are falsy (i.e., undefined, null, or empty), the Token constructor shall throw a reference exception.] Note that keyName may be falsy.*/
- if (!resourceUri) throwRef('resourceUri', resourceUri);
- if (!key) throwRef('key', key);
- if (!expiry) throwRef('expiry', expiry);
- /*Codes_SRS_NODE_COMMON_AUTHORIZATION_05_008: [If the keyName argument to the Token constructor was falsy, <urlEncodedKeyName> shall be empty.]*/
- keyName = keyName || '';
-}
-
-/**
- * @class DeviceToken
- * @classdesc The `DeviceToken` constructor function returns a token object
- * that is suitable for device operations such as sending events
- * or receiving messages. This constructor delegates to the
- * {@linkcode Token} constructor.
- * @param {String} host The host part of the resource URI to encode
- * into the token
- * @param {String} deviceId The device identifier. This is URI encoded and
- * combined with `host` parameter and passed as the
- * `resourceUri` parameter to the `Token`
- * constructor like so:
- * `<host>/devices/<uri encoded device id>`
- * @param {String} key A base64-encoded key value
- * @param {String} expiry An integer value representing the number
- * of seconds since the epoch 00:00:00 UTC
- * on 1 January 1970.
- */
-/*Codes_SRS_NODE_COMMON_AUTHORIZATION_05_009: [DeviceToken shall return an object created as if by passing the following arguments to the Token constructor:
-resourceUri - <host>/devices/<urlEncodedDeviceId>
-keyName - null
-key - <key>
-expiry - <expiry>]*/
-function DeviceToken(host, deviceId, key, expiry) {
- var uri = internal.deviceResourceUri(host, deviceId);
- Token.call(this, uri, null, key, expiry);
-}
-
-DeviceToken.prototype = Object.create(Token.prototype);
-DeviceToken.prototype.constructor = DeviceToken;
-
-/**
- * The `toString` method returns a shared-access signature token of the form:
- * ```
- * SharedAccessSignature sr=<resourceUri>&sig=<urlEncodedSignature>&se=<expiry>&skn=<urlEncodedKeyName>
- * ```
- */
-DeviceToken.prototype.toString = function toString() {
- Token.prototype.toString.call(this);
-};
-
-/**
- * @class ServiceToken
- * @classdesc The `ServiceToken` constructor function returns a token object
- * that is suitable for service operations such as adding, removing,
- * updating or reading device identities, or sending messages. This
- * constructor delegates to the {@linkcode Token} constructor.
- * @param {String} host Used as the resource URI to encode into the
- * token
- * @param {String} policy An identifier associated with the key
- * @param {String} key A base64-encoded key value
- * @param {String} expiry An integer value representing the number
- * of seconds since the epoch 00:00:00 UTC
- * on 1 January 1970.
- */
-/*Codes_SRS_NODE_COMMON_AUTHORIZATION_05_010: [ServiceToken shall return an object created as if by passing the following arguments to the Token constructor:
-resourceUri - <host>
-keyName - <policy>
-key - <key>
-expiry - <expiry>]*/
-function ServiceToken(host, policy, key, expiry) {
- var uri = internal.serviceResourceUri(host);
- Token.call(this, uri, policy, key, expiry);
-}
-
-ServiceToken.prototype = Object.create(Token.prototype);
-ServiceToken.prototype.constructor = ServiceToken;
-
-/**
- * The `toString` method returns a shared-access signature token of the form:
- * ```
- * SharedAccessSignature sr=<resourceUri>&sig=<urlEncodedSignature>&se=<expiry>&skn=<urlEncodedKeyName>
- * ```
- */
-ServiceToken.prototype.toString = function toString() {
- Token.prototype.toString.call(this);
-};
-
-
-module.exports = {
- Token: Token,
- DeviceToken: DeviceToken,
- ServiceToken: ServiceToken
-};
-
-
-
-
-
-
-
-
-
-
- Modules Classes
-
-
-
-
-
- Documentation generated by JSDoc 3.3.2 on Fri Sep 18 2015 22:09:45 GMT-0700 (Pacific Daylight Time)
-
-
-
-
-
-
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/common_properties.js.html b/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/common_properties.js.html
deleted file mode 100644
index 2a25e3d7..00000000
--- a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/common_properties.js.html
+++ /dev/null
@@ -1,112 +0,0 @@
-
-
-
-
- JSDoc: Source: common/properties.js
-
-
-
-
-
-
-
-
-
-
-
-
Source: common/properties.js
-
-
-
-
-
-
-
- // Copyright (c) Microsoft. All rights reserved.
-// Licensed under the MIT license. See LICENSE file in the project root for full license information.
-
-/**
- * The `properties` module exports the {@linkcode Properties} class which
- * is a collection type that allows you to store a collection of user
- * defined properties.
- *
- * @module common/properties
- */
-
-'use strict';
-
-/**
- * @class Properties
- * @classdesc Collection of user defined properties. Values can only be
- * strings.
- */
-var Properties = function () {
- this.propertyList = [];
-};
-
-/**
- * Adds the key-value pair to the collection. The strings `'Authorization'`
- * and `'iothub-to'` are considered as reserved key names and will cause the
- * function to return `false` if those key names are used. Prefixes the
- * string `'iothub-app-'` to the key before adding it to the collection.
- */
-/* Code_SRS_NODE_IOTHUB_PROPERTIES_07_003: [The getData function shall return a string representation of the body of the message.] */
-Properties.prototype.add = function(itemKey, itemValue) {
- /* Code_SRS_NODE_IOTHUB_PROPERTIES_07_004: [If itemKey contains any of the reserved key names then the add function will return false] */
- if (itemKey === 'Authorization' || itemKey === 'iothub-to') {
- return false;
- }
- else {
- var objProperty = {key:'iothub-app-'+itemKey, value:itemValue};
- this.propertyList.push(objProperty);
- return true;
- }
-};
-
-/**
- * Returns the key-value pair corresponding to the given index.
- * @returns {Object} Key-value pair corresponding to the given index. The
- * returned object has the properties `key` and `value`
- * corresponding to the key and value of the property.
- */
-/* Code_SRS_NODE_IOTHUB_PROPERTIES_07_001: [if the supplied index is greater or equal to zero and the is less than property map length then it shall return the property object.] */
-Properties.prototype.getItem = function(index) {
- if (index >= 0 && index < this.propertyList.length)
- return this.propertyList[index];
- return undefined;
-};
-
-/**
- * Returns the number of items in the collection.
- */
-/* Code_SRS_NODE_IOTHUB_PROPERTIES_07_002: [Properties.Count shall return the number of items in the Properties map.] */
-Properties.prototype.count = function() {
- return this.propertyList.length;
-};
-
-
-module.exports = Properties;
-
-
-
-
-
-
-
-
-
- Modules Classes
-
-
-
-
-
- Documentation generated by JSDoc 3.3.2 on Fri Sep 18 2015 22:09:45 GMT-0700 (Pacific Daylight Time)
-
-
-
-
-
-
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/index.html b/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/index.html
deleted file mode 100644
index 70d81c25..00000000
--- a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/index.html
+++ /dev/null
@@ -1,75 +0,0 @@
-
-
-
-
- JSDoc: Microsoft Azure IoT SDK for Node.js
-
-
-
-
-
-
-
-
-
-
-
-
Microsoft Azure IoT SDK for Node.js
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- The Microsoft Azure IoT device libraries for Node.js contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services. The libraries also include code to manage your IoT Hub service.
-Features Device libraries
-
-Sends event data to Azure IoT based services.
-Maps server commands to device functions.
-Buffers data when network connection is down.
-Batches messages to improve communication efficiency.
-Supports pluggable transport protocols. HTTP and AMQP protocols are available now, with more coming soon.
-Supports pluggable serialization methods. JSON is available now, with more coming soon.
-
-Service libraries
-
-A service client you can use to send cloud-to-device commands from IoT Hub to your devices.
-A registry manager that you can use to manage the contents of the IoT Hub device identity registry.
-
-
-
-
-
-
-
-
-
-
-
- Modules Classes
-
-
-
-
-
- Documentation generated by JSDoc 3.3.2 on Fri Sep 18 2015 22:09:45 GMT-0700 (Pacific Daylight Time)
-
-
-
-
-
-
\ No newline at end of file
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/iothub.js.html b/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/iothub.js.html
deleted file mode 100644
index 683c97db..00000000
--- a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/iothub.js.html
+++ /dev/null
@@ -1,76 +0,0 @@
-
-
-
-
- JSDoc: Source: iothub.js
-
-
-
-
-
-
-
-
-
-
-
-
Source: iothub.js
-
-
-
-
-
-
-
- // Copyright (c) Microsoft. All rights reserved.
-// Licensed under the MIT license. See LICENSE file in the project root for full license information.
-
-/**
- * The `iothub` module provides exports for the following sub-modules:
- * - [common/message]{@link module:common/message}
- * - [device/client]{@link module:device/client}
- * - [service/registry]{@link module:service/registry}
- *
- * @module iothub
- */
-
-'use strict';
-
-module.exports = {
-
- Message: require('./common/message'),
-
- device: {
- Client: require('./device/client')
- },
-
- service: {
- Device: require('./service/device'),
- Registry: require('./service/registry')
- }
-
-};
-
-
-
-
-
-
-
-
-
- Modules Classes
-
-
-
-
-
- Documentation generated by JSDoc 3.3.2 on Fri Sep 18 2015 22:09:45 GMT-0700 (Pacific Daylight Time)
-
-
-
-
-
-
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-adapters_https-Https.html b/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-adapters_https-Https.html
deleted file mode 100644
index 893a151d..00000000
--- a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-adapters_https-Https.html
+++ /dev/null
@@ -1,2090 +0,0 @@
-
-
-
-
- JSDoc: Class: Https
-
-
-
-
-
-
-
-
-
-
-
-
Class: Https
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Constructor
-
-
-
new Https()
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Source:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Methods
-
-
-
-
-
-
- createDevice(path, deviceInfo, config, done)
-
-
-
-
-
-
-
Creates an IoT Hub device.
-
-
-
-
-
-
-
-
-
-
- Parameters:
-
-
-
-
-
-
- Name
-
-
- Type
-
-
-
-
-
- Description
-
-
-
-
-
-
-
-
- path
-
-
-
-
-
-String
-
-
-
-
-
-
-
-
-
- The HTTP URL to send the request to
-
-
-
-
-
-
- deviceInfo
-
-
-
-
-
-String
-
-
-
-
-
-
-
-
-
- Device metadata serialized as JSON
-
-
-
-
-
-
- config
-
-
-
-
-
-Object
-
-
-
-
-
-
-
-
-
- This is a dictionary containing the
- following keys and values:
-
-
-
-Key
-Value
-
-
-
-
-host
-The host URL of the Azure IoT Hub
-
-
-hubName
-The name of the Azure IoT Hub
-
-
-keyName
-The identifier of the device that is being connected to
-
-
-key
-The shared access key auth
-
-
-
-
-
-
-
-
-
- done
-
-
-
-
-
-function
-
-
-
-
-
-
-
-
-
- The callback to be invoked when
- createDevice
completes execution.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Source:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- deleteDevice(path, config, done)
-
-
-
-
-
-
-
This method removes a device with the given ID.
-
-
-
-
-
-
-
-
-
-
- Parameters:
-
-
-
-
-
-
- Name
-
-
- Type
-
-
-
-
-
- Description
-
-
-
-
-
-
-
-
- path
-
-
-
-
-
-String
-
-
-
-
-
-
-
-
-
- The HTTP URL to send the request to
-
-
-
-
-
-
- config
-
-
-
-
-
-Object
-
-
-
-
-
-
-
-
-
- This is a dictionary containing the
- following keys and values:
-
-
-
-Key
-Value
-
-
-
-
-host
-The host URL of the Azure IoT Hub
-
-
-hubName
-The name of the Azure IoT Hub
-
-
-keyName
-The identifier of the device that is being connected to
-
-
-key
-The shared access key auth
-
-
-
-
-
-
-
-
-
- done
-
-
-
-
-
-function
-
-
-
-
-
-
-
-
-
- The callback to be invoked when
- deleteDevice
completes execution.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Source:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- getDevice(path, config, done)
-
-
-
-
-
-
-
This method requests metadata (in the form of a Device object) about the
-device with the given ID.
-
-
-
-
-
-
-
-
-
-
- Parameters:
-
-
-
-
-
-
- Name
-
-
- Type
-
-
-
-
-
- Description
-
-
-
-
-
-
-
-
- path
-
-
-
-
-
-String
-
-
-
-
-
-
-
-
-
- The HTTP URL to send the request to
-
-
-
-
-
-
- config
-
-
-
-
-
-Object
-
-
-
-
-
-
-
-
-
- This is a dictionary containing the
- following keys and values:
-
-
-
-Key
-Value
-
-
-
-
-host
-The host URL of the Azure IoT Hub
-
-
-hubName
-The name of the Azure IoT Hub
-
-
-keyName
-The identifier of the device that is being connected to
-
-
-key
-The shared access key auth
-
-
-
-
-
-
-
-
-
- done
-
-
-
-
-
-function
-
-
-
-
-
-
-
-
-
- The callback to be invoked when
- getDevice
completes execution.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Source:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- listDevice(path, config, done)
-
-
-
-
-
-
-
This method requests metadata (in the form of a Device object) for the top
-1000 devices in the system.
-
-
-
-
-
-
-
-
-
-
- Parameters:
-
-
-
-
-
-
- Name
-
-
- Type
-
-
-
-
-
- Description
-
-
-
-
-
-
-
-
- path
-
-
-
-
-
-String
-
-
-
-
-
-
-
-
-
- The HTTP URL to send the request to
-
-
-
-
-
-
- config
-
-
-
-
-
-Object
-
-
-
-
-
-
-
-
-
- This is a dictionary containing the
- following keys and values:
-
-
-
-Key
-Value
-
-
-
-
-host
-The host URL of the Azure IoT Hub
-
-
-hubName
-The name of the Azure IoT Hub
-
-
-keyName
-The identifier of the device that is being connected to
-
-
-key
-The shared access key auth
-
-
-
-
-
-
-
-
-
- done
-
-
-
-
-
-function
-
-
-
-
-
-
-
-
-
- The callback to be invoked when
- listDevice
completes execution.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Source:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- receive(config, done)
-
-
-
-
-
-
-
The receive method queries the IoT Hub (as the device indicated in the
-config
parameter) for the next notification in the queue.
-
-
-
-
-
-
-
-
-
-
- Parameters:
-
-
-
-
-
-
- Name
-
-
- Type
-
-
-
-
-
- Description
-
-
-
-
-
-
-
-
- config
-
-
-
-
-
-Object
-
-
-
-
-
-
-
-
-
- This is a dictionary containing the
- following keys and values:
-
-
-
-Key
-Value
-
-
-
-
-host
-The host URL of the Azure IoT Hub
-
-
-hubName
-The name of the Azure IoT Hub
-
-
-keyName
-The identifier of the device that is being connected to
-
-
-key
-The shared access key auth
-
-
-
-
-
-
-
-
-
- done
-
-
-
-
-
-function
-
-
-
-
-
-
-
-
-
- The callback to be invoked when
- receive
completes execution.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Source:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- sendEvent(message, config, done)
-
-
-
-
-
-
-
This method sends an event to the IoT Hub as the device indicated in the
-config
parameter.
-
-
-
-
-
-
-
-
-
-
- Parameters:
-
-
-
-
-
-
- Name
-
-
- Type
-
-
-
-
-
- Description
-
-
-
-
-
-
-
-
- message
-
-
-
-
-
-Message
-
-
-
-
-
-
-
-
-
- The message
- to be sent.
-
-
-
-
-
-
- config
-
-
-
-
-
-Object
-
-
-
-
-
-
-
-
-
- This is a dictionary containing the following keys
- and values:
-
-
-
-Key
-Value
-
-
-
-
-host
-The host URL of the Azure IoT Hub
-
-
-hubName
-The name of the Azure IoT Hub
-
-
-keyName
-The identifier of the device that is being connected to
-
-
-key
-The shared access key auth
-
-
-
-
-
-
-
-
-
- done
-
-
-
-
-
-function
-
-
-
-
-
-
-
-
-
- The callback to be invoked when sendEvent
- completes execution.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Source:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- sendEventBatch(messages, config, done)
-
-
-
-
-
-
-
The sendEventBatch
method sends a list of event messages to the IoT Hub
-as the device indicated in the config
parameter.
-
-
-
-
-
-
-
-
-
-
- Parameters:
-
-
-
-
-
-
- Name
-
-
- Type
-
-
-
-
-
- Description
-
-
-
-
-
-
-
-
- messages
-
-
-
-
-
-array.<Message>
-
-
-
-
-
-
-
-
-
- Array of Message
- objects to be sent as a batch.
-
-
-
-
-
-
- config
-
-
-
-
-
-Object
-
-
-
-
-
-
-
-
-
- This is a dictionary containing the
- following keys and values:
-
-
-
-Key
-Value
-
-
-
-
-host
-The host URL of the Azure IoT Hub
-
-
-hubName
-The name of the Azure IoT Hub
-
-
-keyName
-The identifier of the device that is being connected to
-
-
-key
-The shared access key auth
-
-
-
-
-
-
-
-
-
- done
-
-
-
-
-
-function
-
-
-
-
-
-
-
-
-
- The callback to be invoked when
- sendEventBatch
completes execution.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Source:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- sendFeedback(action, lockToken, config, done)
-
-
-
-
-
-
-
This method sends the feedback action to the IoT Hub.
-
-
-
-
-
-
-
-
-
-
- Parameters:
-
-
-
-
-
-
- Name
-
-
- Type
-
-
-
-
-
- Description
-
-
-
-
-
-
-
-
- action
-
-
-
-
-
-String
-
-
-
-
-
-
-
-
-
- This parameter must be equal to one of the
- following possible values:
-
-
-
-Value
-Action
-
-
-
-
-abandon
-Directs the IoT Hub to re-enqueue a notification message so it may be received again later.
-
-
-reject
-Directs the IoT Hub to delete a notification message from the queue and record that it was rejected.
-
-
-complete
-Directs the IoT Hub to delete a notification message from the queue and record that it was accepted.
-
-
-
-
-
-
-
-
-
- lockToken
-
-
-
-
-
-String
-
-
-
-
-
-
-
-
-
- An HTTP E-Tag used to manage concurrent updates
- to the device
-
-
-
-
-
-
- config
-
-
-
-
-
-Object
-
-
-
-
-
-
-
-
-
- This is a dictionary containing the
- following keys and values:
-
-
-
-Key
-Value
-
-
-
-
-host
-The host URL of the Azure IoT Hub
-
-
-hubName
-The name of the Azure IoT Hub
-
-
-keyName
-The identifier of the device that is being connected to
-
-
-key
-The shared access key auth
-
-
-
-
-
-
-
-
-
- done
-
-
-
-
-
-function
-
-
-
-
-
-
-
-
-
- The callback to be invoked when
- sendFeedback
completes execution.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Source:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- updateDevice(path, deviceInfo, config, done)
-
-
-
-
-
-
-
Updates an IoT Hub device.
-
-
-
-
-
-
-
-
-
-
- Parameters:
-
-
-
-
-
-
- Name
-
-
- Type
-
-
-
-
-
- Description
-
-
-
-
-
-
-
-
- path
-
-
-
-
-
-String
-
-
-
-
-
-
-
-
-
- The HTTP URL to send the request to
-
-
-
-
-
-
- deviceInfo
-
-
-
-
-
-String
-
-
-
-
-
-
-
-
-
- Device metadata serialized as JSON
-
-
-
-
-
-
- config
-
-
-
-
-
-Object
-
-
-
-
-
-
-
-
-
- This is a dictionary containing the
- following keys and values:
-
-
-
-Key
-Value
-
-
-
-
-host
-The host URL of the Azure IoT Hub
-
-
-hubName
-The name of the Azure IoT Hub
-
-
-keyName
-The identifier of the device that is being connected to
-
-
-key
-The shared access key auth
-
-
-
-
-
-
-
-
-
- done
-
-
-
-
-
-function
-
-
-
-
-
-
-
-
-
- The callback to be invoked when
- updateDevice
completes execution.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Source:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Modules Classes
-
-
-
-
-
- Documentation generated by JSDoc 3.3.2 on Fri Sep 18 2015 22:09:45 GMT-0700 (Pacific Daylight Time)
-
-
-
-
-
-
\ No newline at end of file
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-adapters_https.html b/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-adapters_https.html
deleted file mode 100644
index 91aa2e5c..00000000
--- a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-adapters_https.html
+++ /dev/null
@@ -1,170 +0,0 @@
-
-
-
-
- JSDoc: Module: adapters/https
-
-
-
-
-
-
-
-
-
-
-
-
Module: adapters/https
-
-
-
-
-
-
-
-
-
-
-
-
-
-
The https
module provides transport functionality for applications that
-want to communicate with an Azure IoT Hub.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Source:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Example
-
-
'use strict';
var Https = require('./src/iothub_https').Https;
var Message = require('./src/iothub').Message;
function print(err, res) {
if (err) console.log(err.toString());
if (res) console.log(res.statusCode + ' ' + res.statusMessage);
}
var deviceConfig = {
host: 'hostname',
keyName: 'deviceId',
key: 'deviceKey'
};
var devHttps = new Https(deviceConfig);
devHttps.sendEvent(new Message('hello world'), print);
devHttps.receive(function (err, res, msg) {
print(err, res);
if (msg) console.log('Message: ' + msg);
if (!err && res.statusCode !== 204) {
devHttps.sendFeedback('complete', msg.lockToken, print);
}
});
var serviceConfig = {
host: 'hostname',
keyName: 'policy',
key: 'policyKey'
};
var svcHttps = new Https(config);
svcHttps.getDevice('deviceId', function (err, res, dev) {
print(err, res);
if (!err) {
console.log(dev.id);
}
});
-
-
-
-
-
-
-
-
-
-
-
-
- Classes
-
-
- Https
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Modules Classes
-
-
-
-
-
- Documentation generated by JSDoc 3.3.2 on Fri Sep 18 2015 22:09:45 GMT-0700 (Pacific Daylight Time)
-
-
-
-
-
-
\ No newline at end of file
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-common_authorization-DeviceToken.html b/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-common_authorization-DeviceToken.html
deleted file mode 100644
index 5c63d2f9..00000000
--- a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-common_authorization-DeviceToken.html
+++ /dev/null
@@ -1,379 +0,0 @@
-
-
-
-
- JSDoc: Class: DeviceToken
-
-
-
-
-
-
-
-
-
-
-
-
Class: DeviceToken
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Constructor
-
-
-
new DeviceToken(host, deviceId, key, expiry)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Parameters:
-
-
-
-
-
-
- Name
-
-
- Type
-
-
-
-
-
- Description
-
-
-
-
-
-
-
-
- host
-
-
-
-
-
-String
-
-
-
-
-
-
-
-
-
- The host part of the resource URI to encode
- into the token
-
-
-
-
-
-
- deviceId
-
-
-
-
-
-String
-
-
-
-
-
-
-
-
-
- The device identifier. This is URI encoded and
- combined with host
parameter and passed as the
- resourceUri
parameter to the Token
- constructor like so:
- <host>/devices/<uri encoded device id>
-
-
-
-
-
-
- key
-
-
-
-
-
-String
-
-
-
-
-
-
-
-
-
- A base64-encoded key value
-
-
-
-
-
-
- expiry
-
-
-
-
-
-String
-
-
-
-
-
-
-
-
-
- An integer value representing the number
- of seconds since the epoch 00:00:00 UTC
- on 1 January 1970.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Source:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Methods
-
-
-
-
-
-
- toString()
-
-
-
-
-
-
-
The toString
method returns a shared-access signature token of the form:
-
SharedAccessSignature sr=<resourceUri>&sig=<urlEncodedSignature>&se=<expiry>&skn=<urlEncodedKeyName>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Source:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Modules Classes
-
-
-
-
-
- Documentation generated by JSDoc 3.3.2 on Fri Sep 18 2015 22:09:45 GMT-0700 (Pacific Daylight Time)
-
-
-
-
-
-
\ No newline at end of file
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-common_authorization-ServiceToken.html b/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-common_authorization-ServiceToken.html
deleted file mode 100644
index 433d5133..00000000
--- a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-common_authorization-ServiceToken.html
+++ /dev/null
@@ -1,375 +0,0 @@
-
-
-
-
- JSDoc: Class: ServiceToken
-
-
-
-
-
-
-
-
-
-
-
-
Class: ServiceToken
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Constructor
-
-
-
new ServiceToken(host, policy, key, expiry)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Parameters:
-
-
-
-
-
-
- Name
-
-
- Type
-
-
-
-
-
- Description
-
-
-
-
-
-
-
-
- host
-
-
-
-
-
-String
-
-
-
-
-
-
-
-
-
- Used as the resource URI to encode into the
- token
-
-
-
-
-
-
- policy
-
-
-
-
-
-String
-
-
-
-
-
-
-
-
-
- An identifier associated with the key
-
-
-
-
-
-
- key
-
-
-
-
-
-String
-
-
-
-
-
-
-
-
-
- A base64-encoded key value
-
-
-
-
-
-
- expiry
-
-
-
-
-
-String
-
-
-
-
-
-
-
-
-
- An integer value representing the number
- of seconds since the epoch 00:00:00 UTC
- on 1 January 1970.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Source:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Methods
-
-
-
-
-
-
- toString()
-
-
-
-
-
-
-
The toString
method returns a shared-access signature token of the form:
-
SharedAccessSignature sr=<resourceUri>&sig=<urlEncodedSignature>&se=<expiry>&skn=<urlEncodedKeyName>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Source:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Modules Classes
-
-
-
-
-
- Documentation generated by JSDoc 3.3.2 on Fri Sep 18 2015 22:09:45 GMT-0700 (Pacific Daylight Time)
-
-
-
-
-
-
\ No newline at end of file
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-common_authorization-Token.html b/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-common_authorization-Token.html
deleted file mode 100644
index b384177b..00000000
--- a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-common_authorization-Token.html
+++ /dev/null
@@ -1,284 +0,0 @@
-
-
-
-
- JSDoc: Class: Token
-
-
-
-
-
-
-
-
-
-
-
-
Class: Token
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Constructor
-
-
-
new Token(resourceUri, keyName, key, expiry)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Parameters:
-
-
-
-
-
-
- Name
-
-
- Type
-
-
-
-
-
- Description
-
-
-
-
-
-
-
-
- resourceUri
-
-
-
-
-
-String
-
-
-
-
-
-
-
-
-
- The resource URI to encode into the token
-
-
-
-
-
-
- keyName
-
-
-
-
-
-String
-
-
-
-
-
-
-
-
-
- An identifier associated with the key
-
-
-
-
-
-
- key
-
-
-
-
-
-String
-
-
-
-
-
-
-
-
-
- A base64-encoded key value
-
-
-
-
-
-
- expiry
-
-
-
-
-
-String
-
-
-
-
-
-
-
-
-
- An integer value representing the number
- of seconds since the epoch 00:00:00 UTC
- on 1 January 1970.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Source:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Modules Classes
-
-
-
-
-
- Documentation generated by JSDoc 3.3.2 on Fri Sep 18 2015 22:09:45 GMT-0700 (Pacific Daylight Time)
-
-
-
-
-
-
\ No newline at end of file
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-common_authorization.html b/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-common_authorization.html
deleted file mode 100644
index 35ee5b43..00000000
--- a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-common_authorization.html
+++ /dev/null
@@ -1,184 +0,0 @@
-
-
-
-
- JSDoc: Module: common/authorization
-
-
-
-
-
-
-
-
-
-
-
-
Module: common/authorization
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Functions in the authorization module are used to generate shared-access
-signature (SAS) tokens, which can be inserted into the Authorization
-header of HTTP requests to Azure IoT Hub.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Source:
-
-
-
-
-
-
- See:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Example
-
-
var auth = require('./src/common/authorization');
var token = new auth.DeviceToken('hostname', deviceId, deviceKey, oneHourFromNow());
console.log(token.toString());
token = new auth.ServiceToken('hostname', policyName, policyKey, oneHourFromNow());
console.log(token.toString());
-
-
-
-
-
-
-
-
-
-
-
-
- Classes
-
-
- DeviceToken
-
-
- ServiceToken
-
-
- Token
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Modules Classes
-
-
-
-
-
- Documentation generated by JSDoc 3.3.2 on Fri Sep 18 2015 22:09:45 GMT-0700 (Pacific Daylight Time)
-
-
-
-
-
-
\ No newline at end of file
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-common_message.html b/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-common_message.html
deleted file mode 100644
index 4c540b93..00000000
--- a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-common_message.html
+++ /dev/null
@@ -1,176 +0,0 @@
-
-
-
-
- JSDoc: Module: common/message
-
-
-
-
-
-
-
-
-
-
-
-
Module: common/message
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Exports the Message object that provides a container for message
-content and properties travelling to and from an IoT Hub.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Source:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Example
-
-
var Message = require('./src/iothub').Message;
var message = new Message('data to send');
message.properties.add('myProperty', 'my property value');
console.log('message content: ' + message.getData());
-
-
-
-
-
-
-
-
-
-
- Requires
-
-
-
-
-
- Classes
-
-
- Message
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Modules Classes
-
-
-
-
-
- Documentation generated by JSDoc 3.3.2 on Fri Sep 18 2015 22:09:45 GMT-0700 (Pacific Daylight Time)
-
-
-
-
-
-
\ No newline at end of file
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-common_properties-Properties.html b/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-common_properties-Properties.html
deleted file mode 100644
index 3dbca580..00000000
--- a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-common_properties-Properties.html
+++ /dev/null
@@ -1,442 +0,0 @@
-
-
-
-
- JSDoc: Class: Properties
-
-
-
-
-
-
-
-
-
-
-
-
Class: Properties
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Constructor
-
-
-
new Properties()
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Source:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Methods
-
-
-
-
-
-
- add()
-
-
-
-
-
-
-
Adds the key-value pair to the collection. The strings 'Authorization'
-and 'iothub-to'
are considered as reserved key names and will cause the
-function to return false
if those key names are used. Prefixes the
-string 'iothub-app-'
to the key before adding it to the collection.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Source:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- count()
-
-
-
-
-
-
-
Returns the number of items in the collection.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Source:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- getItem() → {Object}
-
-
-
-
-
-
-
Returns the key-value pair corresponding to the given index.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Source:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-Returns:
-
-
-
-
Key-value pair corresponding to the given index. The
- returned object has the properties key
and value
- corresponding to the key and value of the property.
-
-
-
-
-
-
- Type
-
-
-
-Object
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Modules Classes
-
-
-
-
-
- Documentation generated by JSDoc 3.3.2 on Fri Sep 18 2015 22:09:45 GMT-0700 (Pacific Daylight Time)
-
-
-
-
-
-
\ No newline at end of file
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-common_properties.html b/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-common_properties.html
deleted file mode 100644
index 2a388882..00000000
--- a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-common_properties.html
+++ /dev/null
@@ -1,166 +0,0 @@
-
-
-
-
- JSDoc: Module: common/properties
-
-
-
-
-
-
-
-
-
-
-
-
Module: common/properties
-
-
-
-
-
-
-
-
-
-
-
-
-
-
The properties
module exports the Properties
class which
-is a collection type that allows you to store a collection of user
-defined properties.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Source:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Classes
-
-
- Properties
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Modules Classes
-
-
-
-
-
- Documentation generated by JSDoc 3.3.2 on Fri Sep 18 2015 22:09:45 GMT-0700 (Pacific Daylight Time)
-
-
-
-
-
-
\ No newline at end of file
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-device_client.html b/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-device_client.html
deleted file mode 100644
index ea71e2c8..00000000
--- a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-device_client.html
+++ /dev/null
@@ -1,178 +0,0 @@
-
-
-
-
- JSDoc: Module: device/client
-
-
-
-
-
-
-
-
-
-
-
-
Module: device/client
-
-
-
-
-
-
-
-
-
-
-
-
-
-
The client
module provides a means for devices to send events to and
-receive notifications from an Azure IoT Hub. The client handles
-communication with the IoT Hub through a transport supplied by the caller
-(e.g., Https
).
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Source:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Example
-
-
var Client = require('./src/iothub').devices.Client;
var Message = require('./src/iothub').Message;
var Https = require('./src/iothub_https').Https;
function print(err, res) {
if (err) console.log(err.toString());
if (res) console.log(res.statusCode + ' ' + res.statusMessage);
}
var config = {
host: 'hostname',
keyName: 'deviceId',
key: 'password'
};
var client = new Client(new Https(config));
client.sendEvent(new Message('hello world'), print);
client.receive (function (err, res, msg) {
print(err, res);
if (msg) console.log('Notification: ' + msg);
if (!err && res.statusCode !== 204) {
client.complete(msg, print);
}
});
-
-
-
-
-
-
-
-
-
-
- Requires
-
-
-
-
-
- Classes
-
-
- Client
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Modules Classes
-
-
-
-
-
- Documentation generated by JSDoc 3.3.2 on Fri Sep 18 2015 22:09:45 GMT-0700 (Pacific Daylight Time)
-
-
-
-
-
-
\ No newline at end of file
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-iothub.html b/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-iothub.html
deleted file mode 100644
index 37a32ec9..00000000
--- a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-iothub.html
+++ /dev/null
@@ -1,162 +0,0 @@
-
-
-
-
- JSDoc: Module: iothub
-
-
-
-
-
-
-
-
-
-
-
-
Module: iothub
-
-
-
-
-
-
-
-
-
-
-
-
-
-
The iothub
module provides exports for the following sub-modules:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Source:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Modules Classes
-
-
-
-
-
- Documentation generated by JSDoc 3.3.2 on Fri Sep 18 2015 22:09:45 GMT-0700 (Pacific Daylight Time)
-
-
-
-
-
-
\ No newline at end of file
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-service_registry.html b/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-service_registry.html
deleted file mode 100644
index 53fba177..00000000
--- a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-service_registry.html
+++ /dev/null
@@ -1,172 +0,0 @@
-
-
-
-
- JSDoc: Module: service/registry
-
-
-
-
-
-
-
-
-
-
-
-
Module: service/registry
-
-
-
-
-
-
-
-
-
-
-
-
-
-
The Registry
provides a means for clients to use the Azure IoT Hub device
-identity service, known as the Registry . A consumer can add, remove,
-update, or read device metadata from the Registry through the transport
-supplied by the caller (e.g., Https
).
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Source:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Example
-
-
'use strict';
var Registry = require('./src/iothub').service.Registry;
var Device = require('./src/iothub').service.Device;
var Https = require('./src/iothub_https').Https;
function print(err, res) {
if (err) console.log(err.toString());
if (res) console.log(res.statusCode + ' ' + res.statusMessage);
}
var connString = ‘Connection String’
var registry = new Registry(connString, new Https());
registry.get('deviceId', function (err, res, dev) {
print(err, res);
if (!err) console.log(dev.id);
});
-
-
-
-
-
-
-
-
-
-
-
-
- Classes
-
-
- Registry
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Modules Classes
-
-
-
-
-
- Documentation generated by JSDoc 3.3.2 on Fri Sep 18 2015 22:09:45 GMT-0700 (Pacific Daylight Time)
-
-
-
-
-
-
\ No newline at end of file
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/service_registry.js.html b/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/service_registry.js.html
deleted file mode 100644
index 741e7cfd..00000000
--- a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/service_registry.js.html
+++ /dev/null
@@ -1,247 +0,0 @@
-
-
-
-
- JSDoc: Source: service/registry.js
-
-
-
-
-
-
-
-
-
-
-
-
Source: service/registry.js
-
-
-
-
-
-
-
- // Copyright (c) Microsoft. All rights reserved.
-// Licensed under the MIT license. See LICENSE file in the project root for full license information.
-
-/**
- * The `Registry` provides a means for clients to use the Azure IoT Hub device
- * identity service, known as the *Registry*. A consumer can add, remove,
- * update, or read device metadata from the Registry through the transport
- * supplied by the caller (e.g., [Https]{@linkcode module:adapters/https.Https}).
- *
- * @example
- * 'use strict';
- * var Registry = require('./src/iothub').service.Registry;
- * var Device = require('./src/iothub').service.Device;
- * var Https = require('./src/iothub_https').Https;
- *
- * function print(err, res) {
- * if (err) console.log(err.toString());
- * if (res) console.log(res.statusCode + ' ' + res.statusMessage);
- * }
- *
- * var connString = ‘Connection String’
- * var registry = new Registry(connString, new Https());
- *
- * registry.get('deviceId', function (err, res, dev) {
- * print(err, res);
- * if (!err) console.log(dev.id);
- * });
- *
- * @module service/registry
- */
-
-'use strict';
-
-var Device = require('./device');
-var Endpoint = require('../common/endpoint');
-
-var HOSTNAME_LEN = "HostName=".length;
-var SAKN_LEN = "SharedAccessKeyName=".length;
-var SAK_LEN = "SharedAccessKey=".length;
-
-function parseConnString(connString)
-{
- var config = {
- host: '',
- hubName: '',
- keyName: '',
- key: ''
- };
- var configArray = connString.split(';');
- configArray.forEach(function(element) {
- var pos = element.indexOf("HostName=");
- if (pos >= 0) {
- config.host = element.substring(pos+HOSTNAME_LEN);
- // Look for the first period
- var periodSeparator = config.host.indexOf('.');
- config.hubName = config.host.substring(0, periodSeparator);
- }
- else if ( (pos = element.indexOf("SharedAccessKeyName=") ) >= 0) {
- config.keyName = element.substring(pos+SAKN_LEN);
- }
- else if ( (pos = element.indexOf("SharedAccessKey=") ) >= 0) {
- config.key = element.substring(pos+SAK_LEN);
- }
- });
- return config;
-}
-
-/**
- * @class Registry
- * @classdesc Constructs a {@linkcode Registry} object with the given IoT
- * registry connection string and `transport` object.
- * @param {String} connString The IoT registry connection string
- * @param {Object} transport An object that implements the interface
- * expected of a transport object. See the
- * file **adapters/devdoc/https_requirements.docm**
- * for information on what the transport
- * object should look like. The {@linkcode Https}
- * class is an implementation that uses HTTP as
- * the communication protocol.
- */
-/*Codes_SRS_NODE_IOTHUB_REGISTRY_05_001: [The Registry constructor shall accept a transport object]*/
-function Registry(connString, transport) {
- this.config = parseConnString(connString);
- this.transport = transport;
-}
-
-/**
- * Creates a device with the given ID.
- * @param {Object} deviceInfo The object must include a `deviceId` property
- * with a valid device identifier.
- * @param {Function} done The callback to be invoked when `create`
- * completes execution.
- */
-Registry.prototype.create = function (deviceInfo, done) {
- /*Codes_SRS_NODE_IOTHUB_REGISTRY_07_001: [The create method shall throw a ReferenceError if the supplied deviceId is not valid.] */
- if (!deviceInfo.deviceId) {
- throw new ReferenceError('Invalid argument \'deviceId\'');
- }
- else {
- var path = Endpoint.devicePath(deviceInfo.deviceId);
- this.transport.createDevice(path, deviceInfo, this.config, function (err, res, msg) {
- /*Codes_SRS_NODE_IOTHUB_REGISTRY_07_002: [When the create method completes, the callback function (indicated by the done argument) shall be invoked with the same arguments as the underlying transport method’s callback, plus a Device object representing the the new device information created from IoT Hub.]*/
- if (err) {
- deviceInfo = undefined;
- }
- else if (msg) {
- deviceInfo = new Device(msg.getData() );
- }
- done(err, res, deviceInfo);
- });
- }
-};
-
-/**
- * Updates an existing device with the given ID.
- * @param {Object} deviceInfo The object must include a `deviceId` property
- * with a valid device identifier of an existing
- * device.
- * @param {Function} done The callback to be invoked when `update`
- * completes execution.
- */
-Registry.prototype.update = function (deviceInfo, done) {
- /* Codes_SRS_NODE_IOTHUB_REGISTRY_07_003: [The update method shall throw a ReferenceError if the supplied deviceInfo.deviceId is not valid.]*/
- if (!deviceInfo.deviceId) {
- throw new ReferenceError('Invalid argument \'deviceId\'');
- }
- else {
- var path = Endpoint.devicePath(deviceInfo.deviceId);
- this.transport.updateDevice(path, deviceInfo, this.config, function sendFromResponse(err, res, msg) {
- /*Codes_SRS_NODE_IOTHUB_REGISTRY_07_004: [When the update method completes, the callback function (indicated by the done argument) shall be invoked with the same arguments as the underlying transport method’s callback, plus a Device object representing the updated device information created from IoT Hub.]*/
- if (err) {
- deviceInfo = undefined;
- }
- else if (msg) {
- deviceInfo = new Device(msg.getData() );
- }
- done(err, res, deviceInfo);
- });
- }
-};
-
-/**
- * This method requests metadata (in the form of a Device object) about the
- * device with the given ID.
- * @param {String} deviceId A valid device identifier
- * @param {Function} done The callback to be invoked when `get`
- * completes execution.
- */
-Registry.prototype.get = function (deviceId, done) {
- /*Codes_SRS_NODE_IOTHUB_REGISTRY_05_002: [The get method shall request metadata for the device (indicated by the id argument) from the IoT Hub registry service via the transport associated with the Registry instance.]*/
- var path = Endpoint.devicePath(deviceId);
- this.transport.getDevice(path, this.config, function (err, res, msg) {
- /*Codes_SRS_NODE_IOTHUB_REGISTRY_05_003: [When the get method completes, the callback function (indicated by the done argument) shall be invoked with the same arguments as the underlying transport method’s callback, plus a Device object representing the device information returned from IoT Hub.]*/
- var dev;
- if (msg) {
- dev = new Device(msg.getData() );
- }
- done(err, res, dev);
- });
-};
-
-/**
- * This method requests metadata (in the form of a Device object) for the top
- * 1000 devices in the system.
- * @param {Function} done The callback to be invoked when `list`
- * completes execution.
- */
-Registry.prototype.list = function (done) {
- /*Codes_SRS_NODE_IOTHUB_REGISTRY_07_005: [When the list method completes, the callback function (indicated by the done argument) shall be invoked with the same arguments as the underlying transport method’s callback, plus a list of Device object in the form of JSON objects.]*/
- var path = Endpoint.devicePath('');
- this.transport.listDevice(path, this.config, function (err, res, msg) {
- var devList = [];
- if (msg) {
- var jsonArray = JSON.parse(msg.getData() );
- jsonArray.forEach(function(jsonElement) {
- /*Codes_SRS_NODE_IOTHUB_REGISTRY_07_006: [The returned JSON object will be converted to a list of Device objects.]*/
- var devItem = new Device(JSON.stringify(jsonElement) );
- devList.push(devItem);
- });
- }
- done(err, res, devList);
- });
-};
-
-/**
- * This method removes a device with the given ID.
- * @param {String} deviceId A valid device identifier
- * @param {Function} done The callback to be invoked when `delete`
- * completes execution.
- */
-Registry.prototype.delete = function (deviceId, done) {
- /*Codes_SRS_NODE_IOTHUB_REGISTRY_07_007: [The delete method shall throw a ReferenceError if the supplied deviceId is not valid. When the delete method completes, the callback function (indicated by the done argument) shall be invoked with the same arguments as the underlying transport method’s callback]*/
- var path = Endpoint.devicePath(deviceId);
- this.transport.deleteDevice(path, this.config, function (err, res, msg) {
- done(err, res);
- });
-};
-
-module.exports = Registry;
-
-
-
-
-
-
-
-
-
- Modules Classes
-
-
-
-
-
- Documentation generated by JSDoc 3.3.2 on Fri Sep 18 2015 22:09:45 GMT-0700 (Pacific Daylight Time)
-
-
-
-
-
-
diff --git a/node/common/lib/https.js b/node/common/lib/https.js
index 153489db..ab4c4dc0 100644
--- a/node/common/lib/https.js
+++ b/node/common/lib/https.js
@@ -1,56 +1,6 @@
// Copyright (c) Microsoft. All rights reserved.
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
-/**
- * The `https` module provides transport functionality for applications that
- * want to communicate with an Azure IoT Hub.
- *
- * @example
- * 'use strict';
- * var Https = require('./src/iothub_https').Https;
- * var Message = require('./src/iothub').Message;
- *
- * function print(err, res) {
- * if (err) console.log(err.toString());
- * if (res) console.log(res.statusCode + ' ' + res.statusMessage);
- * }
- *
- * var deviceConfig = {
- * host: 'hostname',
- * keyName: 'deviceId',
- * key: 'deviceKey'
- * };
- *
- * var devHttps = new Https(deviceConfig);
- *
- * devHttps.sendEvent(new Message('hello world'), print);
- *
- * devHttps.receive(function (err, res, msg) {
- * print(err, res);
- * if (msg) console.log('Message: ' + msg);
- * if (!err && res.statusCode !== 204) {
- * devHttps.sendFeedback('complete', msg.lockToken, print);
- * }
- * });
- *
- * var serviceConfig = {
- * host: 'hostname',
- * keyName: 'policy',
- * key: 'policyKey'
- * };
- *
- * var svcHttps = new Https(config);
- *
- * svcHttps.getDevice('deviceId', function (err, res, dev) {
- * print(err, res);
- * if (!err) {
- * console.log(dev.id);
- * }
- * });
- *
- * @module adapters/https
- */
-
'use strict';
var authorization = require('./authorization.js');
@@ -93,7 +43,6 @@ function constructBatchBody(messages)
/**
* @class Https
- * @alias module:adapters/https.Https
* @classdesc Constructs an {@linkcode Https} object.
*/
/*Codes_SRS_NODE_IOTHUB_HTTPS_05_001: [The Https constructor shall accept a config object with three properties:
@@ -394,22 +343,6 @@ Https.prototype.sendFeedback = function (action, lockToken, config, done) {
}
};
-/**
- * Creates an IoT Hub device.
- * @param {String} path The HTTP URL to send the request to
- * @param {String} deviceInfo Device metadata serialized as JSON
- * @param {Object} config This is a dictionary containing the
- * following keys and values:
- *
- * | Key | Value |
- * |---------|---------------------------------------------------------|
- * | host | The host URL of the Azure IoT Hub |
- * | hubName | The name of the Azure IoT Hub |
- * | keyName | The identifier of the device that is being connected to |
- * | key | The shared access key auth |
- * @param {Function} done The callback to be invoked when
- * `createDevice` completes execution.
- */
Https.prototype.createDevice = function (path, deviceInfo, config, done) {
/* SRS_NODE_IOTHUB_HTTPS_07_010: [The device methods shall construct an HTTP request using information supplied by the caller, as follows:
OPERATION ?api-version= HTTP/1.1
@@ -436,22 +369,6 @@ Https.prototype.createDevice = function (path, deviceInfo, config, done) {
request.end();
};
-/**
- * Updates an IoT Hub device.
- * @param {String} path The HTTP URL to send the request to
- * @param {String} deviceInfo Device metadata serialized as JSON
- * @param {Object} config This is a dictionary containing the
- * following keys and values:
- *
- * | Key | Value |
- * |---------|---------------------------------------------------------|
- * | host | The host URL of the Azure IoT Hub |
- * | hubName | The name of the Azure IoT Hub |
- * | keyName | The identifier of the device that is being connected to |
- * | key | The shared access key auth |
- * @param {Function} done The callback to be invoked when
- * `updateDevice` completes execution.
- */
Https.prototype.updateDevice = function (path, deviceInfo, config, done) {
/* SRS_NODE_IOTHUB_HTTPS_07_010: [The device methods shall construct an HTTP request using information supplied by the caller, as follows:
OPERATION ?api-version= HTTP/1.1
@@ -479,22 +396,6 @@ Https.prototype.updateDevice = function (path, deviceInfo, config, done) {
request.end();
};
-/**
- * This method requests metadata (in the form of a Device object) about the
- * device with the given ID.
- * @param {String} path The HTTP URL to send the request to
- * @param {Object} config This is a dictionary containing the
- * following keys and values:
- *
- * | Key | Value |
- * |---------|---------------------------------------------------------|
- * | host | The host URL of the Azure IoT Hub |
- * | hubName | The name of the Azure IoT Hub |
- * | keyName | The identifier of the device that is being connected to |
- * | key | The shared access key auth |
- * @param {Function} done The callback to be invoked when
- * `getDevice` completes execution.
- */
Https.prototype.getDevice = function (path, config, done) {
/*Codes_SRS_NODE_IOTHUB_HTTPS_05_010: [The device methods shall construct an HTTP request using information supplied by the caller, as follows:
OPERATION ?api-version= HTTP/1.1
@@ -519,22 +420,6 @@ Https.prototype.getDevice = function (path, config, done) {
request.end();
};
-/**
- * This method requests metadata (in the form of a Device object) for the top
- * 1000 devices in the system.
- * @param {String} path The HTTP URL to send the request to
- * @param {Object} config This is a dictionary containing the
- * following keys and values:
- *
- * | Key | Value |
- * |---------|---------------------------------------------------------|
- * | host | The host URL of the Azure IoT Hub |
- * | hubName | The name of the Azure IoT Hub |
- * | keyName | The identifier of the device that is being connected to |
- * | key | The shared access key auth |
- * @param {Function} done The callback to be invoked when
- * `listDevice` completes execution.
- */
Https.prototype.listDevice = function (path, config, done) {
/*Codes_SRS_NODE_IOTHUB_HTTPS_05_010: [The device methods shall construct an HTTP request using information supplied by the caller, as follows:
OPERATION ?api-version= HTTP/1.1
@@ -559,21 +444,6 @@ Https.prototype.listDevice = function (path, config, done) {
request.end();
};
-/**
- * This method removes a device with the given ID.
- * @param {String} path The HTTP URL to send the request to
- * @param {Object} config This is a dictionary containing the
- * following keys and values:
- *
- * | Key | Value |
- * |---------|---------------------------------------------------------|
- * | host | The host URL of the Azure IoT Hub |
- * | hubName | The name of the Azure IoT Hub |
- * | keyName | The identifier of the device that is being connected to |
- * | key | The shared access key auth |
- * @param {Function} done The callback to be invoked when
- * `deleteDevice` completes execution.
- */
Https.prototype.deleteDevice = function (path, config, done) {
/*Codes_SRS_NODE_IOTHUB_HTTPS_05_010: [The device methods shall construct an HTTP request using information supplied by the caller, as follows:
OPERATION ?api-version= HTTP/1.1
diff --git a/node/common/lib/message.js b/node/common/lib/message.js
index 1ea98a6e..89a51494 100644
--- a/node/common/lib/message.js
+++ b/node/common/lib/message.js
@@ -1,21 +1,6 @@
// Copyright (c) Microsoft. All rights reserved.
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
-/**
- * Exports the {@link Message} object that provides a container for message
- * content and properties travelling to and from an IoT Hub.
- *
- * @example
- * var Message = require('./src/iothub').Message;
- *
- * var message = new Message('data to send');
- * message.properties.add('myProperty', 'my property value');
- * console.log('message content: ' + message.getData());
- *
- * @module common/message
- * @requires common/properties
- */
-
'use strict';
var Properties = require('./properties.js');
diff --git a/node/device/Jakefile b/node/device/Jakefile
index f0ab5acd..76d38131 100644
--- a/node/device/Jakefile
+++ b/node/device/Jakefile
@@ -62,7 +62,7 @@
lint.checkFiles({
files: deglob(
['Jakefile', '**/*.js'],
- ['**/node_modules']
+ ['**/node_modules', 'doc/']
),
options: jshintConfig.nodeOptions,
globals: jshintConfig.nodeGlobals
diff --git a/node/device/device.js b/node/device/device.js
index 8516b34c..9041c608 100644
--- a/node/device/device.js
+++ b/node/device/device.js
@@ -1,6 +1,44 @@
// Copyright (c) Microsoft. All rights reserved.
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
+/**
+ * The `azure-iot-device` module provides a means for devices to send events to and
+ * receive notifications from an Azure IoT Hub. The client handles
+ * communication with the IoT Hub through a transport supplied by the caller
+ * (e.g., [Https]{@linkcode module:adapters/https.Https}).
+ *
+ * @example
+ * var Device = require('azure-iot-device');
+ * var Client = Device.Client;
+ * var Message = Device.Message;
+ * var Https = Device.Https;
+ *
+ * function print(err, res) {
+ * if (err) console.log(err.toString());
+ * if (res) console.log(res.statusCode + ' ' + res.statusMessage);
+ * }
+ *
+ * var config = {
+ * host: 'hostname',
+ * keyName: 'deviceId',
+ * key: 'password'
+ * };
+ *
+ * var client = new Client(new Https(config));
+ *
+ * client.sendEvent(new Message('hello world'), print);
+ *
+ * client.receive (function (err, res, msg) {
+ * print(err, res);
+ * if (msg) console.log('Notification: ' + msg);
+ * if (!err && res.statusCode !== 204) {
+ * client.complete(msg, print);
+ * }
+ * });
+ *
+ * @module azure-iot-device
+ */
+
'use strict';
var common = require('_common');
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-device_client-Client.html b/node/device/doc/api_reference/Client.html
similarity index 83%
rename from node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-device_client-Client.html
rename to node/device/doc/api_reference/Client.html
index 2d763352..20ae32d5 100644
--- a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-device_client-Client.html
+++ b/node/device/doc/api_reference/Client.html
@@ -27,12 +27,10 @@
- Constructs a Client
object with the given IoT device connection
+
Constructs a Client
object with the given IoT device connection
string and transport
object.
@@ -129,7 +127,7 @@
expected of a transport object. See the
file
adapters/devdoc/https_requirements.docm
for information on what the transport
- object should look like. The
Https
+ object should look like. The
Https
class is an implementation that uses HTTP as
the communication protocol.
@@ -172,7 +170,7 @@
Source:
@@ -271,7 +269,7 @@ message so it may be received again later.
-Message
+Message
@@ -347,7 +345,7 @@ message so it may be received again later.
Source:
@@ -428,7 +426,7 @@ from the queue and record that it was accepted.
-Message
+Message
@@ -504,7 +502,7 @@ from the queue and record that it was accepted.
Source:
@@ -637,7 +635,7 @@ constructor argument) for the next notification in the queue.
Source:
@@ -718,7 +716,7 @@ from the queue and record that it was rejected.
-Message
+Message
@@ -794,7 +792,7 @@ from the queue and record that it was rejected.
Source:
@@ -832,7 +830,7 @@ from the queue and record that it was rejected.
-
The sendEvent
method sends an event message
+
The sendEvent
method sends an event message
to the IoT Hub as the device indicated by the connection string passed
via the constructor.
@@ -876,7 +874,7 @@ via the constructor.
-Message
+Message
@@ -952,7 +950,7 @@ via the constructor.
Source:
@@ -997,7 +995,7 @@ via the constructor.
-
The sendEventBatch
method sends a list
+
The sendEventBatch
method sends a list
of event messages to the IoT Hub as the device indicated by the connection
string passed via the constructor.
@@ -1041,7 +1039,7 @@ string passed via the constructor.
-array.<Message>
+array.<Message >
@@ -1117,7 +1115,7 @@ string passed via the constructor.
Source:
@@ -1159,13 +1157,13 @@ string passed via the constructor.
- Modules Classes
+ Modules Classes
- Documentation generated by JSDoc 3.3.2 on Fri Sep 18 2015 22:09:45 GMT-0700 (Pacific Daylight Time)
+ Documentation generated by JSDoc 3.3.2 on Tue Sep 22 2015 18:04:22 GMT-0700 (Pacific Daylight Time)
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-service_registry-Registry.html b/node/device/doc/api_reference/Https.html
similarity index 50%
rename from node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-service_registry-Registry.html
rename to node/device/doc/api_reference/Https.html
index 48c9156a..001a2b80 100644
--- a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-service_registry-Registry.html
+++ b/node/device/doc/api_reference/Https.html
@@ -2,7 +2,7 @@
- JSDoc: Class: Registry
+ JSDoc: Class: Https
@@ -16,7 +16,7 @@
-
Class: Registry
+
Class: Https
@@ -27,13 +27,10 @@
@@ -47,7 +44,7 @@
Constructor
-
new Registry(connString, transport)
+
new Https()
@@ -61,84 +58,6 @@
-
Parameters:
-
-
-
-
-
-
- Name
-
-
- Type
-
-
-
-
-
- Description
-
-
-
-
-
-
-
-
- connString
-
-
-
-
-
-String
-
-
-
-
-
-
-
-
-
- The IoT registry connection string
-
-
-
-
-
-
- transport
-
-
-
-
-
-Object
-
-
-
-
-
-
-
-
-
- An object that implements the interface
- expected of a transport object. See the
- file adapters/devdoc/https_requirements.docm
- for information on what the transport
- object should look like. The Https
- class is an implementation that uses HTTP as
- the communication protocol.
-
-
-
-
-
-
-
@@ -172,7 +91,7 @@
Source:
@@ -221,14 +140,15 @@
-
create(deviceInfo, done)
+
receive(config, done)
-
Creates a device with the given ID.
+
The receive method queries the IoT Hub (as the device indicated in the
+config
parameter) for the next notification in the queue.
@@ -264,7 +184,7 @@
- deviceInfo
+ config
@@ -280,8 +200,34 @@
- The object must include a deviceId
property
- with a valid device identifier.
+ This is a dictionary containing the
+ following keys and values:
+
+
+
+Key
+Value
+
+
+
+
+host
+The host URL of the Azure IoT Hub
+
+
+hubName
+The name of the Azure IoT Hub
+
+
+keyName
+The identifier of the device that is being connected to
+
+
+key
+The shared access key auth
+
+
+
@@ -304,8 +250,8 @@
-
The callback to be invoked when create
- completes execution.
+
The callback to be invoked when
+ receive
completes execution.
@@ -346,7 +292,7 @@
Source:
@@ -377,14 +323,15 @@
-
delete(deviceId, done)
+
sendEvent(message, config, done)
-
This method removes a device with the given ID.
+
This method sends an event to the IoT Hub as the device indicated in the
+config
parameter.
@@ -420,13 +367,13 @@
- deviceId
+ message
-String
+Message
@@ -436,7 +383,58 @@
- A valid device identifier
+ The message
+ to be sent.
+
+
+
+
+
+
+ config
+
+
+
+
+
+Object
+
+
+
+
+
+
+
+
+
+ This is a dictionary containing the following keys
+ and values:
+
+
+
+Key
+Value
+
+
+
+
+host
+The host URL of the Azure IoT Hub
+
+
+hubName
+The name of the Azure IoT Hub
+
+
+keyName
+The identifier of the device that is being connected to
+
+
+key
+The shared access key auth
+
+
+
@@ -459,7 +457,7 @@
-
The callback to be invoked when delete
+
The callback to be invoked when sendEvent
completes execution.
@@ -501,7 +499,7 @@
Source:
@@ -532,15 +530,15 @@
-
get(deviceId, done)
+
sendEventBatch(messages, config, done)
-
This method requests metadata (in the form of a Device object) about the
-device with the given ID.
+
The sendEventBatch
method sends a list of event messages to the IoT Hub
+as the device indicated in the config
parameter.
@@ -576,13 +574,13 @@ device with the given ID.
- deviceId
+ messages
-String
+array.<Message >
@@ -592,279 +590,15 @@ device with the given ID.
- A valid device identifier
+ Array of Message
+ objects to be sent as a batch.
- done
-
-
-
-
-
-function
-
-
-
-
-
-
-
-
-
- The callback to be invoked when get
- completes execution.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Source:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
list(done)
-
-
-
-
-
-
-
This method requests metadata (in the form of a Device object) for the top
-1000 devices in the system.
-
-
-
-
-
-
-
-
-
-
-
Parameters:
-
-
-
-
-
-
- Name
-
-
- Type
-
-
-
-
-
- Description
-
-
-
-
-
-
-
-
- done
-
-
-
-
-
-function
-
-
-
-
-
-
-
-
-
- The callback to be invoked when list
- completes execution.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Source:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
update(deviceInfo, done)
-
-
-
-
-
-
-
Updates an existing device with the given ID.
-
-
-
-
-
-
-
-
-
-
-
Parameters:
-
-
-
-
-
-
- Name
-
-
- Type
-
-
-
-
-
- Description
-
-
-
-
-
-
-
-
- deviceInfo
+ config
@@ -880,9 +614,34 @@ device with the given ID.
- The object must include a deviceId
property
- with a valid device identifier of an existing
- device.
+ This is a dictionary containing the
+ following keys and values:
+
+
+
+Key
+Value
+
+
+
+
+host
+The host URL of the Azure IoT Hub
+
+
+hubName
+The name of the Azure IoT Hub
+
+
+keyName
+The identifier of the device that is being connected to
+
+
+key
+The shared access key auth
+
+
+
@@ -905,8 +664,8 @@ device with the given ID.
- The callback to be invoked when update
- completes execution.
+ The callback to be invoked when
+ sendEventBatch
completes execution.
@@ -947,7 +706,259 @@ device with the given ID.
Source:
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ sendFeedback(action, lockToken, config, done)
+
+
+
+
+
+
+
This method sends the feedback action to the IoT Hub.
+
+
+
+
+
+
+
+
+
+
+ Parameters:
+
+
+
+
+
+
+ Name
+
+
+ Type
+
+
+
+
+
+ Description
+
+
+
+
+
+
+
+
+ action
+
+
+
+
+
+String
+
+
+
+
+
+
+
+
+
+ This parameter must be equal to one of the
+ following possible values:
+
+
+
+Value
+Action
+
+
+
+
+abandon
+Directs the IoT Hub to re-enqueue a notification message so it may be received again later.
+
+
+reject
+Directs the IoT Hub to delete a notification message from the queue and record that it was rejected.
+
+
+complete
+Directs the IoT Hub to delete a notification message from the queue and record that it was accepted.
+
+
+
+
+
+
+
+
+
+ lockToken
+
+
+
+
+
+String
+
+
+
+
+
+
+
+
+
+ An HTTP E-Tag used to manage concurrent updates
+ to the device
+
+
+
+
+
+
+ config
+
+
+
+
+
+Object
+
+
+
+
+
+
+
+
+
+ This is a dictionary containing the
+ following keys and values:
+
+
+
+Key
+Value
+
+
+
+
+host
+The host URL of the Azure IoT Hub
+
+
+hubName
+The name of the Azure IoT Hub
+
+
+keyName
+The identifier of the device that is being connected to
+
+
+key
+The shared access key auth
+
+
+
+
+
+
+
+
+
+ done
+
+
+
+
+
+function
+
+
+
+
+
+
+
+
+
+ The callback to be invoked when
+ sendFeedback
completes execution.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Source:
+
@@ -989,13 +1000,13 @@ device with the given ID.
- Modules Classes
+ Modules Classes
- Documentation generated by JSDoc 3.3.2 on Fri Sep 18 2015 22:09:45 GMT-0700 (Pacific Daylight Time)
+ Documentation generated by JSDoc 3.3.2 on Tue Sep 22 2015 18:04:22 GMT-0700 (Pacific Daylight Time)
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-common_message-Message.html b/node/device/doc/api_reference/Message.html
similarity index 80%
rename from node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-common_message-Message.html
rename to node/device/doc/api_reference/Message.html
index 7c83b764..50be342f 100644
--- a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/module-common_message-Message.html
+++ b/node/device/doc/api_reference/Message.html
@@ -27,12 +27,10 @@
- Constructs a Message
object with the given data.
+
Constructs a Message
object with the given data.
data
can be a Node Buffer
object or anything that can be used to construct a Buffer
object from.
@@ -297,7 +295,7 @@
Source:
@@ -406,7 +404,7 @@ of bytes.
Source:
@@ -462,7 +460,7 @@ of bytes.
-
Returns the data that was passed in to the constructor.
+
Returns the data that was passed in to the constructor .
@@ -506,7 +504,7 @@ of bytes.
Source:
@@ -533,7 +531,7 @@ of bytes.
-
The data that was passed to the constructor.
+
The data that was passed to the constructor .
@@ -570,13 +568,13 @@ of bytes.
- Modules Classes
+ Modules Classes
- Documentation generated by JSDoc 3.3.2 on Fri Sep 18 2015 22:09:45 GMT-0700 (Pacific Daylight Time)
+ Documentation generated by JSDoc 3.3.2 on Tue Sep 22 2015 18:04:22 GMT-0700 (Pacific Daylight Time)
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/adapters_https.js.html b/node/device/doc/api_reference/common_lib_https.js.html
similarity index 79%
rename from node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/adapters_https.js.html
rename to node/device/doc/api_reference/common_lib_https.js.html
index 7441a7a2..14d31b1c 100644
--- a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/adapters_https.js.html
+++ b/node/device/doc/api_reference/common_lib_https.js.html
@@ -2,7 +2,7 @@
- JSDoc: Source: adapters/https.js
+ JSDoc: Source: common/lib/https.js
@@ -16,7 +16,7 @@
-
Source: adapters/https.js
+
Source: common/lib/https.js
@@ -27,61 +27,11 @@
// Copyright (c) Microsoft. All rights reserved.
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
-/**
- * The `https` module provides transport functionality for applications that
- * want to communicate with an Azure IoT Hub.
- *
- * @example
- * 'use strict';
- * var Https = require('./src/iothub_https').Https;
- * var Message = require('./src/iothub').Message;
- *
- * function print(err, res) {
- * if (err) console.log(err.toString());
- * if (res) console.log(res.statusCode + ' ' + res.statusMessage);
- * }
- *
- * var deviceConfig = {
- * host: 'hostname',
- * keyName: 'deviceId',
- * key: 'deviceKey'
- * };
- *
- * var devHttps = new Https(deviceConfig);
- *
- * devHttps.sendEvent(new Message('hello world'), print);
- *
- * devHttps.receive(function (err, res, msg) {
- * print(err, res);
- * if (msg) console.log('Message: ' + msg);
- * if (!err && res.statusCode !== 204) {
- * devHttps.sendFeedback('complete', msg.lockToken, print);
- * }
- * });
- *
- * var serviceConfig = {
- * host: 'hostname',
- * keyName: 'policy',
- * key: 'policyKey'
- * };
- *
- * var svcHttps = new Https(config);
- *
- * svcHttps.getDevice('deviceId', function (err, res, dev) {
- * print(err, res);
- * if (!err) {
- * console.log(dev.id);
- * }
- * });
- *
- * @module adapters/https
- */
-
'use strict';
-var authorization = require('../common/authorization');
-var endpoint = require('../common/endpoint');
-var Message = require('../common/message');
+var authorization = require('./authorization.js');
+var endpoint = require('./endpoint.js');
+var Message = require('./message.js');
function anHourFromNow () {
var raw = (Date.now() / 1000) + 3600;
@@ -119,7 +69,6 @@ function constructBatchBody(messages)
/**
* @class Https
- * @alias module:adapters/https.Https
* @classdesc Constructs an {@linkcode Https} object.
*/
/*Codes_SRS_NODE_IOTHUB_HTTPS_05_001: [The Https constructor shall accept a config object with three properties:
@@ -420,22 +369,6 @@ Https.prototype.sendFeedback = function (action, lockToken, config, done) {
}
};
-/**
- * Creates an IoT Hub device.
- * @param {String} path The HTTP URL to send the request to
- * @param {String} deviceInfo Device metadata serialized as JSON
- * @param {Object} config This is a dictionary containing the
- * following keys and values:
- *
- * | Key | Value |
- * |---------|---------------------------------------------------------|
- * | host | The host URL of the Azure IoT Hub |
- * | hubName | The name of the Azure IoT Hub |
- * | keyName | The identifier of the device that is being connected to |
- * | key | The shared access key auth |
- * @param {Function} done The callback to be invoked when
- * `createDevice` completes execution.
- */
Https.prototype.createDevice = function (path, deviceInfo, config, done) {
/* SRS_NODE_IOTHUB_HTTPS_07_010: [The device methods shall construct an HTTP request using information supplied by the caller, as follows:
OPERATION <path>?api-version=<version> HTTP/1.1
@@ -462,22 +395,6 @@ Https.prototype.createDevice = function (path, deviceInfo, config, done) {
request.end();
};
-/**
- * Updates an IoT Hub device.
- * @param {String} path The HTTP URL to send the request to
- * @param {String} deviceInfo Device metadata serialized as JSON
- * @param {Object} config This is a dictionary containing the
- * following keys and values:
- *
- * | Key | Value |
- * |---------|---------------------------------------------------------|
- * | host | The host URL of the Azure IoT Hub |
- * | hubName | The name of the Azure IoT Hub |
- * | keyName | The identifier of the device that is being connected to |
- * | key | The shared access key auth |
- * @param {Function} done The callback to be invoked when
- * `updateDevice` completes execution.
- */
Https.prototype.updateDevice = function (path, deviceInfo, config, done) {
/* SRS_NODE_IOTHUB_HTTPS_07_010: [The device methods shall construct an HTTP request using information supplied by the caller, as follows:
OPERATION <path>?api-version=<version> HTTP/1.1
@@ -505,22 +422,6 @@ Https.prototype.updateDevice = function (path, deviceInfo, config, done) {
request.end();
};
-/**
- * This method requests metadata (in the form of a Device object) about the
- * device with the given ID.
- * @param {String} path The HTTP URL to send the request to
- * @param {Object} config This is a dictionary containing the
- * following keys and values:
- *
- * | Key | Value |
- * |---------|---------------------------------------------------------|
- * | host | The host URL of the Azure IoT Hub |
- * | hubName | The name of the Azure IoT Hub |
- * | keyName | The identifier of the device that is being connected to |
- * | key | The shared access key auth |
- * @param {Function} done The callback to be invoked when
- * `getDevice` completes execution.
- */
Https.prototype.getDevice = function (path, config, done) {
/*Codes_SRS_NODE_IOTHUB_HTTPS_05_010: [The device methods shall construct an HTTP request using information supplied by the caller, as follows:
OPERATION <path>?api-version=<version> HTTP/1.1
@@ -545,22 +446,6 @@ Https.prototype.getDevice = function (path, config, done) {
request.end();
};
-/**
- * This method requests metadata (in the form of a Device object) for the top
- * 1000 devices in the system.
- * @param {String} path The HTTP URL to send the request to
- * @param {Object} config This is a dictionary containing the
- * following keys and values:
- *
- * | Key | Value |
- * |---------|---------------------------------------------------------|
- * | host | The host URL of the Azure IoT Hub |
- * | hubName | The name of the Azure IoT Hub |
- * | keyName | The identifier of the device that is being connected to |
- * | key | The shared access key auth |
- * @param {Function} done The callback to be invoked when
- * `listDevice` completes execution.
- */
Https.prototype.listDevice = function (path, config, done) {
/*Codes_SRS_NODE_IOTHUB_HTTPS_05_010: [The device methods shall construct an HTTP request using information supplied by the caller, as follows:
OPERATION <path>?api-version=<version> HTTP/1.1
@@ -585,21 +470,6 @@ Https.prototype.listDevice = function (path, config, done) {
request.end();
};
-/**
- * This method removes a device with the given ID.
- * @param {String} path The HTTP URL to send the request to
- * @param {Object} config This is a dictionary containing the
- * following keys and values:
- *
- * | Key | Value |
- * |---------|---------------------------------------------------------|
- * | host | The host URL of the Azure IoT Hub |
- * | hubName | The name of the Azure IoT Hub |
- * | keyName | The identifier of the device that is being connected to |
- * | key | The shared access key auth |
- * @param {Function} done The callback to be invoked when
- * `deleteDevice` completes execution.
- */
Https.prototype.deleteDevice = function (path, config, done) {
/*Codes_SRS_NODE_IOTHUB_HTTPS_05_010: [The device methods shall construct an HTTP request using information supplied by the caller, as follows:
OPERATION <path>?api-version=<version> HTTP/1.1
@@ -636,13 +506,13 @@ module.exports = Https;
- Modules Classes
+ Modules Classes
- Documentation generated by JSDoc 3.3.2 on Fri Sep 18 2015 22:09:45 GMT-0700 (Pacific Daylight Time)
+ Documentation generated by JSDoc 3.3.2 on Tue Sep 22 2015 18:04:22 GMT-0700 (Pacific Daylight Time)
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/common_message.js.html b/node/device/doc/api_reference/common_lib_message.js.html
similarity index 72%
rename from node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/common_message.js.html
rename to node/device/doc/api_reference/common_lib_message.js.html
index 6df84e38..7e207463 100644
--- a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/common_message.js.html
+++ b/node/device/doc/api_reference/common_lib_message.js.html
@@ -2,7 +2,7 @@
- JSDoc: Source: common/message.js
+ JSDoc: Source: common/lib/message.js
@@ -16,7 +16,7 @@
-
Source: common/message.js
+
Source: common/lib/message.js
@@ -27,21 +27,6 @@
// Copyright (c) Microsoft. All rights reserved.
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
-/**
- * Exports the {@link Message} object that provides a container for message
- * content and properties travelling to and from an IoT Hub.
- *
- * @example
- * var Message = require('./src/iothub').Message;
- *
- * var message = new Message('data to send');
- * message.properties.add('myProperty', 'my property value');
- * console.log('message content: ' + message.getData());
- *
- * @module common/message
- * @requires common/properties
- */
-
'use strict';
var Properties = require('./properties.js');
@@ -122,13 +107,13 @@ module.exports = Message;
- Modules Classes
+ Modules Classes
- Documentation generated by JSDoc 3.3.2 on Fri Sep 18 2015 22:09:45 GMT-0700 (Pacific Daylight Time)
+ Documentation generated by JSDoc 3.3.2 on Tue Sep 22 2015 18:04:22 GMT-0700 (Pacific Daylight Time)
diff --git a/node/device/doc/api_reference/device_device.js.html b/node/device/doc/api_reference/device_device.js.html
new file mode 100644
index 00000000..f3e7d7eb
--- /dev/null
+++ b/node/device/doc/api_reference/device_device.js.html
@@ -0,0 +1,98 @@
+
+
+
+
+ JSDoc: Source: device/device.js
+
+
+
+
+
+
+
+
+
+
+
+
Source: device/device.js
+
+
+
+
+
+
+
+ // Copyright (c) Microsoft. All rights reserved.
+// Licensed under the MIT license. See LICENSE file in the project root for full license information.
+
+/**
+ * The `azure-iot-device` module provides a means for devices to send events to and
+ * receive notifications from an Azure IoT Hub. The client handles
+ * communication with the IoT Hub through a transport supplied by the caller
+ * (e.g., [Https]{@linkcode module:adapters/https.Https}).
+ *
+ * @example
+ * var Device = require('azure-iot-device');
+ * var Client = Device.Client;
+ * var Message = Device.Message;
+ * var Https = Device.Https;
+ *
+ * function print(err, res) {
+ * if (err) console.log(err.toString());
+ * if (res) console.log(res.statusCode + ' ' + res.statusMessage);
+ * }
+ *
+ * var config = {
+ * host: 'hostname',
+ * keyName: 'deviceId',
+ * key: 'password'
+ * };
+ *
+ * var client = new Client(new Https(config));
+ *
+ * client.sendEvent(new Message('hello world'), print);
+ *
+ * client.receive (function (err, res, msg) {
+ * print(err, res);
+ * if (msg) console.log('Notification: ' + msg);
+ * if (!err && res.statusCode !== 204) {
+ * client.complete(msg, print);
+ * }
+ * });
+ *
+ * @module azure-iot-device
+ */
+
+'use strict';
+
+var common = require('_common');
+
+module.exports = {
+ Client: require('./lib/client.js'),
+ Https: common.Https,
+ Message: common.Message
+};
+
+
+
+
+
+
+
+
+
+ Modules Classes
+
+
+
+
+
+ Documentation generated by JSDoc 3.3.2 on Tue Sep 22 2015 18:04:22 GMT-0700 (Pacific Daylight Time)
+
+
+
+
+
+
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/device_client.js.html b/node/device/doc/api_reference/device_lib_client.js.html
similarity index 77%
rename from node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/device_client.js.html
rename to node/device/doc/api_reference/device_lib_client.js.html
index c711feb6..0d1ee6f0 100644
--- a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/device_client.js.html
+++ b/node/device/doc/api_reference/device_lib_client.js.html
@@ -2,7 +2,7 @@
- JSDoc: Source: device/client.js
+ JSDoc: Source: device/lib/client.js
@@ -16,7 +16,7 @@
-
Source: device/client.js
+
Source: device/lib/client.js
@@ -27,44 +27,6 @@
// Copyright (c) Microsoft. All rights reserved.
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
-/**
- * The `client` module provides a means for devices to send events to and
- * receive notifications from an Azure IoT Hub. The client handles
- * communication with the IoT Hub through a transport supplied by the caller
- * (e.g., [Https]{@linkcode module:adapters/https.Https}).
- *
- * @example
- * var Client = require('./src/iothub').devices.Client;
- * var Message = require('./src/iothub').Message;
- * var Https = require('./src/iothub_https').Https;
- *
- * function print(err, res) {
- * if (err) console.log(err.toString());
- * if (res) console.log(res.statusCode + ' ' + res.statusMessage);
- * }
- *
- * var config = {
- * host: 'hostname',
- * keyName: 'deviceId',
- * key: 'password'
- * };
- *
- * var client = new Client(new Https(config));
- *
- * client.sendEvent(new Message('hello world'), print);
- *
- * client.receive (function (err, res, msg) {
- * print(err, res);
- * if (msg) console.log('Notification: ' + msg);
- * if (!err && res.statusCode !== 204) {
- * client.complete(msg, print);
- * }
- * });
- *
- * @module device/client
- * @requires common/message
- */
-
'use strict';
var HOSTNAME_LEN = "HostName=".length;
@@ -210,13 +172,13 @@ module.exports = Client;
- Modules Classes
+ Modules Classes
- Documentation generated by JSDoc 3.3.2 on Fri Sep 18 2015 22:09:45 GMT-0700 (Pacific Daylight Time)
+ Documentation generated by JSDoc 3.3.2 on Tue Sep 22 2015 18:04:22 GMT-0700 (Pacific Daylight Time)
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/fonts/OpenSans-Bold-webfont.eot b/node/device/doc/api_reference/fonts/OpenSans-Bold-webfont.eot
similarity index 100%
rename from node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/fonts/OpenSans-Bold-webfont.eot
rename to node/device/doc/api_reference/fonts/OpenSans-Bold-webfont.eot
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/fonts/OpenSans-Bold-webfont.svg b/node/device/doc/api_reference/fonts/OpenSans-Bold-webfont.svg
similarity index 100%
rename from node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/fonts/OpenSans-Bold-webfont.svg
rename to node/device/doc/api_reference/fonts/OpenSans-Bold-webfont.svg
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/fonts/OpenSans-Bold-webfont.woff b/node/device/doc/api_reference/fonts/OpenSans-Bold-webfont.woff
similarity index 100%
rename from node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/fonts/OpenSans-Bold-webfont.woff
rename to node/device/doc/api_reference/fonts/OpenSans-Bold-webfont.woff
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/fonts/OpenSans-BoldItalic-webfont.eot b/node/device/doc/api_reference/fonts/OpenSans-BoldItalic-webfont.eot
similarity index 100%
rename from node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/fonts/OpenSans-BoldItalic-webfont.eot
rename to node/device/doc/api_reference/fonts/OpenSans-BoldItalic-webfont.eot
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/fonts/OpenSans-BoldItalic-webfont.svg b/node/device/doc/api_reference/fonts/OpenSans-BoldItalic-webfont.svg
similarity index 100%
rename from node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/fonts/OpenSans-BoldItalic-webfont.svg
rename to node/device/doc/api_reference/fonts/OpenSans-BoldItalic-webfont.svg
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/fonts/OpenSans-BoldItalic-webfont.woff b/node/device/doc/api_reference/fonts/OpenSans-BoldItalic-webfont.woff
similarity index 100%
rename from node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/fonts/OpenSans-BoldItalic-webfont.woff
rename to node/device/doc/api_reference/fonts/OpenSans-BoldItalic-webfont.woff
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/fonts/OpenSans-Italic-webfont.eot b/node/device/doc/api_reference/fonts/OpenSans-Italic-webfont.eot
similarity index 100%
rename from node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/fonts/OpenSans-Italic-webfont.eot
rename to node/device/doc/api_reference/fonts/OpenSans-Italic-webfont.eot
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/fonts/OpenSans-Italic-webfont.svg b/node/device/doc/api_reference/fonts/OpenSans-Italic-webfont.svg
similarity index 100%
rename from node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/fonts/OpenSans-Italic-webfont.svg
rename to node/device/doc/api_reference/fonts/OpenSans-Italic-webfont.svg
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/fonts/OpenSans-Italic-webfont.woff b/node/device/doc/api_reference/fonts/OpenSans-Italic-webfont.woff
similarity index 100%
rename from node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/fonts/OpenSans-Italic-webfont.woff
rename to node/device/doc/api_reference/fonts/OpenSans-Italic-webfont.woff
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/fonts/OpenSans-Light-webfont.eot b/node/device/doc/api_reference/fonts/OpenSans-Light-webfont.eot
similarity index 100%
rename from node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/fonts/OpenSans-Light-webfont.eot
rename to node/device/doc/api_reference/fonts/OpenSans-Light-webfont.eot
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/fonts/OpenSans-Light-webfont.svg b/node/device/doc/api_reference/fonts/OpenSans-Light-webfont.svg
similarity index 100%
rename from node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/fonts/OpenSans-Light-webfont.svg
rename to node/device/doc/api_reference/fonts/OpenSans-Light-webfont.svg
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/fonts/OpenSans-Light-webfont.woff b/node/device/doc/api_reference/fonts/OpenSans-Light-webfont.woff
similarity index 100%
rename from node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/fonts/OpenSans-Light-webfont.woff
rename to node/device/doc/api_reference/fonts/OpenSans-Light-webfont.woff
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/fonts/OpenSans-LightItalic-webfont.eot b/node/device/doc/api_reference/fonts/OpenSans-LightItalic-webfont.eot
similarity index 100%
rename from node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/fonts/OpenSans-LightItalic-webfont.eot
rename to node/device/doc/api_reference/fonts/OpenSans-LightItalic-webfont.eot
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/fonts/OpenSans-LightItalic-webfont.svg b/node/device/doc/api_reference/fonts/OpenSans-LightItalic-webfont.svg
similarity index 100%
rename from node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/fonts/OpenSans-LightItalic-webfont.svg
rename to node/device/doc/api_reference/fonts/OpenSans-LightItalic-webfont.svg
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/fonts/OpenSans-LightItalic-webfont.woff b/node/device/doc/api_reference/fonts/OpenSans-LightItalic-webfont.woff
similarity index 100%
rename from node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/fonts/OpenSans-LightItalic-webfont.woff
rename to node/device/doc/api_reference/fonts/OpenSans-LightItalic-webfont.woff
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/fonts/OpenSans-Regular-webfont.eot b/node/device/doc/api_reference/fonts/OpenSans-Regular-webfont.eot
similarity index 100%
rename from node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/fonts/OpenSans-Regular-webfont.eot
rename to node/device/doc/api_reference/fonts/OpenSans-Regular-webfont.eot
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/fonts/OpenSans-Regular-webfont.svg b/node/device/doc/api_reference/fonts/OpenSans-Regular-webfont.svg
similarity index 100%
rename from node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/fonts/OpenSans-Regular-webfont.svg
rename to node/device/doc/api_reference/fonts/OpenSans-Regular-webfont.svg
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/fonts/OpenSans-Regular-webfont.woff b/node/device/doc/api_reference/fonts/OpenSans-Regular-webfont.woff
similarity index 100%
rename from node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/fonts/OpenSans-Regular-webfont.woff
rename to node/device/doc/api_reference/fonts/OpenSans-Regular-webfont.woff
diff --git a/node/device/doc/api_reference/index.html b/node/device/doc/api_reference/index.html
new file mode 100644
index 00000000..27fea4ef
--- /dev/null
+++ b/node/device/doc/api_reference/index.html
@@ -0,0 +1,67 @@
+
+
+
+
+ JSDoc: Microsoft Azure IoT Device SDK for Node.js
+
+
+
+
+
+
+
+
+
+
+
+
Microsoft Azure IoT Device SDK for Node.js
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ The Microsoft Azure IoT Device library for Node.js contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
+Features Device library
+
+Sends event data to an IoT Hub, in batches or individually.
+Receives messages from an IoT Hub.
+Uses HTTPS to communicate with IoT Hubs. AMQPS support is coming soon.
+
+
+
+
+
+
+
+
+
+
+
+ Modules Classes
+
+
+
+
+
+ Documentation generated by JSDoc 3.3.2 on Tue Sep 22 2015 18:04:22 GMT-0700 (Pacific Daylight Time)
+
+
+
+
+
+
\ No newline at end of file
diff --git a/node/device/doc/api_reference/module-azure-iot-device.html b/node/device/doc/api_reference/module-azure-iot-device.html
new file mode 100644
index 00000000..8084e48e
--- /dev/null
+++ b/node/device/doc/api_reference/module-azure-iot-device.html
@@ -0,0 +1,165 @@
+
+
+
+
+ JSDoc: Module: azure-iot-device
+
+
+
+
+
+
+
+
+
+
+
+
Module: azure-iot-device
+
+
+
+
+
+
+
+
+
+
+
+
+
+
The azure-iot-device
module provides a means for devices to send events to and
+receive notifications from an Azure IoT Hub. The client handles
+communication with the IoT Hub through a transport supplied by the caller
+(e.g., Https
).
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Source:
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Example
+
+
var Device = require('azure-iot-device');
var Client = Device.Client;
var Message = Device.Message;
var Https = Device.Https;
function print(err, res) {
if (err) console.log(err.toString());
if (res) console.log(res.statusCode + ' ' + res.statusMessage);
}
var config = {
host: 'hostname',
keyName: 'deviceId',
key: 'password'
};
var client = new Client(new Https(config));
client.sendEvent(new Message('hello world'), print);
client.receive (function (err, res, msg) {
print(err, res);
if (msg) console.log('Notification: ' + msg);
if (!err && res.statusCode !== 204) {
client.complete(msg, print);
}
});
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Modules Classes
+
+
+
+
+
+ Documentation generated by JSDoc 3.3.2 on Tue Sep 22 2015 18:04:22 GMT-0700 (Pacific Daylight Time)
+
+
+
+
+
+
\ No newline at end of file
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/scripts/linenumber.js b/node/device/doc/api_reference/scripts/linenumber.js
similarity index 100%
rename from node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/scripts/linenumber.js
rename to node/device/doc/api_reference/scripts/linenumber.js
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/scripts/prettify/Apache-License-2.0.txt b/node/device/doc/api_reference/scripts/prettify/Apache-License-2.0.txt
similarity index 100%
rename from node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/scripts/prettify/Apache-License-2.0.txt
rename to node/device/doc/api_reference/scripts/prettify/Apache-License-2.0.txt
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/scripts/prettify/lang-css.js b/node/device/doc/api_reference/scripts/prettify/lang-css.js
similarity index 100%
rename from node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/scripts/prettify/lang-css.js
rename to node/device/doc/api_reference/scripts/prettify/lang-css.js
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/scripts/prettify/prettify.js b/node/device/doc/api_reference/scripts/prettify/prettify.js
similarity index 100%
rename from node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/scripts/prettify/prettify.js
rename to node/device/doc/api_reference/scripts/prettify/prettify.js
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/styles/jsdoc-default.css b/node/device/doc/api_reference/styles/jsdoc-default.css
similarity index 100%
rename from node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/styles/jsdoc-default.css
rename to node/device/doc/api_reference/styles/jsdoc-default.css
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/styles/prettify-jsdoc.css b/node/device/doc/api_reference/styles/prettify-jsdoc.css
similarity index 100%
rename from node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/styles/prettify-jsdoc.css
rename to node/device/doc/api_reference/styles/prettify-jsdoc.css
diff --git a/node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/styles/prettify-tomorrow.css b/node/device/doc/api_reference/styles/prettify-tomorrow.css
similarity index 100%
rename from node/apidocs/azure-iot-sdk/1.0.0-preview.1.0.0/styles/prettify-tomorrow.css
rename to node/device/doc/api_reference/styles/prettify-tomorrow.css
diff --git a/node/device/lib/client.js b/node/device/lib/client.js
index 4eb8a0d6..e045c6b1 100644
--- a/node/device/lib/client.js
+++ b/node/device/lib/client.js
@@ -1,44 +1,6 @@
// Copyright (c) Microsoft. All rights reserved.
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
-/**
- * The `client` module provides a means for devices to send events to and
- * receive notifications from an Azure IoT Hub. The client handles
- * communication with the IoT Hub through a transport supplied by the caller
- * (e.g., [Https]{@linkcode module:adapters/https.Https}).
- *
- * @example
- * var Client = require('./src/iothub').devices.Client;
- * var Message = require('./src/iothub').Message;
- * var Https = require('./src/iothub_https').Https;
- *
- * function print(err, res) {
- * if (err) console.log(err.toString());
- * if (res) console.log(res.statusCode + ' ' + res.statusMessage);
- * }
- *
- * var config = {
- * host: 'hostname',
- * keyName: 'deviceId',
- * key: 'password'
- * };
- *
- * var client = new Client(new Https(config));
- *
- * client.sendEvent(new Message('hello world'), print);
- *
- * client.receive (function (err, res, msg) {
- * print(err, res);
- * if (msg) console.log('Notification: ' + msg);
- * if (!err && res.statusCode !== 204) {
- * client.complete(msg, print);
- * }
- * });
- *
- * @module device/client
- * @requires common/message
- */
-
'use strict';
var HOSTNAME_LEN = "HostName=".length;
diff --git a/node/service/Jakefile b/node/service/Jakefile
index f0ab5acd..76d38131 100644
--- a/node/service/Jakefile
+++ b/node/service/Jakefile
@@ -62,7 +62,7 @@
lint.checkFiles({
files: deglob(
['Jakefile', '**/*.js'],
- ['**/node_modules']
+ ['**/node_modules', 'doc/']
),
options: jshintConfig.nodeOptions,
globals: jshintConfig.nodeGlobals
From cf5e8b6172b75c3addf9ba22e07f8aa5d82caf0a Mon Sep 17 00:00:00 2001
From: Rajasekharan Vengalil
Date: Wed, 23 Sep 2015 13:02:11 -0700
Subject: [PATCH 4/4] Add API docs for the C IoTHub_Message component.
---
build/docs/Doxyfile | 1 +
c/doc/api_reference/agenttime_8h.html | 215 ---
c/doc/api_reference/agenttime_8h_source.html | 131 --
c/doc/api_reference/annotated.html | 103 --
c/doc/api_reference/arrowdown.png | Bin 241 -> 0 bytes
c/doc/api_reference/arrowright.png | Bin 227 -> 0 bytes
c/doc/api_reference/base64_8h.html | 216 ---
c/doc/api_reference/base64_8h_source.html | 131 --
c/doc/api_reference/bc_s.png | Bin 624 -> 0 bytes
c/doc/api_reference/bdwn.png | Bin 139 -> 0 bytes
c/doc/api_reference/classes.html | 107 --
c/doc/api_reference/closed.png | Bin 125 -> 0 bytes
.../dir_12d2b36f129c41023f7f4a6bff2578c5.html | 101 --
.../dir_1784a01aa976a8c78ef5dfc3737bcac8.html | 105 --
.../dir_3fa79a50e591a13d34768ad07721929e.html | 101 --
.../dir_4512fd3943e6edf693cef6803bd9b15b.html | 105 --
.../dir_72aec881c4ddd8f448eae7bd490815ae.html | 105 --
.../dir_cdcbff5a6a1122bd9bb23b5044523779.html | 101 --
.../dir_e7e6b493d3d7754f3ea1acccc5db86e9.html | 120 --
c/doc/api_reference/doc.png | Bin 652 -> 0 bytes
c/doc/api_reference/doxygen.css | 1454 -----------------
c/doc/api_reference/doxygen.png | Bin 3529 -> 0 bytes
c/doc/api_reference/dynsections.js | 97 --
c/doc/api_reference/files.html | 119 --
c/doc/api_reference/folderclosed.png | Bin 493 -> 0 bytes
c/doc/api_reference/folderopen.png | Bin 505 -> 0 bytes
c/doc/api_reference/functions.html | 117 --
c/doc/api_reference/functions_vars.html | 117 --
c/doc/api_reference/globals.html | 425 -----
c/doc/api_reference/globals_defs.html | 131 --
c/doc/api_reference/globals_enum.html | 140 --
c/doc/api_reference/globals_func.html | 308 ----
c/doc/api_reference/globals_type.html | 143 --
.../dir_72aec881c4ddd8f448eae7bd490815ae.html | 3 +
c/doc/api_reference/html/files.html | 9 +-
c/doc/api_reference/html/globals.html | 36 +
c/doc/api_reference/html/globals_enum.html | 6 +
c/doc/api_reference/html/globals_func.html | 24 +
c/doc/api_reference/html/globals_type.html | 6 +
.../api_reference/html/iothub__client_8h.html | 2 +-
.../html/iothub__client__ll_8h.html | 4 +-
.../html/iothub__client__ll_8h_source.html | 3 +-
.../html/iothub__message_8h.html | 392 +++++
.../html/iothub__message_8h_source.html | 168 ++
c/doc/api_reference/html/search/all_6.js | 13 +
c/doc/api_reference/html/search/enums_1.js | 2 +
c/doc/api_reference/html/search/files_3.js | 3 +-
.../api_reference/html/search/functions_3.js | 10 +-
c/doc/api_reference/html/search/typedefs_1.js | 2 +
c/doc/api_reference/httpapi_8h.html | 406 -----
c/doc/api_reference/httpapi_8h_source.html | 187 ---
c/doc/api_reference/httpapiex_8h.html | 323 ----
c/doc/api_reference/httpapiex_8h_source.html | 148 --
c/doc/api_reference/httpheaders_8h.html | 433 -----
.../api_reference/httpheaders_8h_source.html | 159 --
c/doc/api_reference/index.html | 124 --
c/doc/api_reference/iothub__client_8h.html | 450 -----
.../iothub__client_8h_source.html | 148 --
.../api_reference/iothub__client__ll_8h.html | 525 ------
.../iothub__client__ll_8h_source.html | 220 ---
c/doc/api_reference/jquery.js | 68 -
c/doc/api_reference/lock_8h.html | 238 ---
c/doc/api_reference/lock_8h_source.html | 140 --
c/doc/api_reference/nav_f.png | Bin 136 -> 0 bytes
c/doc/api_reference/nav_g.png | Bin 95 -> 0 bytes
c/doc/api_reference/nav_h.png | Bin 93 -> 0 bytes
c/doc/api_reference/open.png | Bin 115 -> 0 bytes
c/doc/api_reference/readme.md | 5 -
c/doc/api_reference/schemalib_8h.html | 230 ---
c/doc/api_reference/schemalib_8h_source.html | 154 --
c/doc/api_reference/search/all_0.html | 26 -
c/doc/api_reference/search/all_0.js | 4 -
c/doc/api_reference/search/all_1.html | 26 -
c/doc/api_reference/search/all_1.js | 8 -
c/doc/api_reference/search/all_2.html | 26 -
c/doc/api_reference/search/all_2.js | 7 -
c/doc/api_reference/search/all_3.html | 26 -
c/doc/api_reference/search/all_3.js | 5 -
c/doc/api_reference/search/all_4.html | 26 -
c/doc/api_reference/search/all_4.js | 8 -
c/doc/api_reference/search/all_5.html | 26 -
c/doc/api_reference/search/all_5.js | 33 -
c/doc/api_reference/search/all_6.html | 26 -
c/doc/api_reference/search/all_6.js | 34 -
c/doc/api_reference/search/all_7.html | 26 -
c/doc/api_reference/search/all_7.js | 9 -
c/doc/api_reference/search/all_8.html | 26 -
c/doc/api_reference/search/all_8.js | 4 -
c/doc/api_reference/search/all_9.html | 26 -
c/doc/api_reference/search/all_9.js | 4 -
c/doc/api_reference/search/all_a.html | 26 -
c/doc/api_reference/search/all_a.js | 13 -
c/doc/api_reference/search/all_b.html | 26 -
c/doc/api_reference/search/all_b.js | 10 -
c/doc/api_reference/search/all_c.html | 26 -
c/doc/api_reference/search/all_c.js | 4 -
c/doc/api_reference/search/all_d.html | 26 -
c/doc/api_reference/search/all_d.js | 5 -
c/doc/api_reference/search/classes_0.html | 26 -
c/doc/api_reference/search/classes_0.js | 4 -
c/doc/api_reference/search/close.png | Bin 273 -> 0 bytes
c/doc/api_reference/search/defines_0.html | 26 -
c/doc/api_reference/search/defines_0.js | 4 -
c/doc/api_reference/search/defines_1.html | 26 -
c/doc/api_reference/search/defines_1.js | 5 -
c/doc/api_reference/search/defines_2.html | 26 -
c/doc/api_reference/search/defines_2.js | 5 -
c/doc/api_reference/search/defines_3.html | 26 -
c/doc/api_reference/search/defines_3.js | 4 -
c/doc/api_reference/search/defines_4.html | 26 -
c/doc/api_reference/search/defines_4.js | 4 -
c/doc/api_reference/search/defines_5.html | 26 -
c/doc/api_reference/search/defines_5.js | 5 -
c/doc/api_reference/search/enums_0.html | 26 -
c/doc/api_reference/search/enums_0.js | 7 -
c/doc/api_reference/search/enums_1.html | 26 -
c/doc/api_reference/search/enums_1.js | 7 -
c/doc/api_reference/search/enums_2.html | 26 -
c/doc/api_reference/search/enums_2.js | 4 -
c/doc/api_reference/search/enums_3.html | 26 -
c/doc/api_reference/search/enums_3.js | 5 -
c/doc/api_reference/search/enums_4.html | 26 -
c/doc/api_reference/search/enums_4.js | 4 -
c/doc/api_reference/search/files_0.html | 26 -
c/doc/api_reference/search/files_0.js | 4 -
c/doc/api_reference/search/files_1.html | 26 -
c/doc/api_reference/search/files_1.js | 4 -
c/doc/api_reference/search/files_2.html | 26 -
c/doc/api_reference/search/files_2.js | 6 -
c/doc/api_reference/search/files_3.html | 26 -
c/doc/api_reference/search/files_3.js | 5 -
c/doc/api_reference/search/files_4.html | 26 -
c/doc/api_reference/search/files_4.js | 4 -
c/doc/api_reference/search/files_5.html | 26 -
c/doc/api_reference/search/files_5.js | 5 -
c/doc/api_reference/search/files_6.html | 26 -
c/doc/api_reference/search/files_6.js | 4 -
c/doc/api_reference/search/functions_0.html | 26 -
c/doc/api_reference/search/functions_0.js | 6 -
c/doc/api_reference/search/functions_1.html | 26 -
c/doc/api_reference/search/functions_1.js | 7 -
c/doc/api_reference/search/functions_2.html | 26 -
c/doc/api_reference/search/functions_2.js | 22 -
c/doc/api_reference/search/functions_3.html | 26 -
c/doc/api_reference/search/functions_3.js | 20 -
c/doc/api_reference/search/functions_4.html | 26 -
c/doc/api_reference/search/functions_4.js | 6 -
c/doc/api_reference/search/functions_5.html | 26 -
c/doc/api_reference/search/functions_5.js | 6 -
c/doc/api_reference/search/functions_6.html | 26 -
c/doc/api_reference/search/functions_6.js | 7 -
c/doc/api_reference/search/functions_7.html | 26 -
c/doc/api_reference/search/functions_7.js | 4 -
c/doc/api_reference/search/mag_sel.png | Bin 563 -> 0 bytes
c/doc/api_reference/search/nomatches.html | 12 -
c/doc/api_reference/search/pages_0.html | 26 -
c/doc/api_reference/search/pages_0.js | 4 -
c/doc/api_reference/search/search.css | 271 ---
c/doc/api_reference/search/search.js | 791 ---------
c/doc/api_reference/search/search_l.png | Bin 604 -> 0 bytes
c/doc/api_reference/search/search_m.png | Bin 158 -> 0 bytes
c/doc/api_reference/search/search_r.png | Bin 612 -> 0 bytes
c/doc/api_reference/search/searchdata.js | 39 -
c/doc/api_reference/search/typedefs_0.html | 26 -
c/doc/api_reference/search/typedefs_0.js | 7 -
c/doc/api_reference/search/typedefs_1.html | 26 -
c/doc/api_reference/search/typedefs_1.js | 8 -
c/doc/api_reference/search/typedefs_2.html | 26 -
c/doc/api_reference/search/typedefs_2.js | 4 -
c/doc/api_reference/search/typedefs_3.html | 26 -
c/doc/api_reference/search/typedefs_3.js | 5 -
c/doc/api_reference/search/typedefs_4.html | 26 -
c/doc/api_reference/search/typedefs_4.js | 4 -
c/doc/api_reference/search/variables_0.html | 26 -
c/doc/api_reference/search/variables_0.js | 5 -
c/doc/api_reference/search/variables_1.html | 26 -
c/doc/api_reference/search/variables_1.js | 5 -
c/doc/api_reference/search/variables_2.html | 26 -
c/doc/api_reference/search/variables_2.js | 4 -
c/doc/api_reference/serializer_8h.html | 455 ------
c/doc/api_reference/serializer_8h_source.html | 1077 ------------
c/doc/api_reference/splitbar.png | Bin 282 -> 0 bytes
...b___c_l_i_e_n_t___c_o_n_f_i_g___t_a_g.html | 134 --
c/doc/api_reference/sync_off.png | Bin 815 -> 0 bytes
c/doc/api_reference/sync_on.png | Bin 809 -> 0 bytes
c/doc/api_reference/tab_a.png | Bin 124 -> 0 bytes
c/doc/api_reference/tab_b.png | Bin 149 -> 0 bytes
c/doc/api_reference/tab_h.png | Bin 145 -> 0 bytes
c/doc/api_reference/tab_s.png | Bin 156 -> 0 bytes
c/doc/api_reference/tabs.css | 60 -
c/doc/api_reference/threadapi_8h.html | 272 ---
c/doc/api_reference/threadapi_8h_source.html | 143 --
c/iothub_client/inc/iothub_message.h | 89 +
193 files changed, 763 insertions(+), 13576 deletions(-)
delete mode 100644 c/doc/api_reference/agenttime_8h.html
delete mode 100644 c/doc/api_reference/agenttime_8h_source.html
delete mode 100644 c/doc/api_reference/annotated.html
delete mode 100644 c/doc/api_reference/arrowdown.png
delete mode 100644 c/doc/api_reference/arrowright.png
delete mode 100644 c/doc/api_reference/base64_8h.html
delete mode 100644 c/doc/api_reference/base64_8h_source.html
delete mode 100644 c/doc/api_reference/bc_s.png
delete mode 100644 c/doc/api_reference/bdwn.png
delete mode 100644 c/doc/api_reference/classes.html
delete mode 100644 c/doc/api_reference/closed.png
delete mode 100644 c/doc/api_reference/dir_12d2b36f129c41023f7f4a6bff2578c5.html
delete mode 100644 c/doc/api_reference/dir_1784a01aa976a8c78ef5dfc3737bcac8.html
delete mode 100644 c/doc/api_reference/dir_3fa79a50e591a13d34768ad07721929e.html
delete mode 100644 c/doc/api_reference/dir_4512fd3943e6edf693cef6803bd9b15b.html
delete mode 100644 c/doc/api_reference/dir_72aec881c4ddd8f448eae7bd490815ae.html
delete mode 100644 c/doc/api_reference/dir_cdcbff5a6a1122bd9bb23b5044523779.html
delete mode 100644 c/doc/api_reference/dir_e7e6b493d3d7754f3ea1acccc5db86e9.html
delete mode 100644 c/doc/api_reference/doc.png
delete mode 100644 c/doc/api_reference/doxygen.css
delete mode 100644 c/doc/api_reference/doxygen.png
delete mode 100644 c/doc/api_reference/dynsections.js
delete mode 100644 c/doc/api_reference/files.html
delete mode 100644 c/doc/api_reference/folderclosed.png
delete mode 100644 c/doc/api_reference/folderopen.png
delete mode 100644 c/doc/api_reference/functions.html
delete mode 100644 c/doc/api_reference/functions_vars.html
delete mode 100644 c/doc/api_reference/globals.html
delete mode 100644 c/doc/api_reference/globals_defs.html
delete mode 100644 c/doc/api_reference/globals_enum.html
delete mode 100644 c/doc/api_reference/globals_func.html
delete mode 100644 c/doc/api_reference/globals_type.html
create mode 100644 c/doc/api_reference/html/iothub__message_8h.html
create mode 100644 c/doc/api_reference/html/iothub__message_8h_source.html
delete mode 100644 c/doc/api_reference/httpapi_8h.html
delete mode 100644 c/doc/api_reference/httpapi_8h_source.html
delete mode 100644 c/doc/api_reference/httpapiex_8h.html
delete mode 100644 c/doc/api_reference/httpapiex_8h_source.html
delete mode 100644 c/doc/api_reference/httpheaders_8h.html
delete mode 100644 c/doc/api_reference/httpheaders_8h_source.html
delete mode 100644 c/doc/api_reference/index.html
delete mode 100644 c/doc/api_reference/iothub__client_8h.html
delete mode 100644 c/doc/api_reference/iothub__client_8h_source.html
delete mode 100644 c/doc/api_reference/iothub__client__ll_8h.html
delete mode 100644 c/doc/api_reference/iothub__client__ll_8h_source.html
delete mode 100644 c/doc/api_reference/jquery.js
delete mode 100644 c/doc/api_reference/lock_8h.html
delete mode 100644 c/doc/api_reference/lock_8h_source.html
delete mode 100644 c/doc/api_reference/nav_f.png
delete mode 100644 c/doc/api_reference/nav_g.png
delete mode 100644 c/doc/api_reference/nav_h.png
delete mode 100644 c/doc/api_reference/open.png
delete mode 100644 c/doc/api_reference/readme.md
delete mode 100644 c/doc/api_reference/schemalib_8h.html
delete mode 100644 c/doc/api_reference/schemalib_8h_source.html
delete mode 100644 c/doc/api_reference/search/all_0.html
delete mode 100644 c/doc/api_reference/search/all_0.js
delete mode 100644 c/doc/api_reference/search/all_1.html
delete mode 100644 c/doc/api_reference/search/all_1.js
delete mode 100644 c/doc/api_reference/search/all_2.html
delete mode 100644 c/doc/api_reference/search/all_2.js
delete mode 100644 c/doc/api_reference/search/all_3.html
delete mode 100644 c/doc/api_reference/search/all_3.js
delete mode 100644 c/doc/api_reference/search/all_4.html
delete mode 100644 c/doc/api_reference/search/all_4.js
delete mode 100644 c/doc/api_reference/search/all_5.html
delete mode 100644 c/doc/api_reference/search/all_5.js
delete mode 100644 c/doc/api_reference/search/all_6.html
delete mode 100644 c/doc/api_reference/search/all_6.js
delete mode 100644 c/doc/api_reference/search/all_7.html
delete mode 100644 c/doc/api_reference/search/all_7.js
delete mode 100644 c/doc/api_reference/search/all_8.html
delete mode 100644 c/doc/api_reference/search/all_8.js
delete mode 100644 c/doc/api_reference/search/all_9.html
delete mode 100644 c/doc/api_reference/search/all_9.js
delete mode 100644 c/doc/api_reference/search/all_a.html
delete mode 100644 c/doc/api_reference/search/all_a.js
delete mode 100644 c/doc/api_reference/search/all_b.html
delete mode 100644 c/doc/api_reference/search/all_b.js
delete mode 100644 c/doc/api_reference/search/all_c.html
delete mode 100644 c/doc/api_reference/search/all_c.js
delete mode 100644 c/doc/api_reference/search/all_d.html
delete mode 100644 c/doc/api_reference/search/all_d.js
delete mode 100644 c/doc/api_reference/search/classes_0.html
delete mode 100644 c/doc/api_reference/search/classes_0.js
delete mode 100644 c/doc/api_reference/search/close.png
delete mode 100644 c/doc/api_reference/search/defines_0.html
delete mode 100644 c/doc/api_reference/search/defines_0.js
delete mode 100644 c/doc/api_reference/search/defines_1.html
delete mode 100644 c/doc/api_reference/search/defines_1.js
delete mode 100644 c/doc/api_reference/search/defines_2.html
delete mode 100644 c/doc/api_reference/search/defines_2.js
delete mode 100644 c/doc/api_reference/search/defines_3.html
delete mode 100644 c/doc/api_reference/search/defines_3.js
delete mode 100644 c/doc/api_reference/search/defines_4.html
delete mode 100644 c/doc/api_reference/search/defines_4.js
delete mode 100644 c/doc/api_reference/search/defines_5.html
delete mode 100644 c/doc/api_reference/search/defines_5.js
delete mode 100644 c/doc/api_reference/search/enums_0.html
delete mode 100644 c/doc/api_reference/search/enums_0.js
delete mode 100644 c/doc/api_reference/search/enums_1.html
delete mode 100644 c/doc/api_reference/search/enums_1.js
delete mode 100644 c/doc/api_reference/search/enums_2.html
delete mode 100644 c/doc/api_reference/search/enums_2.js
delete mode 100644 c/doc/api_reference/search/enums_3.html
delete mode 100644 c/doc/api_reference/search/enums_3.js
delete mode 100644 c/doc/api_reference/search/enums_4.html
delete mode 100644 c/doc/api_reference/search/enums_4.js
delete mode 100644 c/doc/api_reference/search/files_0.html
delete mode 100644 c/doc/api_reference/search/files_0.js
delete mode 100644 c/doc/api_reference/search/files_1.html
delete mode 100644 c/doc/api_reference/search/files_1.js
delete mode 100644 c/doc/api_reference/search/files_2.html
delete mode 100644 c/doc/api_reference/search/files_2.js
delete mode 100644 c/doc/api_reference/search/files_3.html
delete mode 100644 c/doc/api_reference/search/files_3.js
delete mode 100644 c/doc/api_reference/search/files_4.html
delete mode 100644 c/doc/api_reference/search/files_4.js
delete mode 100644 c/doc/api_reference/search/files_5.html
delete mode 100644 c/doc/api_reference/search/files_5.js
delete mode 100644 c/doc/api_reference/search/files_6.html
delete mode 100644 c/doc/api_reference/search/files_6.js
delete mode 100644 c/doc/api_reference/search/functions_0.html
delete mode 100644 c/doc/api_reference/search/functions_0.js
delete mode 100644 c/doc/api_reference/search/functions_1.html
delete mode 100644 c/doc/api_reference/search/functions_1.js
delete mode 100644 c/doc/api_reference/search/functions_2.html
delete mode 100644 c/doc/api_reference/search/functions_2.js
delete mode 100644 c/doc/api_reference/search/functions_3.html
delete mode 100644 c/doc/api_reference/search/functions_3.js
delete mode 100644 c/doc/api_reference/search/functions_4.html
delete mode 100644 c/doc/api_reference/search/functions_4.js
delete mode 100644 c/doc/api_reference/search/functions_5.html
delete mode 100644 c/doc/api_reference/search/functions_5.js
delete mode 100644 c/doc/api_reference/search/functions_6.html
delete mode 100644 c/doc/api_reference/search/functions_6.js
delete mode 100644 c/doc/api_reference/search/functions_7.html
delete mode 100644 c/doc/api_reference/search/functions_7.js
delete mode 100644 c/doc/api_reference/search/mag_sel.png
delete mode 100644 c/doc/api_reference/search/nomatches.html
delete mode 100644 c/doc/api_reference/search/pages_0.html
delete mode 100644 c/doc/api_reference/search/pages_0.js
delete mode 100644 c/doc/api_reference/search/search.css
delete mode 100644 c/doc/api_reference/search/search.js
delete mode 100644 c/doc/api_reference/search/search_l.png
delete mode 100644 c/doc/api_reference/search/search_m.png
delete mode 100644 c/doc/api_reference/search/search_r.png
delete mode 100644 c/doc/api_reference/search/searchdata.js
delete mode 100644 c/doc/api_reference/search/typedefs_0.html
delete mode 100644 c/doc/api_reference/search/typedefs_0.js
delete mode 100644 c/doc/api_reference/search/typedefs_1.html
delete mode 100644 c/doc/api_reference/search/typedefs_1.js
delete mode 100644 c/doc/api_reference/search/typedefs_2.html
delete mode 100644 c/doc/api_reference/search/typedefs_2.js
delete mode 100644 c/doc/api_reference/search/typedefs_3.html
delete mode 100644 c/doc/api_reference/search/typedefs_3.js
delete mode 100644 c/doc/api_reference/search/typedefs_4.html
delete mode 100644 c/doc/api_reference/search/typedefs_4.js
delete mode 100644 c/doc/api_reference/search/variables_0.html
delete mode 100644 c/doc/api_reference/search/variables_0.js
delete mode 100644 c/doc/api_reference/search/variables_1.html
delete mode 100644 c/doc/api_reference/search/variables_1.js
delete mode 100644 c/doc/api_reference/search/variables_2.html
delete mode 100644 c/doc/api_reference/search/variables_2.js
delete mode 100644 c/doc/api_reference/serializer_8h.html
delete mode 100644 c/doc/api_reference/serializer_8h_source.html
delete mode 100644 c/doc/api_reference/splitbar.png
delete mode 100644 c/doc/api_reference/struct_i_o_t_h_u_b___c_l_i_e_n_t___c_o_n_f_i_g___t_a_g.html
delete mode 100644 c/doc/api_reference/sync_off.png
delete mode 100644 c/doc/api_reference/sync_on.png
delete mode 100644 c/doc/api_reference/tab_a.png
delete mode 100644 c/doc/api_reference/tab_b.png
delete mode 100644 c/doc/api_reference/tab_h.png
delete mode 100644 c/doc/api_reference/tab_s.png
delete mode 100644 c/doc/api_reference/tabs.css
delete mode 100644 c/doc/api_reference/threadapi_8h.html
delete mode 100644 c/doc/api_reference/threadapi_8h_source.html
diff --git a/build/docs/Doxyfile b/build/docs/Doxyfile
index 31efcb19..b1685ff3 100644
--- a/build/docs/Doxyfile
+++ b/build/docs/Doxyfile
@@ -774,6 +774,7 @@ INPUT = mainpage.dox \
../../c/common/inc/httpheaders.h \
../../c/common/inc/threadapi.h \
../../c/common/inc/lock.h \
+ ../../c/iothub_client/inc/iothub_message.h \
../../c/iothub_client/inc/iothub_client_ll.h \
../../c/iothub_client/inc/iothub_client.h \
../../c/serializer/inc/serializer.h \
diff --git a/c/doc/api_reference/agenttime_8h.html b/c/doc/api_reference/agenttime_8h.html
deleted file mode 100644
index 94899af6..00000000
--- a/c/doc/api_reference/agenttime_8h.html
+++ /dev/null
@@ -1,215 +0,0 @@
-
-
-
-
-
-
-Microsoft Azure IoT Device SDK for C: c/common/inc/agenttime.h File Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Microsoft Azure IoT Device SDK for C
- 1.0.0-preview.1.0.0
-
- The Microsoft Azure IoT device libraries for C contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Function prototypes for time related functions.
-More...
-
#include <time.h>
-
-
Go to the source code of this file.
-
-
-time_t get_time (time_t *currentTime)
- Get current calendar time. More...
-
-struct tm * get_gmtime (time_t *currentTime)
- Get UTC in tm
struct. More...
-
-char * get_ctime (time_t *timeToGet)
- Gets a C-string representation of the given time. More...
-
-double get_difftime (time_t stopTime, time_t startTime)
- Gets the difference in seconds between stopTime
and startTime
. More...
-
-
-
-
Function prototypes for time related functions.
-
These functions are implemented with C standard functions, and therefore they are platform independent. But then a platform can replace these functions with its own implementation as necessary.
-
-
-
-
-
-
- char* get_ctime
- (
- time_t *
- timeToGet )
-
-
-
-
-
-
Gets a C-string representation of the given time.
-
This function provides the same functionality as the standard C ctime()
function.
-
-
-
-
-
-
-
-
- double get_difftime
- (
- time_t
- stopTime ,
-
-
-
-
- time_t
- startTime
-
-
-
- )
-
-
-
-
-
-
Gets the difference in seconds between stopTime
and startTime
.
-
This function provides the same functionality as the standard C difftime()
function.
-
-
-
-
-
-
-
-
- struct tm* get_gmtime
- (
- time_t *
- currentTime )
-
-
-
-
-
-
Get UTC in tm
struct.
-
This function provides the same functionality as the standard C gmtime()
function.
-
-
-
-
-
-
-
-
- time_t get_time
- (
- time_t *
- currentTime )
-
-
-
-
-
-
Get current calendar time.
-
This function provides the same functionality as the standard C time()
function.
-
-
-
-
-
-
-
-
diff --git a/c/doc/api_reference/agenttime_8h_source.html b/c/doc/api_reference/agenttime_8h_source.html
deleted file mode 100644
index 8ab1ed36..00000000
--- a/c/doc/api_reference/agenttime_8h_source.html
+++ /dev/null
@@ -1,131 +0,0 @@
-
-
-
-
-
-
-Microsoft Azure IoT Device SDK for C: c/common/inc/agenttime.h Source File
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Microsoft Azure IoT Device SDK for C
- 1.0.0-preview.1.0.0
-
- The Microsoft Azure IoT device libraries for C contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the documentation of this file.
-
-
-
-
-
-
-
-
-
-
-
-
-
27 extern time_t
get_time (time_t* currentTime);
-
-
34 extern struct tm*
get_gmtime (time_t* currentTime);
-
-
41 extern char *
get_ctime (time_t* timeToGet);
-
-
49 extern double get_difftime (time_t stopTime, time_t startTime);
-
-
-
-
-
-
-
time_t get_time(time_t *currentTime)
Get current calendar time.
-
char * get_ctime(time_t *timeToGet)
Gets a C-string representation of the given time.
-
struct tm * get_gmtime(time_t *currentTime)
Get UTC in tm struct.
-
double get_difftime(time_t stopTime, time_t startTime)
Gets the difference in seconds between stopTime and startTime.
-
-
-
-
-
diff --git a/c/doc/api_reference/annotated.html b/c/doc/api_reference/annotated.html
deleted file mode 100644
index 561cc1b7..00000000
--- a/c/doc/api_reference/annotated.html
+++ /dev/null
@@ -1,103 +0,0 @@
-
-
-
-
-
-
-Microsoft Azure IoT Device SDK for C: Data Structures
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Microsoft Azure IoT Device SDK for C
- 1.0.0-preview.1.0.0
-
- The Microsoft Azure IoT device libraries for C contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Here are the data structures with brief descriptions:
-
-
-
-
-
diff --git a/c/doc/api_reference/arrowdown.png b/c/doc/api_reference/arrowdown.png
deleted file mode 100644
index 9d1437d2010806e6ce1610d15a7ec44fbce925df..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 241
zcmVe21mjbI09ldh6KR{+5;4Ut*>snJQBn%-5Jp$5KZ1c
zFW=1Uo5_5${-WzTIGPEZ!a3j%0xtVS+qRq76%<%EO*5^XU;!287-$fX^fvYeBRpsR
z9RrQs!EM-~uWh)4-y8&Fmyg&Z`nu2f_x-?t(Jo~1L+taXT%~@3F=}nR3HvaE62*Y*
r`Wm~AFQG*BA?4#2sB!+8{zJeQs>~svYa<7n00000NkvXXu0mjf_~v80
diff --git a/c/doc/api_reference/arrowright.png b/c/doc/api_reference/arrowright.png
deleted file mode 100644
index a2fffb6fcffd16be189938656c53c9d2c7a52a01..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 227
zcmV<90382`P)EWid>$&`W>cuROa+fa>f3JEvH8>Ugbo1ENCaZkSa
z>pLL?fS>6Cl+X&G_q_1lU({C4xf4JRF9Ov-93|STuO*5?fFxG%sJWO*w2@>7kRm0B
z)fZby7V1lhDgaB)A&$jaq8WfCM^KB25*z?5pSExljc1Tb5N~1BH2f~Xwdfsaa0u`X
d?Qi@C!5#X2Cu4fy23i0B002ovPDHLkV1fr0Rs{e6
diff --git a/c/doc/api_reference/base64_8h.html b/c/doc/api_reference/base64_8h.html
deleted file mode 100644
index 8c860718..00000000
--- a/c/doc/api_reference/base64_8h.html
+++ /dev/null
@@ -1,216 +0,0 @@
-
-
-
-
-
-
-Microsoft Azure IoT Device SDK for C: c/common/inc/base64.h File Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Microsoft Azure IoT Device SDK for C
- 1.0.0-preview.1.0.0
-
- The Microsoft Azure IoT device libraries for C contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Prototypes for functions related to encoding/decoding a buffer
using standard base64 encoding.
-More...
-
#include "strings.h"
-#include "buffer_.h"
-#include <stddef.h>
-
-
Go to the source code of this file.
-
-
-STRING_HANDLE Base64_Encode (BUFFER_HANDLE input)
- Base64 encodes a buffer and returns the resulting string. More...
-
-STRING_HANDLE Base64_Encode_Bytes (const unsigned char *source, size_t size)
- Base64 encodes the buffer pointed to by source
and returns the resulting string. More...
-
-BUFFER_HANDLE Base64_Decoder (const char *source)
- Base64 decodes the buffer pointed to by source
and returns the resulting buffer. More...
-
-
-
-
Prototypes for functions related to encoding/decoding a buffer
using standard base64 encoding.
-
-
-
-
-
-
- BUFFER_HANDLE Base64_Decoder
- (
- const char *
- source )
-
-
-
-
-
-
Base64 decodes the buffer pointed to by source
and returns the resulting buffer.
-
Parameters
-
- source A base64 encoded string buffer.
-
-
-
-
This function decodes the string pointed at by source
using base64 decoding and returns the resulting buffer. If source
is NULL
then Base64_Decoder
returns NULL. If the string pointed to by source
is zero length then the handle returned refers to a zero length buffer. If there is any memory allocation failure during the decode or if the source string has an invalid length for a base 64 encoded string then Base64_Decoder
returns NULL
.
-
Returns A BUFFER_HANDLE
pointing to a buffer containing the result of base64 decoding source
.
-
-
-
-
-
-
-
-
- STRING_HANDLE Base64_Encode
- (
- BUFFER_HANDLE
- input )
-
-
-
-
-
-
Base64 encodes a buffer and returns the resulting string.
-
Parameters
-
- input The buffer that needs to be base64 encoded.
-
-
-
-
Base64_Encode takes as a parameter a pointer to a BUFFER. If input
is NULL
then Base64_Encode
returns NULL
. The size of the BUFFER pointed to by input
may be zero. If when allocating memory to produce the encoding a failure occurs, then Base64_Encode
returns NULL
. Otherwise Base64_Encode
returns a pointer to a STRING. That string contains the base 64 encoding of the input
. This encoding of input
will not contain embedded line feeds.
-
Returns A STRING_HANDLE
containing the base64 encoding of input
.
-
-
-
-
-
-
-
-
- STRING_HANDLE Base64_Encode_Bytes
- (
- const unsigned char *
- source ,
-
-
-
-
- size_t
- size
-
-
-
- )
-
-
-
-
-
-
Base64 encodes the buffer pointed to by source
and returns the resulting string.
-
Parameters
-
- source The buffer that needs to be base64 encoded.
- size The size.
-
-
-
-
This function produces a STRING_HANDLE
containing the base64 encoding of the buffer pointed to by source
, having the size as given by size
. If source
is NULL
then Base64_Encode_Bytes
returns NULL
If source
is not NULL
and size
is zero, then Base64_Encode_Bytes
produces an empty STRING_HANDLE
. Otherwise, Base64_Encode_Bytes
produces a STRING_HANDLE
containing the Base64 representation of the buffer. In case of any errors, Base64_Encode_Bytes
returns NULL
.].
-
Returns NULL
in case an error occurs or a STRING_HANDLE
containing the base64 encoding of input
.
-
-
-
-
-
-
-
-
diff --git a/c/doc/api_reference/base64_8h_source.html b/c/doc/api_reference/base64_8h_source.html
deleted file mode 100644
index 4533dbfd..00000000
--- a/c/doc/api_reference/base64_8h_source.html
+++ /dev/null
@@ -1,131 +0,0 @@
-
-
-
-
-
-
-Microsoft Azure IoT Device SDK for C: c/common/inc/base64.h Source File
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Microsoft Azure IoT Device SDK for C
- 1.0.0-preview.1.0.0
-
- The Microsoft Azure IoT device libraries for C contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the documentation of this file.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
STRING_HANDLE Base64_Encode_Bytes(const unsigned char *source, size_t size)
Base64 encodes the buffer pointed to by source and returns the resulting string.
-
STRING_HANDLE Base64_Encode(BUFFER_HANDLE input)
Base64 encodes a buffer and returns the resulting string.
-
BUFFER_HANDLE Base64_Decoder(const char *source)
Base64 decodes the buffer pointed to by source and returns the resulting buffer.
-
-
-
-
-
diff --git a/c/doc/api_reference/bc_s.png b/c/doc/api_reference/bc_s.png
deleted file mode 100644
index fd162ea76db92647e51fbcd742f46c016f9f633d..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 624
zcmV-$0+0QPP)P1xSY#5Gv_zwo_qMFXPr)G77B$3>uj&r`%Xlh
z3F&nDoK~w9)oQgknM@9eh%?r1w=ZZkn&&>B?-!oWbi3W(9I&^yC;3Ca-)}*c2LN8I
z0^&bknNFuWcDwy9Vh&)fR!j04#@H|z3<~gJH2Y}@G@DH&-gP(}myAZ^5rBJ3pwVb3
z@hL$NJ_iDUKZpZ>W-?H(*H@3+_jo*;I-RZw;IRzUYPD4$jO0_d+kM>c_c#9sNb3V;
zastO~4+evmtXi!S5ocQ_lj)AlW*eZ&RaU7~h={Wdl}a^66*$#-RxX!`h}QQb3@vOh
z7!FveR3ai;-&gc{{e7p?ITBK-6cN$-erUB?gQ6(DX2oKWh&VebjU5A%H6kRFNh0Fx
z7H$!O1l|va!xk$P3Pi-&N3YjwMERQlUa@>WznZ)Vbv<*rTtAVNCn+QniB(|NVzKBk
z#pY}_dn*fOu~;ZcD+Y5JXA|DFmG?qC9#??dXwHu#jz*(Vd#Q(9E~ms_(A);f-vIDt
zDf?I~Cixh?yoS*pBe}!<7tv@`Zq95rOJ6^k&*$$r(Ppz*2b%i^B}vbx$K&x2u0kXd
z*+z42bbo;4J`r)oGMUU*NKA+F*8#|P=PKZuTWIbFk{KeR_5Bz9%d?zJLgcXk0000<
KMNUMnLSTZcL=TGq
diff --git a/c/doc/api_reference/bdwn.png b/c/doc/api_reference/bdwn.png
deleted file mode 100644
index 7c943f0178f06cc641b5e069ca6ec290369c8023..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 139
zcmeAS@N?(olHy`uVBq!ia0vp^>_E)H!3HEvS)PKZAWs*^kP61PbGdmN40v4bACM5r
zTIh9bN{H5*6Afvc5igd$|7FR0AX>06Wj{mB%ley(%NinQz21C|{qXgxXSx!;y!{sI
n`ypo8^JnkEb(nZRITbK9bxE6Z3Lmion$FgTe~DWM4fu|YD-
diff --git a/c/doc/api_reference/classes.html b/c/doc/api_reference/classes.html
deleted file mode 100644
index 2f59eb90..00000000
--- a/c/doc/api_reference/classes.html
+++ /dev/null
@@ -1,107 +0,0 @@
-
-
-
-
-
-
-Microsoft Azure IoT Device SDK for C: Data Structure Index
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Microsoft Azure IoT Device SDK for C
- 1.0.0-preview.1.0.0
-
- The Microsoft Azure IoT device libraries for C contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/c/doc/api_reference/closed.png b/c/doc/api_reference/closed.png
deleted file mode 100644
index e4e2b25adb14b76c58d22aa1e4122e0c3338d4ac..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 125
zcmeAS@N?(olHy`uVBq!ia0vp^oFL4>1|%O$WD@{VE}kxqAr*{o=U(JwP~dQh&wG{9
z7bU@>l`1S#9&h*6jlsikGp7o-gD)%l1R2KAyPsb#-E|=@%i8tlX|Z2rRtJQ;8nPKn
XltlO!^KID#G>^g4)z4*}Q$iB}Y*r*7
diff --git a/c/doc/api_reference/dir_12d2b36f129c41023f7f4a6bff2578c5.html b/c/doc/api_reference/dir_12d2b36f129c41023f7f4a6bff2578c5.html
deleted file mode 100644
index 1ea288bf..00000000
--- a/c/doc/api_reference/dir_12d2b36f129c41023f7f4a6bff2578c5.html
+++ /dev/null
@@ -1,101 +0,0 @@
-
-
-
-
-
-
-Microsoft Azure IoT Device SDK for C: c/serializer Directory Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Microsoft Azure IoT Device SDK for C
- 1.0.0-preview.1.0.0
-
- The Microsoft Azure IoT device libraries for C contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/c/doc/api_reference/dir_1784a01aa976a8c78ef5dfc3737bcac8.html b/c/doc/api_reference/dir_1784a01aa976a8c78ef5dfc3737bcac8.html
deleted file mode 100644
index 74a1c902..00000000
--- a/c/doc/api_reference/dir_1784a01aa976a8c78ef5dfc3737bcac8.html
+++ /dev/null
@@ -1,105 +0,0 @@
-
-
-
-
-
-
-Microsoft Azure IoT Device SDK for C: c Directory Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Microsoft Azure IoT Device SDK for C
- 1.0.0-preview.1.0.0
-
- The Microsoft Azure IoT device libraries for C contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/c/doc/api_reference/dir_3fa79a50e591a13d34768ad07721929e.html b/c/doc/api_reference/dir_3fa79a50e591a13d34768ad07721929e.html
deleted file mode 100644
index bcff65a7..00000000
--- a/c/doc/api_reference/dir_3fa79a50e591a13d34768ad07721929e.html
+++ /dev/null
@@ -1,101 +0,0 @@
-
-
-
-
-
-
-Microsoft Azure IoT Device SDK for C: c/iothub_client Directory Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Microsoft Azure IoT Device SDK for C
- 1.0.0-preview.1.0.0
-
- The Microsoft Azure IoT device libraries for C contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/c/doc/api_reference/dir_4512fd3943e6edf693cef6803bd9b15b.html b/c/doc/api_reference/dir_4512fd3943e6edf693cef6803bd9b15b.html
deleted file mode 100644
index e4c91f78..00000000
--- a/c/doc/api_reference/dir_4512fd3943e6edf693cef6803bd9b15b.html
+++ /dev/null
@@ -1,105 +0,0 @@
-
-
-
-
-
-
-Microsoft Azure IoT Device SDK for C: c/serializer/inc Directory Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Microsoft Azure IoT Device SDK for C
- 1.0.0-preview.1.0.0
-
- The Microsoft Azure IoT device libraries for C contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-file schemalib.h [code]
- The IoT Hub Serializer APIs allows developers to define models for their devices.
-
-file serializer.h [code]
- The IoT Hub Serializer APIs allows developers to define models for their devices.
-
-
-
-
-
-
-
diff --git a/c/doc/api_reference/dir_72aec881c4ddd8f448eae7bd490815ae.html b/c/doc/api_reference/dir_72aec881c4ddd8f448eae7bd490815ae.html
deleted file mode 100644
index 814cb314..00000000
--- a/c/doc/api_reference/dir_72aec881c4ddd8f448eae7bd490815ae.html
+++ /dev/null
@@ -1,105 +0,0 @@
-
-
-
-
-
-
-Microsoft Azure IoT Device SDK for C: c/iothub_client/inc Directory Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Microsoft Azure IoT Device SDK for C
- 1.0.0-preview.1.0.0
-
- The Microsoft Azure IoT device libraries for C contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/c/doc/api_reference/dir_cdcbff5a6a1122bd9bb23b5044523779.html b/c/doc/api_reference/dir_cdcbff5a6a1122bd9bb23b5044523779.html
deleted file mode 100644
index b775e106..00000000
--- a/c/doc/api_reference/dir_cdcbff5a6a1122bd9bb23b5044523779.html
+++ /dev/null
@@ -1,101 +0,0 @@
-
-
-
-
-
-
-Microsoft Azure IoT Device SDK for C: c/common Directory Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Microsoft Azure IoT Device SDK for C
- 1.0.0-preview.1.0.0
-
- The Microsoft Azure IoT device libraries for C contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/c/doc/api_reference/dir_e7e6b493d3d7754f3ea1acccc5db86e9.html b/c/doc/api_reference/dir_e7e6b493d3d7754f3ea1acccc5db86e9.html
deleted file mode 100644
index 3f36d105..00000000
--- a/c/doc/api_reference/dir_e7e6b493d3d7754f3ea1acccc5db86e9.html
+++ /dev/null
@@ -1,120 +0,0 @@
-
-
-
-
-
-
-Microsoft Azure IoT Device SDK for C: c/common/inc Directory Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Microsoft Azure IoT Device SDK for C
- 1.0.0-preview.1.0.0
-
- The Microsoft Azure IoT device libraries for C contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-file agenttime.h [code]
- Function prototypes for time related functions.
-
-file base64.h [code]
- Prototypes for functions related to encoding/decoding a buffer
using standard base64 encoding.
-
-file httpapi.h [code]
- This module implements the standard HTTP API used by the C IoT client library.
-
-file httpapiex.h [code]
- This is a utility module that provides HTTP requests with build-in retry capabilities.
-
-
-
-
-file lock.h [code]
- A minimalistic platform agnostic lock abstraction for thread synchronization.
-
-file threadapi.h [code]
- This module implements support for creating new threads, terminating threads and sleeping threads.
-
-
-
-
-
-
-
diff --git a/c/doc/api_reference/doc.png b/c/doc/api_reference/doc.png
deleted file mode 100644
index 7f92e54f9bbca8844816fcd6aa869e13e3bdff4c..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 652
zcmV;70(1R|P)cnV*D^DtB-yoj}pMkCRXU@YX~C0x&}
z9Wh6k@f0T(r`TbInXqTA|6l9hLu<`uGk_n12jD01;{rZ_MYLM2*<>gq25CpcPUKZM8QF|aHPpU-E6Bq-virzi8hv$LaOXt&$0lj3NRQT`zR
z+-QqvY3d#yAI-HywA6_$K3iX3U$VC)@xY=w{uh+S_xZwT$oo=@a
zumr~pI-O3nEStxAnQ4w2PTT5BETBHZG?(Xi4ExBBd>+5SX
zS$3#%Lf+oq%)a4p2(ScKi&VWTFBXd?OihulkB*MWX0t{xnM|^>vVtaVJRSoq;oFe4
zE-x>+zrSa5bJK*YQMD~(Z*R|#r_*Vs)2XY#w5EDwT|V08Vi2K;tQ!QmGWXySp48
zA9Hqg#^K>1+uPgbzFaPU9!LNuxOOnlK^dr8WgzbtGst8z-wOP7ij;w>&FAxu8E9Pp
zJn_JnkE4L5Lgbo%5$NR3Uwq0yYyLK!cdBOq7U5`-HdiVYuCA^ODS#UkzA`#LKL=QX
mqkwIL)o3&T{u%%OU*>O3D#HaCe_}EK0000
z^Fd)@VK)CI)Mo$y8VCS>A6+Rx@fjHz0K7XSBt!s90DuMpfIo(=6d+u>bO``zk*{+A
zXdnQ%JT-3I7yx`y13&=q7t-$m$d439a_VzT{?yde06;CWpZDz9Q)EL(4(;f;=-9b)
zXO4|e>~sfU-n+?HW#iNR(3j}bb=N6Zmu}t{)ZwS-7GBYrUx)7Fl#??6un^^=H5(GE
zzQl&aYO&?Rr!(X$=BN-KM3>kVTREKT#$dMtlt7BzpAdp$-loKI~k-eto?!
zC^R&5y3DH4qenY}f`Z`h@2}1)D=Se}RwfR*_%nO^_U#$ur5V4))
zB~OW_b8+9kePz}etD>R;0RaI3yjzp=r(BgU-Mo+FeF5*oH9w;z##XIbDIYg)-W+Gw
zEx#$(g>nW+l#dnp!Gi~fbne_4ojP?g_;>Bv~+_gkO8@HJ=FvVA(XN03t=*dh4xkEnBt>En2hy0H0J{
zU5&>de;g-HoEW7UeT&N?w_w2neE8vqsnqGV>zqA%wgjL0$Rm%qr%s(}oF6-O4CBU)
zD`rq(l8B{CmpYk9<32Mp6KmJ56@lRC)2GJ|A3hua>ZMhyR)IN5q~3Jujit`4)YMdq
zPhwkuHQSRVh08?eQ#OXOP8NhmVgrEsNRNjrOb5s{VZwxz#~ypkl1yoB(w?McneSxX
zci(+FK%ON_mRJ%Z2G*@xr@p1)J9Ow^-0=m0ucF}d&p(f(j^v1l2=~)ZKW(u)Wy%!w
z+RSqK`T3xoYTne0f2WiAe=mTvJ3A@?RP_m4wY)|5*Qd*DoHo5FTeZ}AAInE
z`X=y}M8E#}>sYa3MIwDor>{l)4l(=m%rnnm+qP{oFV3)iIbVG7MGJV-rcIOfE3M}G
z-o1N!=FOW2z`G^ZqeqXb*Jv+p&1Zidpwc(reA8imJ#0UC=bd*_`6+$WQ&3=?drqgC
z-708l1!kjT$BxC>vu7vE@9VC+E^GDb)fNY&{YWyY^EmY^W+3syh7Ggmuvh8Ci4!Fe
zqbO5OnLGv?-K$qGgXfJm-jJ4*IB3wI6loD=0GLQ=Z@XzX<y+V5y?MU$YDW&f@VEyac%Ux%Vrl6qDJhngFWrQBDqxPBoIL=%J25d)USXsFVS_qWh~nVdNs4gj!__#)2k-@kt{`Exa$(Z1|5iP87pf4_15>Z`9xp-Fpl
z+WpY)s5gf?U9qvTDKRn1ZME|9@{pUGD+#`yE!7nj6=mGfAMD+`7l3zn?b;Q0-g&2m
z=gB9ZR0Y6d@^HS^x?>xQ3<(J-%FfOXF~|Sxv(HKqD1e-yp`o7Vo_o$BJY&WTQ5>lQ
zBm>;M*qRj3Y<($X#*8t}*Q{A1ts#;8YOs>ebp<@JcieGDR(iVn3BbEG-c<4?+3Z)c
z1^by_nzX2wUw#>F+O)Bpu}Y=T^3u}MoaO{d%-gqbkEHH`%lRqb+GPQtJ~HJo-B*q^
zfIPl@Qvk85Jc5|M4jecDx7%$2$m8(<@b1V+b(P3=mNI(uXycr%5^QOS?BZ@*E4C-BuQ`(dCP6~GZ|o9|Ni}rv-jVB9}hqLu<`q|&prbK&!Ozpy7Ws$
z^W{bIzTk3x3P5&Q0H}{lc}(|}V;vx0zA1ou_U!4AHlnZ6(o%46TL60Rz4rik_mCk&
z6hLeVDN?2STDx|ww1!0TtK^fC(lx&&kQb#*G`N@;>KsehNT#S?(xi-Gsj|>!?S?=3S9E#@ptsy
zci(OB%%49WUw!peBzX#WA4U6bEnK(|&6_s|fLgR<$r5=DspPk`Im%Wtfqr$#{rvOK
zV8W{?qvj}iU3?uWBS(&`<*Sy+?h_|YjMh4XTI<%WlUJm&YM1@thaV6hAAg*mlWC*S
z*f7!BSjvH^h(O`J{?YE_ZishTh
z4I$b9ynDom5%SNUPE=-QW?GUfmGaFu->BEoxpQZiRD*dS^*REYMqj384Y01+WIb%MY{rdI8;K74ci`C?d?Y6}(
z^JD;I&jDW)zW(}a1E5SMAWjsU*U6J7)&Ic2Kmf3iR!z<1HI5%Y-jXCqXkp=RMHL<%
zZUOJ3k3Pc6l`FGZoe9*jm=v#pZP(Z7*vt;YXFwL
zbm>y@A%?v9CZCHIEm{;(S3Ce++T(zTGBoQ$%vvdPq$CA_U$w>Iwb^YbO>>@{oF7=wp?NPBje`NUtg
zt19xT_GaRZrOm9FGiTNrr}$@%L9>@gJ?WIag-7lwQ>MiA>C*=Q>Lp!X0P5boyJyCX
z8O9xBlvoXbm8A(_
z3&YT%L+$<~Qjcoalnv&;cqTipfB*hqVgaBQ3D5@*9#lHN{q|cmg9My?Uu1-+%u-wr<@jZRLnK2Ee?tNeQb~tx`Y6jT@(&r+i#+
za4=f5Xra!ltE*8`Qi96L${dj)e~HFFUDN5X>6}X*)xyXlO~001-m4eHdk5{6O20O*
zjEoFO;N%nE0eClM;xwBwGo0G7fbC?$Ld-8{`SRrwe+=~)ZBo-Aa-t`iMP$UP6cwww
zkw0QPhqA|g#3J|E66^rU66d3}Z&7Y>4uECn=H>$M?%3E^krzXL
z+EJA_Lq6pw0Q|Rzwp_!84NHlNlK6gGKmGI*TrSsf+LOu!;N9ep8#r)aW}7x`uz&x4
z?AfzNofBk)hK9ndN7l4y)8xhbQIDPuG
z{5&S@_V(Lv$CfQyaP;WW<~21n5Nh1GF#yy_d-v|ercIl0)m2x`(T-X>ole|z(@g;I
zhm*{(qM{=8Z2$xS{}j66h8u9{(xrZZfq{(tW3=jwzjOMO`9I&)f9pg{%3&$z_N`N
z*Qryde^iSjFnPcJ`fG>g&71eq&zdx8A^`2=|4;cdkTDtUO<$#@rAsbeyckBgyQ{0K
zjq_`+xke59mMvT2#~*)m^XL%CMIC(s;Lj$;r&^p2kPP*I0l@zNoznjQfBN+fQd`ok
z0Pq*l5du`uM4q$EM2!HTfdJrdLcS*@05lK){H63CTk-+(MgWZ}00000NkvXXu0mjf
D-zDsi
diff --git a/c/doc/api_reference/dynsections.js b/c/doc/api_reference/dynsections.js
deleted file mode 100644
index 85e18369..00000000
--- a/c/doc/api_reference/dynsections.js
+++ /dev/null
@@ -1,97 +0,0 @@
-function toggleVisibility(linkObj)
-{
- var base = $(linkObj).attr('id');
- var summary = $('#'+base+'-summary');
- var content = $('#'+base+'-content');
- var trigger = $('#'+base+'-trigger');
- var src=$(trigger).attr('src');
- if (content.is(':visible')===true) {
- content.hide();
- summary.show();
- $(linkObj).addClass('closed').removeClass('opened');
- $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png');
- } else {
- content.show();
- summary.hide();
- $(linkObj).removeClass('closed').addClass('opened');
- $(trigger).attr('src',src.substring(0,src.length-10)+'open.png');
- }
- return false;
-}
-
-function updateStripes()
-{
- $('table.directory tr').
- removeClass('even').filter(':visible:even').addClass('even');
-}
-
-function toggleLevel(level)
-{
- $('table.directory tr').each(function() {
- var l = this.id.split('_').length-1;
- var i = $('#img'+this.id.substring(3));
- var a = $('#arr'+this.id.substring(3));
- if (l
-
-
-
-
-
-Microsoft Azure IoT Device SDK for C: File List
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Microsoft Azure IoT Device SDK for C
- 1.0.0-preview.1.0.0
-
- The Microsoft Azure IoT device libraries for C contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Here is a list of all documented files with brief descriptions:
-
[detail level 1 2 3 4 ]
- ▼ c
- ▼ common
- ▼ inc
- agenttime.h Function prototypes for time related functions
- base64.h Prototypes for functions related to encoding/decoding a buffer
using standard base64 encoding
- httpapi.h This module implements the standard HTTP API used by the C IoT client library
- httpapiex.h This is a utility module that provides HTTP requests with build-in retry capabilities
- httpheaders.h This is a utility module that handles HTTP message-headers
- lock.h A minimalistic platform agnostic lock abstraction for thread synchronization
- threadapi.h This module implements support for creating new threads, terminating threads and sleeping threads
- ▼ iothub_client
- ▼ inc
- iothub_client.h Extends the IoTHubCLient_LL module with additional features
- iothub_client_ll.h APIs that allow a user (usually a device) to communicate with an Azure IoTHub
- ▼ serializer
- ▼ inc
- schemalib.h The IoT Hub Serializer APIs allows developers to define models for their devices
- serializer.h The IoT Hub Serializer APIs allows developers to define models for their devices
-
-
-
-
-
-
-
diff --git a/c/doc/api_reference/folderclosed.png b/c/doc/api_reference/folderclosed.png
deleted file mode 100644
index 359f2073ab18d12249da8c0f63e64dac853836f1..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 493
zcmVcnSpKB@lNY;uIWU55XLTOAL2_gp^l8N{obf_2QC>adp=$Gtv@F
z(DE-=xvKozWp{TPgkcEqG9&30iswe7U5>I0Y0Q!t2w&{_C39*=9$M(?(Y+6+>DsmyOQn^ArjNa=Dxt7mGz!s};Ro@9pUo9S#R4G8^^fa(US8SnSv9
zm1NTEDo!8=PN$RO*xGNmn;BazHVaMuGy`!Uu=lJ7FUh=X3i4ll{YzTmB5#qUBW$E{NDgbK)*;}?mokt?+Elk9Kopi#&jF(F)?mF}e|opk*46b%
zrBVP6VxNlpEC0LO?an)$&b-xX&6~}pL8H+ysMqU8%bMWcab~Zasnu%pJIVV$Gq`_u
j{s8YiHL!LAZViKd{Yg*+weeQQZLm#cE44xRW+uT@B08h1{>ff@&5;K0FrPx9Q@sGht%kPzbmv_ExO&V1@J0T
z0|gUV
zuv)F$UazOJtyC(?Ye?qW7mGy&Q6Z3ZP&Y=SQAkN*4X)R#`e~vHv#%FgVDKL{UlQ2zW?n|-f9vXsd+TT-u+_RkVXon(_Bjoc(m3YZ#T
zzuyC2rb*43MAzbFx`B|z1}zw(x8ZQ;1*7i;FE+2;ZYu;YIKb|TG4!#5YEByYW0X)TDg2x&V0V3h-00000NkvXXu0mjff?DA&
diff --git a/c/doc/api_reference/functions.html b/c/doc/api_reference/functions.html
deleted file mode 100644
index 3db6a00f..00000000
--- a/c/doc/api_reference/functions.html
+++ /dev/null
@@ -1,117 +0,0 @@
-
-
-
-
-
-
-Microsoft Azure IoT Device SDK for C: Data Fields
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Microsoft Azure IoT Device SDK for C
- 1.0.0-preview.1.0.0
-
- The Microsoft Azure IoT device libraries for C contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Here is a list of all documented struct and union fields with links to the struct/union documentation for each field:
-
-
-
-
-
diff --git a/c/doc/api_reference/functions_vars.html b/c/doc/api_reference/functions_vars.html
deleted file mode 100644
index 3362ee08..00000000
--- a/c/doc/api_reference/functions_vars.html
+++ /dev/null
@@ -1,117 +0,0 @@
-
-
-
-
-
-
-Microsoft Azure IoT Device SDK for C: Data Fields - Variables
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Microsoft Azure IoT Device SDK for C
- 1.0.0-preview.1.0.0
-
- The Microsoft Azure IoT device libraries for C contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/c/doc/api_reference/globals.html b/c/doc/api_reference/globals.html
deleted file mode 100644
index d2165ecf..00000000
--- a/c/doc/api_reference/globals.html
+++ /dev/null
@@ -1,425 +0,0 @@
-
-
-
-
-
-
-Microsoft Azure IoT Device SDK for C: Globals
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Microsoft Azure IoT Device SDK for C
- 1.0.0-preview.1.0.0
-
- The Microsoft Azure IoT device libraries for C contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Here is a list of all documented functions, variables, defines, enums, and typedefs with links to the documentation:
-
-
- b -
-
-
-
- d -
-
-
-
- e -
-
-
-
- g -
-
-
-
- h -
-
-
-
- i -
-
-
-
- l -
-
-
-
- s -
-
-
-
- t -
-
-
-
- u -
-
-
-
- w -
-
-
-
-
-
diff --git a/c/doc/api_reference/globals_defs.html b/c/doc/api_reference/globals_defs.html
deleted file mode 100644
index fe30f513..00000000
--- a/c/doc/api_reference/globals_defs.html
+++ /dev/null
@@ -1,131 +0,0 @@
-
-
-
-
-
-
-Microsoft Azure IoT Device SDK for C: Globals
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Microsoft Azure IoT Device SDK for C
- 1.0.0-preview.1.0.0
-
- The Microsoft Azure IoT device libraries for C contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/c/doc/api_reference/globals_enum.html b/c/doc/api_reference/globals_enum.html
deleted file mode 100644
index 07b13af4..00000000
--- a/c/doc/api_reference/globals_enum.html
+++ /dev/null
@@ -1,140 +0,0 @@
-
-
-
-
-
-
-Microsoft Azure IoT Device SDK for C: Globals
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Microsoft Azure IoT Device SDK for C
- 1.0.0-preview.1.0.0
-
- The Microsoft Azure IoT device libraries for C contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/c/doc/api_reference/globals_func.html b/c/doc/api_reference/globals_func.html
deleted file mode 100644
index dbef2409..00000000
--- a/c/doc/api_reference/globals_func.html
+++ /dev/null
@@ -1,308 +0,0 @@
-
-
-
-
-
-
-Microsoft Azure IoT Device SDK for C: Globals
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Microsoft Azure IoT Device SDK for C
- 1.0.0-preview.1.0.0
-
- The Microsoft Azure IoT device libraries for C contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- b -
-
-
-
- g -
-
-
-
- h -
-
-
-
- i -
-
-
-
- l -
-
-
-
- s -
-
-
-
- t -
-
-
-
- u -
-
-
-
-
-
diff --git a/c/doc/api_reference/globals_type.html b/c/doc/api_reference/globals_type.html
deleted file mode 100644
index 227ce3b0..00000000
--- a/c/doc/api_reference/globals_type.html
+++ /dev/null
@@ -1,143 +0,0 @@
-
-
-
-
-
-
-Microsoft Azure IoT Device SDK for C: Globals
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Microsoft Azure IoT Device SDK for C
- 1.0.0-preview.1.0.0
-
- The Microsoft Azure IoT device libraries for C contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/c/doc/api_reference/html/dir_72aec881c4ddd8f448eae7bd490815ae.html b/c/doc/api_reference/html/dir_72aec881c4ddd8f448eae7bd490815ae.html
index 814cb314..f07a32b1 100644
--- a/c/doc/api_reference/html/dir_72aec881c4ddd8f448eae7bd490815ae.html
+++ b/c/doc/api_reference/html/dir_72aec881c4ddd8f448eae7bd490815ae.html
@@ -93,6 +93,9 @@ Files
file iothub_client_ll.h [code]
APIs that allow a user (usually a device) to communicate with an Azure IoTHub.
+file iothub_message.h [code]
+ The IoTHub_Message
component encapsulates one message that can be transferred by an IoT hub client.
+
diff --git a/c/doc/api_reference/html/files.html b/c/doc/api_reference/html/files.html
index c191308b..b2cde9df 100644
--- a/c/doc/api_reference/html/files.html
+++ b/c/doc/api_reference/html/files.html
@@ -102,10 +102,11 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
▼ inc
iothub_client.h Extends the IoTHubCLient_LL module with additional features
iothub_client_ll.h APIs that allow a user (usually a device) to communicate with an Azure IoTHub
-
▼ serializer
-
▼ inc
-
schemalib.h The IoT Hub Serializer APIs allows developers to define models for their devices
-
serializer.h The IoT Hub Serializer APIs allows developers to define models for their devices
+
iothub_message.h The IoTHub_Message
component encapsulates one message that can be transferred by an IoT hub client
+
▼ serializer
+
▼ inc
+
schemalib.h The IoT Hub Serializer APIs allows developers to define models for their devices
+
serializer.h The IoT Hub Serializer APIs allows developers to define models for their devices
diff --git a/c/doc/api_reference/html/globals.html b/c/doc/api_reference/html/globals.html
index d2165ecf..7167bc9f 100644
--- a/c/doc/api_reference/html/globals.html
+++ b/c/doc/api_reference/html/globals.html
@@ -270,6 +270,12 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
IOTHUB_CLIENT_STATUS_TAG
: iothub_client_ll.h
+IOTHUB_MESSAGE_RESULT
+: iothub_message.h
+
+IOTHUB_MESSAGE_RESULT_TAG
+: iothub_message.h
+
IoTHubClient_Create()
: iothub_client.h
@@ -321,12 +327,42 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
IoTHubClient_SetOption()
: iothub_client.h
+IoTHubMessage_Clone()
+: iothub_message.h
+
+IOTHUBMESSAGE_CONTENT_TYPE
+: iothub_message.h
+
+IOTHUBMESSAGE_CONTENT_TYPE_TAG
+: iothub_message.h
+
+IoTHubMessage_CreateFromByteArray()
+: iothub_message.h
+
+IoTHubMessage_CreateFromString()
+: iothub_message.h
+
+IoTHubMessage_Destroy()
+: iothub_message.h
+
IOTHUBMESSAGE_DISPOSITION_RESULT
: iothub_client_ll.h
IOTHUBMESSAGE_DISPOSITION_RESULT_TAG
: iothub_client_ll.h
+IoTHubMessage_GetByteArray()
+: iothub_message.h
+
+IoTHubMessage_GetContentType()
+: iothub_message.h
+
+IoTHubMessage_GetString()
+: iothub_message.h
+
+IoTHubMessage_Properties()
+: iothub_message.h
+
diff --git a/c/doc/api_reference/html/globals_enum.html b/c/doc/api_reference/html/globals_enum.html
index 07b13af4..e209511e 100644
--- a/c/doc/api_reference/html/globals_enum.html
+++ b/c/doc/api_reference/html/globals_enum.html
@@ -113,6 +113,12 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
IOTHUB_CLIENT_STATUS_TAG
: iothub_client_ll.h
+IOTHUB_MESSAGE_RESULT_TAG
+: iothub_message.h
+
+IOTHUBMESSAGE_CONTENT_TYPE_TAG
+: iothub_message.h
+
IOTHUBMESSAGE_DISPOSITION_RESULT_TAG
: iothub_client_ll.h
diff --git a/c/doc/api_reference/html/globals_func.html b/c/doc/api_reference/html/globals_func.html
index dbef2409..f0348bad 100644
--- a/c/doc/api_reference/html/globals_func.html
+++ b/c/doc/api_reference/html/globals_func.html
@@ -247,6 +247,30 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
IoTHubClient_SetOption()
: iothub_client.h
+IoTHubMessage_Clone()
+: iothub_message.h
+
+IoTHubMessage_CreateFromByteArray()
+: iothub_message.h
+
+IoTHubMessage_CreateFromString()
+: iothub_message.h
+
+IoTHubMessage_Destroy()
+: iothub_message.h
+
+IoTHubMessage_GetByteArray()
+: iothub_message.h
+
+IoTHubMessage_GetContentType()
+: iothub_message.h
+
+IoTHubMessage_GetString()
+: iothub_message.h
+
+IoTHubMessage_Properties()
+: iothub_message.h
+
diff --git a/c/doc/api_reference/html/globals_type.html b/c/doc/api_reference/html/globals_type.html
index 227ce3b0..7d4290e1 100644
--- a/c/doc/api_reference/html/globals_type.html
+++ b/c/doc/api_reference/html/globals_type.html
@@ -116,6 +116,12 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
IOTHUB_CLIENT_STATUS
: iothub_client_ll.h
+IOTHUB_MESSAGE_RESULT
+: iothub_message.h
+
+IOTHUBMESSAGE_CONTENT_TYPE
+: iothub_message.h
+
IOTHUBMESSAGE_DISPOSITION_RESULT
: iothub_client_ll.h
diff --git a/c/doc/api_reference/html/iothub__client_8h.html b/c/doc/api_reference/html/iothub__client_8h.html
index 9553bee9..6375dc69 100644
--- a/c/doc/api_reference/html/iothub__client_8h.html
+++ b/c/doc/api_reference/html/iothub__client_8h.html
@@ -192,7 +192,7 @@ Functions
Sample connection string:
-HostName=[IoT Hub name goes here].[IoT Hub suffix goes here, e.g., private.azure-devices-int.net];CredentialScope=Device;DeviceId=[Device ID goes here];SharedAccessKey=[Device key goes here];
+HostName=[IoT Hub name goes here].[IoT Hub suffix goes here, e.g., private.azure-devices-int.net];DeviceId=[Device ID goes here];SharedAccessKey=[Device key goes here];
Returns A non-NULL IOTHUB_CLIENT_LL_HANDLE
value that is used when invoking other functions for IoT Hub client and NULL
on failure.
diff --git a/c/doc/api_reference/html/iothub__client__ll_8h.html b/c/doc/api_reference/html/iothub__client__ll_8h.html
index a870239e..bf211e5d 100644
--- a/c/doc/api_reference/html/iothub__client__ll_8h.html
+++ b/c/doc/api_reference/html/iothub__client__ll_8h.html
@@ -100,7 +100,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
More...
#include "agenttime.h "
#include "macro_utils.h"
-
#include "iothub_message.h"
+
#include "iothub_message.h "
Go to the source code of this file.
@@ -242,7 +242,7 @@ Functions
Sample connection string:
-HostName=[IoT Hub name goes here].[IoT Hub suffix goes here, e.g., private.azure-devices-int.net];CredentialScope=Device;DeviceId=[Device ID goes here];SharedAccessKey=[Device key goes here];
+HostName=[IoT Hub name goes here].[IoT Hub suffix goes here, e.g., private.azure-devices-int.net];DeviceId=[Device ID goes here];SharedAccessKey=[Device key goes here];
Returns A non-NULL IOTHUB_CLIENT_LL_HANDLE
value that is used when invoking other functions for IoT Hub client and NULL
on failure.
diff --git a/c/doc/api_reference/html/iothub__client__ll_8h_source.html b/c/doc/api_reference/html/iothub__client__ll_8h_source.html
index 5f0cb830..77f45b8d 100644
--- a/c/doc/api_reference/html/iothub__client__ll_8h_source.html
+++ b/c/doc/api_reference/html/iothub__client__ll_8h_source.html
@@ -100,7 +100,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
28 #include "macro_utils.h"
- 30 #include "iothub_message.h"
+
@@ -199,6 +199,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
enum IOTHUBMESSAGE_DISPOSITION_RESULT_TAG IOTHUBMESSAGE_DISPOSITION_RESULT
Enumeration returned by the callback which is invoked whenever the IoT Hub sends a message to the dev...
void IoTHubClient_LL_DoWork(IOTHUB_CLIENT_LL_HANDLE iotHubClientHandle)
This function is meant to be called by the user when work (sending/receiving) can be done by the IoTH...
const char * deviceKey
The device key used to authenticate the device.
Definition: iothub_client_ll.h:103
+The IoTHub_Message component encapsulates one message that can be transferred by an IoT hub client...
Function prototypes for time related functions.
IOTHUB_CLIENT_LL_HANDLE IoTHubClient_LL_CreateFromConnectionString(const char *connectionString, IOTHUB_CLIENT_TRANSPORT_PROVIDER protocol)
Creates a IoT Hub client for communication with an existing IoT Hub using the specified connection st...
This struct captures IoTHub client configuration.
Definition: iothub_client_ll.h:90
diff --git a/c/doc/api_reference/html/iothub__message_8h.html b/c/doc/api_reference/html/iothub__message_8h.html
new file mode 100644
index 00000000..51be9b0e
--- /dev/null
+++ b/c/doc/api_reference/html/iothub__message_8h.html
@@ -0,0 +1,392 @@
+
+
+
+
+
+
+Microsoft Azure IoT Device SDK for C: c/iothub_client/inc/iothub_message.h File Reference
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Microsoft Azure IoT Device SDK for C
+ 1.0.0-preview.1.0.0
+
+ The Microsoft Azure IoT device libraries for C contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
The IoTHub_Message
component encapsulates one message that can be transferred by an IoT hub client.
+More...
+
#include "macro_utils.h"
+#include "map.h"
+#include <stddef.h>
+
+
Go to the source code of this file.
+
+
+IOTHUB_MESSAGE_HANDLE IoTHubMessage_CreateFromByteArray (const unsigned char *byteArray, size_t size)
+ Creates a new IoT hub message from a byte array. The type of the message will be set to IOTHUBMESSAGE_BYTEARRAY
. More...
+
+IOTHUB_MESSAGE_HANDLE IoTHubMessage_CreateFromString (const char *source)
+ Creates a new IoT hub message from a null terminated string. The type of the message will be set to IOTHUBMESSAGE_STRING
. More...
+
+IOTHUB_MESSAGE_HANDLE IoTHubMessage_Clone (IOTHUB_MESSAGE_HANDLE iotHubMessageHandle)
+ Creates a new IoT hub message with the content identical to that of the iotHubMessageHandle
parameter. More...
+
+IOTHUB_MESSAGE_RESULT IoTHubMessage_GetByteArray (IOTHUB_MESSAGE_HANDLE iotHubMessageHandle, const unsigned char **buffer, size_t *size)
+ Fetches a pointer and size for the data associated with the IoT hub message handle. If the content type of the message is not IOTHUBMESSAGE_BYTEARRAY
then the function returns IOTHUB_MESSAGE_INVALID_ARG
. More...
+
+const char * IoTHubMessage_GetString (IOTHUB_MESSAGE_HANDLE iotHubMessageHandle)
+ Returns the null terminated string stored in the message. If the content type of the message is not IOTHUBMESSAGE_STRING
then the function returns NULL
. More...
+
+IOTHUBMESSAGE_CONTENT_TYPE IoTHubMessage_GetContentType (IOTHUB_MESSAGE_HANDLE iotHubMessageHandle)
+ Returns the content type of the message given by parameter iotHubMessageHandle
. More...
+
+MAP_HANDLE IoTHubMessage_Properties (IOTHUB_MESSAGE_HANDLE iotHubMessageHandle)
+ Gets a handle to the message's properties map. More...
+
+void IoTHubMessage_Destroy (IOTHUB_MESSAGE_HANDLE iotHubMessageHandle)
+ Frees all resources associated with the given message handle. More...
+
+
+
+
The IoTHub_Message
component encapsulates one message that can be transferred by an IoT hub client.
+
+
+
+
+
+
+ IOTHUB_MESSAGE_HANDLE IoTHubMessage_Clone
+ (
+ IOTHUB_MESSAGE_HANDLE
+ iotHubMessageHandle )
+
+
+
+
+
+
Creates a new IoT hub message with the content identical to that of the iotHubMessageHandle
parameter.
+
Parameters
+
+ iotHubMessageHandle Handle to the message that is to be cloned.
+
+
+
+
Returns A valid IOTHUB_MESSAGE_HANDLE
if the message was successfully cloned or NULL
in case an error occurs.
+
+
+
+
+
+
+
+
+ IOTHUB_MESSAGE_HANDLE IoTHubMessage_CreateFromByteArray
+ (
+ const unsigned char *
+ byteArray ,
+
+
+
+
+ size_t
+ size
+
+
+
+ )
+
+
+
+
+
+
Creates a new IoT hub message from a byte array. The type of the message will be set to IOTHUBMESSAGE_BYTEARRAY
.
+
Parameters
+
+ byteArray The byte array from which the message is to be created.
+ size The size of the byte array.
+
+
+
+
Returns A valid IOTHUB_MESSAGE_HANDLE
if the message was successfully created or NULL
in case an error occurs.
+
+
+
+
+
+
+
+
+ IOTHUB_MESSAGE_HANDLE IoTHubMessage_CreateFromString
+ (
+ const char *
+ source )
+
+
+
+
+
+
Creates a new IoT hub message from a null terminated string. The type of the message will be set to IOTHUBMESSAGE_STRING
.
+
Parameters
+
+ source The null terminated string from which the message is to be created.
+
+
+
+
Returns A valid IOTHUB_MESSAGE_HANDLE
if the message was successfully created or NULL
in case an error occurs.
+
+
+
+
+
+
+
+
+ void IoTHubMessage_Destroy
+ (
+ IOTHUB_MESSAGE_HANDLE
+ iotHubMessageHandle )
+
+
+
+
+
+
Frees all resources associated with the given message handle.
+
Parameters
+
+ iotHubMessageHandle Handle to the message.
+
+
+
+
+
+
+
+
+
+
+
+ IOTHUB_MESSAGE_RESULT IoTHubMessage_GetByteArray
+ (
+ IOTHUB_MESSAGE_HANDLE
+ iotHubMessageHandle ,
+
+
+
+
+ const unsigned char **
+ buffer ,
+
+
+
+
+ size_t *
+ size
+
+
+
+ )
+
+
+
+
+
+
Fetches a pointer and size for the data associated with the IoT hub message handle. If the content type of the message is not IOTHUBMESSAGE_BYTEARRAY
then the function returns IOTHUB_MESSAGE_INVALID_ARG
.
+
Parameters
+
+ iotHubMessageHandle Handle to the message.
+ buffer Pointer to the memory location where the pointer to the buffer will be written.
+ size The size of the buffer will be written to this address.
+
+
+
+
Returns Returns IOTHUB_MESSAGE_OK if the byte array was fetched successfully or an error code otherwise.
+
+
+
+
+
+
+
+
Returns the content type of the message given by parameter iotHubMessageHandle
.
+
Parameters
+
+ iotHubMessageHandle Handle to the message.
+
+
+
+
Returns An IOTHUBMESSAGE_CONTENT_TYPE
value.
+
+
+
+
+
+
+
+
+ const char* IoTHubMessage_GetString
+ (
+ IOTHUB_MESSAGE_HANDLE
+ iotHubMessageHandle )
+
+
+
+
+
+
Returns the null terminated string stored in the message. If the content type of the message is not IOTHUBMESSAGE_STRING
then the function returns NULL
.
+
Parameters
+
+ iotHubMessageHandle Handle to the message.
+
+
+
+
Returns NULL
if an error occurs or a pointer to the stored null terminated string otherwise.
+
+
+
+
+
+
+
+
+ MAP_HANDLE IoTHubMessage_Properties
+ (
+ IOTHUB_MESSAGE_HANDLE
+ iotHubMessageHandle )
+
+
+
+
+
+
Gets a handle to the message's properties map.
+
Parameters
+
+ iotHubMessageHandle Handle to the message.
+
+
+
+
Returns A MAP_HANDLE
pointing to the properties map for this message.
+
+
+
+
+
+
+
+
diff --git a/c/doc/api_reference/html/iothub__message_8h_source.html b/c/doc/api_reference/html/iothub__message_8h_source.html
new file mode 100644
index 00000000..41e58abe
--- /dev/null
+++ b/c/doc/api_reference/html/iothub__message_8h_source.html
@@ -0,0 +1,168 @@
+
+
+
+
+
+
+Microsoft Azure IoT Device SDK for C: c/iothub_client/inc/iothub_message.h Source File
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Microsoft Azure IoT Device SDK for C
+ 1.0.0-preview.1.0.0
+
+ The Microsoft Azure IoT device libraries for C contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Go to the documentation of this file.
+
+
+
9 #ifndef IOTHUB_MESSAGE_H
+
10 #define IOTHUB_MESSAGE_H
+
+
12 #include "macro_utils.h"
+
+
+
+
+
+
+
+
+
+
+
23 #define IOTHUB_MESSAGE_RESULT_VALUES \
+
+
25 IOTHUB_MESSAGE_INVALID_ARG, \
+
26 IOTHUB_MESSAGE_INVALID_TYPE, \
+
27 IOTHUB_MESSAGE_ERROR \
+
+
+
+
+
34 #define IOTHUBMESSAGE_CONTENT_TYPE_VALUES \
+
35 IOTHUBMESSAGE_BYTEARRAY, \
+
36 IOTHUBMESSAGE_STRING, \
+
37 IOTHUBMESSAGE_UNKNOWN \
+
+
+
+
+
44 typedef void * IOTHUB_MESSAGE_HANDLE;
+
+
+
+
+
+
79 extern IOTHUB_MESSAGE_HANDLE
IoTHubMessage_Clone (IOTHUB_MESSAGE_HANDLE iotHubMessageHandle);
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
IOTHUBMESSAGE_CONTENT_TYPE IoTHubMessage_GetContentType(IOTHUB_MESSAGE_HANDLE iotHubMessageHandle)
Returns the content type of the message given by parameter iotHubMessageHandle.
+
void IoTHubMessage_Destroy(IOTHUB_MESSAGE_HANDLE iotHubMessageHandle)
Frees all resources associated with the given message handle.
+
enum IOTHUB_MESSAGE_RESULT_TAG IOTHUB_MESSAGE_RESULT
Enumeration specifying the status of calls to various APIs in this module.
+
MAP_HANDLE IoTHubMessage_Properties(IOTHUB_MESSAGE_HANDLE iotHubMessageHandle)
Gets a handle to the message's properties map.
+
IOTHUB_MESSAGE_HANDLE IoTHubMessage_Clone(IOTHUB_MESSAGE_HANDLE iotHubMessageHandle)
Creates a new IoT hub message with the content identical to that of the iotHubMessageHandle parameter...
+
IOTHUB_MESSAGE_HANDLE IoTHubMessage_CreateFromByteArray(const unsigned char *byteArray, size_t size)
Creates a new IoT hub message from a byte array. The type of the message will be set to IOTHUBMESSAGE...
+
enum IOTHUBMESSAGE_CONTENT_TYPE_TAG IOTHUBMESSAGE_CONTENT_TYPE
Enumeration specifying the content type of the a given message.
+
IOTHUB_MESSAGE_HANDLE IoTHubMessage_CreateFromString(const char *source)
Creates a new IoT hub message from a null terminated string. The type of the message will be set to I...
+
IOTHUB_MESSAGE_RESULT IoTHubMessage_GetByteArray(IOTHUB_MESSAGE_HANDLE iotHubMessageHandle, const unsigned char **buffer, size_t *size)
Fetches a pointer and size for the data associated with the IoT hub message handle. If the content type of the message is not IOTHUBMESSAGE_BYTEARRAY then the function returns IOTHUB_MESSAGE_INVALID_ARG.
+
const char * IoTHubMessage_GetString(IOTHUB_MESSAGE_HANDLE iotHubMessageHandle)
Returns the null terminated string stored in the message. If the content type of the message is not I...
+
+
+
+
+
diff --git a/c/doc/api_reference/html/search/all_6.js b/c/doc/api_reference/html/search/all_6.js
index d7c70df2..f92e3701 100644
--- a/c/doc/api_reference/html/search/all_6.js
+++ b/c/doc/api_reference/html/search/all_6.js
@@ -10,6 +10,9 @@ var searchData=
['iothub_5fclient_5fresult_5ftag',['IOTHUB_CLIENT_RESULT_TAG',['../iothub__client__ll_8h.html#a1dcfcf0cc4f3d27d4fe24642929e0e05',1,'iothub_client_ll.h']]],
['iothub_5fclient_5fstatus',['IOTHUB_CLIENT_STATUS',['../iothub__client__ll_8h.html#a06bec2310f92a54329a1f39b0804ee88',1,'iothub_client_ll.h']]],
['iothub_5fclient_5fstatus_5ftag',['IOTHUB_CLIENT_STATUS_TAG',['../iothub__client__ll_8h.html#aad29ba44eb4ad88bf10e7d3d43138bf7',1,'iothub_client_ll.h']]],
+ ['iothub_5fmessage_2eh',['iothub_message.h',['../iothub__message_8h.html',1,'']]],
+ ['iothub_5fmessage_5fresult',['IOTHUB_MESSAGE_RESULT',['../iothub__message_8h.html#ab826e84207e0513abcf6825fa72c7a7f',1,'iothub_message.h']]],
+ ['iothub_5fmessage_5fresult_5ftag',['IOTHUB_MESSAGE_RESULT_TAG',['../iothub__message_8h.html#a5f8a34b4b03e4133e9612c584852891b',1,'iothub_message.h']]],
['iothubclient_5fcreate',['IoTHubClient_Create',['../iothub__client_8h.html#a7e4253f4df8cdef79cbe44d33c73547d',1,'iothub_client.h']]],
['iothubclient_5fcreatefromconnectionstring',['IoTHubClient_CreateFromConnectionString',['../iothub__client_8h.html#a190e08e1201046fda675517070d63e83',1,'iothub_client.h']]],
['iothubclient_5fdestroy',['IoTHubClient_Destroy',['../iothub__client_8h.html#a47fce212d1c5026e02ccd670242e1d83',1,'iothub_client.h']]],
@@ -27,8 +30,18 @@ var searchData=
['iothubclient_5fsendeventasync',['IoTHubClient_SendEventAsync',['../iothub__client_8h.html#a3e60e953d03a503c1ae30dd6af7f390f',1,'iothub_client.h']]],
['iothubclient_5fsetmessagecallback',['IoTHubClient_SetMessageCallback',['../iothub__client_8h.html#a86d2a2ad2209f6e33bf59ee586abc042',1,'iothub_client.h']]],
['iothubclient_5fsetoption',['IoTHubClient_SetOption',['../iothub__client_8h.html#a7a0ff66340551d6748b13e9ca74f3197',1,'iothub_client.h']]],
+ ['iothubmessage_5fclone',['IoTHubMessage_Clone',['../iothub__message_8h.html#ab5c68ff6fbb9dbe613c8b981f4c202b4',1,'iothub_message.h']]],
+ ['iothubmessage_5fcontent_5ftype',['IOTHUBMESSAGE_CONTENT_TYPE',['../iothub__message_8h.html#a1540154c626623da1ecf6fab5b380c27',1,'iothub_message.h']]],
+ ['iothubmessage_5fcontent_5ftype_5ftag',['IOTHUBMESSAGE_CONTENT_TYPE_TAG',['../iothub__message_8h.html#a3bac0fe02b09114764eba2d1e9168669',1,'iothub_message.h']]],
+ ['iothubmessage_5fcreatefrombytearray',['IoTHubMessage_CreateFromByteArray',['../iothub__message_8h.html#acaa3b835c12fb0254938af052f0fcb6f',1,'iothub_message.h']]],
+ ['iothubmessage_5fcreatefromstring',['IoTHubMessage_CreateFromString',['../iothub__message_8h.html#a8b44199b87bd177d1a85671faef657db',1,'iothub_message.h']]],
+ ['iothubmessage_5fdestroy',['IoTHubMessage_Destroy',['../iothub__message_8h.html#a8303de9790f32c3b0aebac6cfb0e80bf',1,'iothub_message.h']]],
['iothubmessage_5fdisposition_5fresult',['IOTHUBMESSAGE_DISPOSITION_RESULT',['../iothub__client__ll_8h.html#a988b1c83b28d268c642d72dcab8228a4',1,'iothub_client_ll.h']]],
['iothubmessage_5fdisposition_5fresult_5ftag',['IOTHUBMESSAGE_DISPOSITION_RESULT_TAG',['../iothub__client__ll_8h.html#ad6c1da5dbe6e1dd6746ab930b377d531',1,'iothub_client_ll.h']]],
+ ['iothubmessage_5fgetbytearray',['IoTHubMessage_GetByteArray',['../iothub__message_8h.html#afac0461ed8c3d522bbf2a4cfa9f3f957',1,'iothub_message.h']]],
+ ['iothubmessage_5fgetcontenttype',['IoTHubMessage_GetContentType',['../iothub__message_8h.html#ae7fd8e5a5844a4346933a86feb577d3c',1,'iothub_message.h']]],
+ ['iothubmessage_5fgetstring',['IoTHubMessage_GetString',['../iothub__message_8h.html#aaf63b9aecdde6f8c90d9fbd0755d0c41',1,'iothub_message.h']]],
+ ['iothubmessage_5fproperties',['IoTHubMessage_Properties',['../iothub__message_8h.html#a2ab46db5ad9db0b497b5171e21b64ea2',1,'iothub_message.h']]],
['iothubname',['iotHubName',['../struct_i_o_t_h_u_b___c_l_i_e_n_t___c_o_n_f_i_g___t_a_g.html#a6b559edc71ff3b0e8d9f9840cb36b27c',1,'IOTHUB_CLIENT_CONFIG_TAG']]],
['iothubsuffix',['iotHubSuffix',['../struct_i_o_t_h_u_b___c_l_i_e_n_t___c_o_n_f_i_g___t_a_g.html#ae54e74d8db92b20f796df76f01d5dd68',1,'IOTHUB_CLIENT_CONFIG_TAG']]]
];
diff --git a/c/doc/api_reference/html/search/enums_1.js b/c/doc/api_reference/html/search/enums_1.js
index 17e7fabb..f8d0f057 100644
--- a/c/doc/api_reference/html/search/enums_1.js
+++ b/c/doc/api_reference/html/search/enums_1.js
@@ -3,5 +3,7 @@ var searchData=
['iothub_5fclient_5fconfirmation_5fresult_5ftag',['IOTHUB_CLIENT_CONFIRMATION_RESULT_TAG',['../iothub__client__ll_8h.html#af338feaaafa37bd3352967a1fe52c9e7',1,'iothub_client_ll.h']]],
['iothub_5fclient_5fresult_5ftag',['IOTHUB_CLIENT_RESULT_TAG',['../iothub__client__ll_8h.html#a1dcfcf0cc4f3d27d4fe24642929e0e05',1,'iothub_client_ll.h']]],
['iothub_5fclient_5fstatus_5ftag',['IOTHUB_CLIENT_STATUS_TAG',['../iothub__client__ll_8h.html#aad29ba44eb4ad88bf10e7d3d43138bf7',1,'iothub_client_ll.h']]],
+ ['iothub_5fmessage_5fresult_5ftag',['IOTHUB_MESSAGE_RESULT_TAG',['../iothub__message_8h.html#a5f8a34b4b03e4133e9612c584852891b',1,'iothub_message.h']]],
+ ['iothubmessage_5fcontent_5ftype_5ftag',['IOTHUBMESSAGE_CONTENT_TYPE_TAG',['../iothub__message_8h.html#a3bac0fe02b09114764eba2d1e9168669',1,'iothub_message.h']]],
['iothubmessage_5fdisposition_5fresult_5ftag',['IOTHUBMESSAGE_DISPOSITION_RESULT_TAG',['../iothub__client__ll_8h.html#ad6c1da5dbe6e1dd6746ab930b377d531',1,'iothub_client_ll.h']]]
];
diff --git a/c/doc/api_reference/html/search/files_3.js b/c/doc/api_reference/html/search/files_3.js
index a869252b..7fb091e0 100644
--- a/c/doc/api_reference/html/search/files_3.js
+++ b/c/doc/api_reference/html/search/files_3.js
@@ -1,5 +1,6 @@
var searchData=
[
['iothub_5fclient_2eh',['iothub_client.h',['../iothub__client_8h.html',1,'']]],
- ['iothub_5fclient_5fll_2eh',['iothub_client_ll.h',['../iothub__client__ll_8h.html',1,'']]]
+ ['iothub_5fclient_5fll_2eh',['iothub_client_ll.h',['../iothub__client__ll_8h.html',1,'']]],
+ ['iothub_5fmessage_2eh',['iothub_message.h',['../iothub__message_8h.html',1,'']]]
];
diff --git a/c/doc/api_reference/html/search/functions_3.js b/c/doc/api_reference/html/search/functions_3.js
index 01c66ea0..ac08304a 100644
--- a/c/doc/api_reference/html/search/functions_3.js
+++ b/c/doc/api_reference/html/search/functions_3.js
@@ -16,5 +16,13 @@ var searchData=
['iothubclient_5fll_5fsetoption',['IoTHubClient_LL_SetOption',['../iothub__client__ll_8h.html#a70eb58c7ede92f75001104ff4745faa2',1,'iothub_client_ll.h']]],
['iothubclient_5fsendeventasync',['IoTHubClient_SendEventAsync',['../iothub__client_8h.html#a3e60e953d03a503c1ae30dd6af7f390f',1,'iothub_client.h']]],
['iothubclient_5fsetmessagecallback',['IoTHubClient_SetMessageCallback',['../iothub__client_8h.html#a86d2a2ad2209f6e33bf59ee586abc042',1,'iothub_client.h']]],
- ['iothubclient_5fsetoption',['IoTHubClient_SetOption',['../iothub__client_8h.html#a7a0ff66340551d6748b13e9ca74f3197',1,'iothub_client.h']]]
+ ['iothubclient_5fsetoption',['IoTHubClient_SetOption',['../iothub__client_8h.html#a7a0ff66340551d6748b13e9ca74f3197',1,'iothub_client.h']]],
+ ['iothubmessage_5fclone',['IoTHubMessage_Clone',['../iothub__message_8h.html#ab5c68ff6fbb9dbe613c8b981f4c202b4',1,'iothub_message.h']]],
+ ['iothubmessage_5fcreatefrombytearray',['IoTHubMessage_CreateFromByteArray',['../iothub__message_8h.html#acaa3b835c12fb0254938af052f0fcb6f',1,'iothub_message.h']]],
+ ['iothubmessage_5fcreatefromstring',['IoTHubMessage_CreateFromString',['../iothub__message_8h.html#a8b44199b87bd177d1a85671faef657db',1,'iothub_message.h']]],
+ ['iothubmessage_5fdestroy',['IoTHubMessage_Destroy',['../iothub__message_8h.html#a8303de9790f32c3b0aebac6cfb0e80bf',1,'iothub_message.h']]],
+ ['iothubmessage_5fgetbytearray',['IoTHubMessage_GetByteArray',['../iothub__message_8h.html#afac0461ed8c3d522bbf2a4cfa9f3f957',1,'iothub_message.h']]],
+ ['iothubmessage_5fgetcontenttype',['IoTHubMessage_GetContentType',['../iothub__message_8h.html#ae7fd8e5a5844a4346933a86feb577d3c',1,'iothub_message.h']]],
+ ['iothubmessage_5fgetstring',['IoTHubMessage_GetString',['../iothub__message_8h.html#aaf63b9aecdde6f8c90d9fbd0755d0c41',1,'iothub_message.h']]],
+ ['iothubmessage_5fproperties',['IoTHubMessage_Properties',['../iothub__message_8h.html#a2ab46db5ad9db0b497b5171e21b64ea2',1,'iothub_message.h']]]
];
diff --git a/c/doc/api_reference/html/search/typedefs_1.js b/c/doc/api_reference/html/search/typedefs_1.js
index bf817d34..84010276 100644
--- a/c/doc/api_reference/html/search/typedefs_1.js
+++ b/c/doc/api_reference/html/search/typedefs_1.js
@@ -4,5 +4,7 @@ var searchData=
['iothub_5fclient_5fconfirmation_5fresult',['IOTHUB_CLIENT_CONFIRMATION_RESULT',['../iothub__client__ll_8h.html#a4577382ad30d162f2b9cf461ead5639b',1,'iothub_client_ll.h']]],
['iothub_5fclient_5fresult',['IOTHUB_CLIENT_RESULT',['../iothub__client__ll_8h.html#acab188935ec8a12092ab518112268bfd',1,'iothub_client_ll.h']]],
['iothub_5fclient_5fstatus',['IOTHUB_CLIENT_STATUS',['../iothub__client__ll_8h.html#a06bec2310f92a54329a1f39b0804ee88',1,'iothub_client_ll.h']]],
+ ['iothub_5fmessage_5fresult',['IOTHUB_MESSAGE_RESULT',['../iothub__message_8h.html#ab826e84207e0513abcf6825fa72c7a7f',1,'iothub_message.h']]],
+ ['iothubmessage_5fcontent_5ftype',['IOTHUBMESSAGE_CONTENT_TYPE',['../iothub__message_8h.html#a1540154c626623da1ecf6fab5b380c27',1,'iothub_message.h']]],
['iothubmessage_5fdisposition_5fresult',['IOTHUBMESSAGE_DISPOSITION_RESULT',['../iothub__client__ll_8h.html#a988b1c83b28d268c642d72dcab8228a4',1,'iothub_client_ll.h']]]
];
diff --git a/c/doc/api_reference/httpapi_8h.html b/c/doc/api_reference/httpapi_8h.html
deleted file mode 100644
index 05973c31..00000000
--- a/c/doc/api_reference/httpapi_8h.html
+++ /dev/null
@@ -1,406 +0,0 @@
-
-
-
-
-
-
-Microsoft Azure IoT Device SDK for C: c/common/inc/httpapi.h File Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Microsoft Azure IoT Device SDK for C
- 1.0.0-preview.1.0.0
-
- The Microsoft Azure IoT device libraries for C contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
This module implements the standard HTTP API used by the C IoT client library.
-More...
-
#include "httpheaders.h "
-
#include "macro_utils.h"
-
#include "buffer_.h"
-
#include <stddef.h>
-
-
Go to the source code of this file.
-
-
- enum HTTPAPI_RESULT_TAG Enumeration specifying the possible return values for the APIs in this module.
-
-
- enum HTTPAPI_REQUEST_TYPE_TAG Enumeration specifying the HTTP request verbs accepted by the HTTPAPI module.
-
-
-
-
-HTTPAPI_RESULT HTTPAPI_Init (void)
- Global initialization for the HTTP API component. More...
-
-
-void HTTPAPI_Deinit (void)
- Free resources allocated in HTTPAPI_Init .
-
-HTTP_HANDLE HTTPAPI_CreateConnection (const char *hostName)
- Creates an HTTPS connection to the host specified by the hostName
parameter. More...
-
-void HTTPAPI_CloseConnection (HTTP_HANDLE handle)
- Closes a connection created with HTTPAPI_CreateConnection . More...
-
-HTTPAPI_RESULT HTTPAPI_ExecuteRequest (HTTP_HANDLE handle, HTTPAPI_REQUEST_TYPE requestType, const char *relativePath, HTTP_HEADERS_HANDLE httpHeadersHandle, const unsigned char *content, size_t contentLength, unsigned int *statusCode, HTTP_HEADERS_HANDLE responseHeadersHandle, BUFFER_HANDLE responseContent)
- Sends the HTTP request to the host and handles the response for the HTTP call. More...
-
-HTTPAPI_RESULT HTTPAPI_SetOption (HTTP_HANDLE handle, const char *optionName, const void *value)
- Sets the option named optionName
bearing the value value
for the HTTP_HANDLE handle
. More...
-
-HTTPAPI_RESULT HTTPAPI_CloneOption (const char *optionName, const void *value, const void **savedValue)
- Clones the option named optionName
bearing the value value
into the pointer savedValue
. More...
-
-
-
-
This module implements the standard HTTP API used by the C IoT client library.
-
For example, on the Windows platform the HTTP API code uses WinHTTP and for Linux it uses curl and so forth. HTTPAPI must support HTTPs (HTTP+SSL).
-
-
-
-
-
-
- HTTPAPI_RESULT HTTPAPI_CloneOption
- (
- const char *
- optionName ,
-
-
-
-
- const void *
- value ,
-
-
-
-
- const void **
- savedValue
-
-
-
- )
-
-
-
-
-
-
Clones the option named optionName
bearing the value value
into the pointer savedValue
.
-
Parameters
-
- optionName A NULL
terminated string representing the name of the option
- value A pointer to the value of the option.
- savedValue This pointer receives the copy of the value of the option. The copy needs to be free-able.
-
-
-
-
Returns HTTPAPI_OK
if initialization is successful or an error code in case it fails.
-
-
-
-
-
-
-
-
- void HTTPAPI_CloseConnection
- (
- HTTP_HANDLE
- handle )
-
-
-
-
-
-
-
-
-
-
- HTTP_HANDLE HTTPAPI_CreateConnection
- (
- const char *
- hostName )
-
-
-
-
-
-
Creates an HTTPS connection to the host specified by the hostName
parameter.
-
Parameters
-
- hostName Name of the host.
-
-
-
-
This function returns a handle to the newly created connection. You can use the handle in subsequent calls to execute specific HTTP calls using HTTPAPI_ExecuteRequest .
-
Returns A HTTP_HANDLE
to the newly created connection or NULL
in case an error occurs.
-
-
-
-
-
-
-
-
- HTTPAPI_RESULT HTTPAPI_ExecuteRequest
- (
- HTTP_HANDLE
- handle ,
-
-
-
-
- HTTPAPI_REQUEST_TYPE
- requestType ,
-
-
-
-
- const char *
- relativePath ,
-
-
-
-
- HTTP_HEADERS_HANDLE
- httpHeadersHandle ,
-
-
-
-
- const unsigned char *
- content ,
-
-
-
-
- size_t
- contentLength ,
-
-
-
-
- unsigned int *
- statusCode ,
-
-
-
-
- HTTP_HEADERS_HANDLE
- responseHeadersHandle ,
-
-
-
-
- BUFFER_HANDLE
- responseContent
-
-
-
- )
-
-
-
-
-
-
Sends the HTTP request to the host and handles the response for the HTTP call.
-
Parameters
-
- handle The handle to the HTTP connection created via HTTPAPI_CreateConnection .
- requestType Specifies which HTTP method is used (GET, POST, DELETE, PUT, PATCH).
- relativePath Specifies the relative path of the URL excluding the host name.
- httpHeadersHandle Specifies a set of HTTP headers (name-value pairs) to be added to the HTTP request. The httpHeadersHandle
handle can be created and setup with the proper name-value pairs by using the HTTPHeaders APIs available in HTTPHeaders.h
.
- content Specifies a pointer to the request body. This value is optional and can be NULL
.
- contentLength Specifies the request body size (this is typically added into the HTTP headers as the Content-Length header). This value is optional and can be 0.
- statusCode This is an out parameter, where HTTPAPI_ExecuteRequest returns the status code from the HTTP response (200, 201, 400, 401, etc.)
- responseHeadersHandle This is an HTTP headers handle to which HTTPAPI_ExecuteRequest must add all the HTTP response headers so that the caller of HTTPAPI_ExecuteRequest can inspect them. You can manipulate responseHeadersHandle
by using the HTTPHeaders APIs available in HTTPHeaders.h
- responseContent This is a buffer that must be filled by HTTPAPI_ExecuteRequest with the contents of the HTTP response body. The buffer size must be increased by the HTTPAPI_ExecuteRequest implementation in order to fit the response body. HTTPAPI_ExecuteRequest must also handle chunked transfer encoding for HTTP responses. To manipulate the responseContent
buffer, use the APIs available in Strings.h
.
-
-
-
-
Returns HTTPAPI_OK
if the API call is successful or an error code in case it fails.
-
-
-
-
-
-
-
-
Global initialization for the HTTP API component.
-
Platform specific implementations are expected to initialize the underlying HTTP API stacks.
-
Returns HTTPAPI_OK
if initialization is successful or an error code in case it fails.
-
-
-
-
-
-
-
-
- HTTPAPI_RESULT HTTPAPI_SetOption
- (
- HTTP_HANDLE
- handle ,
-
-
-
-
- const char *
- optionName ,
-
-
-
-
- const void *
- value
-
-
-
- )
-
-
-
-
-
-
Sets the option named optionName
bearing the value value
for the HTTP_HANDLE handle
.
-
Parameters
-
- handle The handle to the HTTP connection created via HTTPAPI_CreateConnection .
- optionName A NULL
terminated string representing the name of the option.
- value A pointer to the value for the option.
-
-
-
-
Returns HTTPAPI_OK
if initialization is successful or an error code in case it fails.
-
-
-
-
-
-
-
-
diff --git a/c/doc/api_reference/httpapi_8h_source.html b/c/doc/api_reference/httpapi_8h_source.html
deleted file mode 100644
index 7fb59c60..00000000
--- a/c/doc/api_reference/httpapi_8h_source.html
+++ /dev/null
@@ -1,187 +0,0 @@
-
-
-
-
-
-
-Microsoft Azure IoT Device SDK for C: c/common/inc/httpapi.h Source File
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Microsoft Azure IoT Device SDK for C
- 1.0.0-preview.1.0.0
-
- The Microsoft Azure IoT device libraries for C contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the documentation of this file.
-
-
-
-
-
-
-
17 #include "macro_utils.h"
-
-
-
-
-
-
-
-
-
-
27 typedef void * HTTP_HANDLE;
-
-
29 #define AMBIGUOUS_STATUS_CODE (300)
-
-
31 #define HTTPAPI_RESULT_VALUES \
-
-
33 HTTPAPI_INVALID_ARG, \
-
-
35 HTTPAPI_OPEN_REQUEST_FAILED, \
-
36 HTTPAPI_SET_OPTION_FAILED, \
-
37 HTTPAPI_SEND_REQUEST_FAILED, \
-
38 HTTPAPI_RECEIVE_RESPONSE_FAILED, \
-
39 HTTPAPI_QUERY_HEADERS_FAILED, \
-
40 HTTPAPI_QUERY_DATA_AVAILABLE_FAILED, \
-
41 HTTPAPI_READ_DATA_FAILED, \
-
42 HTTPAPI_ALREADY_INIT, \
-
-
44 HTTPAPI_HTTP_HEADERS_FAILED, \
-
45 HTTPAPI_STRING_PROCESSING_ERROR, \
-
46 HTTPAPI_ALLOC_FAILED, \
-
47 HTTPAPI_INIT_FAILED, \
-
48 HTTPAPI_INSUFFICIENT_RESPONSE_BUFFER, \
-
49 HTTPAPI_SET_TIMEOUTS_FAILED \
-
-
-
-
-
56 #define HTTPAPI_REQUEST_TYPE_VALUES\
-
57 HTTPAPI_REQUEST_GET, \
-
58 HTTPAPI_REQUEST_POST, \
-
59 HTTPAPI_REQUEST_PUT, \
-
60 HTTPAPI_REQUEST_DELETE, \
-
61 HTTPAPI_REQUEST_PATCH \
-
-
-
-
-
-
-
-
-
-
-
-
-
-
156 HTTP_HEADERS_HANDLE httpHeadersHandle,
const unsigned char * content,
-
157 size_t contentLength,
unsigned int * statusCode,
-
158 HTTP_HEADERS_HANDLE responseHeadersHandle, BUFFER_HANDLE responseContent);
-
-
-
-
-
-
-
-
-
-
-
enum HTTPAPI_REQUEST_TYPE_TAG HTTPAPI_REQUEST_TYPE
Enumeration specifying the HTTP request verbs accepted by the HTTPAPI module.
-
HTTPAPI_RESULT HTTPAPI_Init(void)
Global initialization for the HTTP API component.
-
HTTPAPI_RESULT HTTPAPI_SetOption(HTTP_HANDLE handle, const char *optionName, const void *value)
Sets the option named optionName bearing the value value for the HTTP_HANDLE handle.
-
void HTTPAPI_CloseConnection(HTTP_HANDLE handle)
Closes a connection created with HTTPAPI_CreateConnection.
-
HTTPAPI_RESULT HTTPAPI_ExecuteRequest(HTTP_HANDLE handle, HTTPAPI_REQUEST_TYPE requestType, const char *relativePath, HTTP_HEADERS_HANDLE httpHeadersHandle, const unsigned char *content, size_t contentLength, unsigned int *statusCode, HTTP_HEADERS_HANDLE responseHeadersHandle, BUFFER_HANDLE responseContent)
Sends the HTTP request to the host and handles the response for the HTTP call.
-
enum HTTPAPI_RESULT_TAG HTTPAPI_RESULT
Enumeration specifying the possible return values for the APIs in this module.
-
HTTPAPI_RESULT HTTPAPI_CloneOption(const char *optionName, const void *value, const void **savedValue)
Clones the option named optionName bearing the value value into the pointer savedValue.
-
-
void HTTPAPI_Deinit(void)
Free resources allocated in HTTPAPI_Init.
-
HTTP_HANDLE HTTPAPI_CreateConnection(const char *hostName)
Creates an HTTPS connection to the host specified by the hostName parameter.
-
-
-
-
-
diff --git a/c/doc/api_reference/httpapiex_8h.html b/c/doc/api_reference/httpapiex_8h.html
deleted file mode 100644
index a746ede0..00000000
--- a/c/doc/api_reference/httpapiex_8h.html
+++ /dev/null
@@ -1,323 +0,0 @@
-
-
-
-
-
-
-Microsoft Azure IoT Device SDK for C: c/common/inc/httpapiex.h File Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Microsoft Azure IoT Device SDK for C
- 1.0.0-preview.1.0.0
-
- The Microsoft Azure IoT device libraries for C contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
This is a utility module that provides HTTP requests with build-in retry capabilities.
-More...
-
#include "macro_utils.h"
-
#include "httpapi.h "
-
#include <stddef.h>
-
-
Go to the source code of this file.
-
-
- enum HTTPAPIEX_RESULT_TAG Enumeration specifying the status of calls to various APIs in this module.
-
-
-
-
-HTTPAPIEX_HANDLE HTTPAPIEX_Create (const char *hostName)
- Creates an HTTPAPIEX_HANDLE
that can be used in further calls. More...
-
-HTTPAPIEX_RESULT HTTPAPIEX_ExecuteRequest (HTTPAPIEX_HANDLE handle, HTTPAPI_REQUEST_TYPE requestType, const char *relativePath, HTTP_HEADERS_HANDLE requestHttpHeadersHandle, BUFFER_HANDLE requestContent, unsigned int *statusCode, HTTP_HEADERS_HANDLE responseHttpHeadersHandle, BUFFER_HANDLE responseContent)
- Tries to execute an HTTP request. More...
-
-void HTTPAPIEX_Destroy (HTTPAPIEX_HANDLE handle)
- Frees all resources used by the HTTPAPIEX_HANDLE
object. More...
-
-HTTPAPIEX_RESULT HTTPAPIEX_SetOption (HTTPAPIEX_HANDLE handle, const char *optionName, const void *value)
- Sets the option optionName
to the value pointed to by value
. More...
-
-
-
-
This is a utility module that provides HTTP requests with build-in retry capabilities.
-
HTTAPIEX is a utility module that provides HTTP requests with build-in retry capability to an HTTP server. Features over "regular" HTTPAPI include:
-Optional parameters
-Implementation independent
-Retry mechanism
-Persistent options
-
-
-
-
-
-
-
- HTTPAPIEX_HANDLE HTTPAPIEX_Create
- (
- const char *
- hostName )
-
-
-
-
-
-
Creates an HTTPAPIEX_HANDLE
that can be used in further calls.
-
Parameters
-
- hostName Pointer to a null-terminated string that contains the host name of an HTTP server.
-
-
-
-
If hostName
is NULL
then HTTPAPIEX_Create
returns NULL
. The hostName
value is saved and associated with the returned handle. If creating the handle fails for any reason, then HTTAPIEX_Create
returns NULL
. Otherwise, HTTPAPIEX_Create
returns an HTTAPIEX_HANDLE
suitable for further calls to the module.
-
Returns An HTTAPIEX_HANDLE
suitable for further calls to the module.
-
-
-
-
-
-
-
-
- void HTTPAPIEX_Destroy
- (
- HTTPAPIEX_HANDLE
- handle )
-
-
-
-
-
-
Frees all resources used by the HTTPAPIEX_HANDLE
object.
-
Parameters
-
- handle The HTTPAPIEX_HANDLE
object to be freed.
-
-
-
-
-
-
-
-
-
-
-
- HTTPAPIEX_RESULT HTTPAPIEX_ExecuteRequest
- (
- HTTPAPIEX_HANDLE
- handle ,
-
-
-
-
- HTTPAPI_REQUEST_TYPE
- requestType ,
-
-
-
-
- const char *
- relativePath ,
-
-
-
-
- HTTP_HEADERS_HANDLE
- requestHttpHeadersHandle ,
-
-
-
-
- BUFFER_HANDLE
- requestContent ,
-
-
-
-
- unsigned int *
- statusCode ,
-
-
-
-
- HTTP_HEADERS_HANDLE
- responseHttpHeadersHandle ,
-
-
-
-
- BUFFER_HANDLE
- responseContent
-
-
-
- )
-
-
-
-
-
-
Tries to execute an HTTP request.
-
Parameters
-
- handle A valid HTTPAPIEX_HANDLE
value.
- requestType A value from the HTTPAPI_REQUEST_TYPE enum.
- relativePath Relative path to send the request to on the server.
- requestHttpHeadersHandle Handle to the request HTTP headers.
- requestContent The request content.
- statusCode If non-null, the HTTP status code is written to this pointer.
- responseHttpHeadersHandle Handle to the response HTTP headers.
- responseContent The response content.
-
-
-
-
HTTPAPIEX_ExecuteRequest
tries to execute an HTTP request of type requestType
, on the server's relativePath
, pushing the request HTTP headers requestHttpHeadersHandle
, having the content of the request as pointed to by requestContent
. If successful, HTTAPIEX_ExecuteRequest
writes in the out parameter
statusCode the HTTP status, populates the responseHeadersHandle
with the response headers and copies the response body to responseContent
.
-
Returns An HTTAPIEX_HANDLE
suitable for further calls to the module.
-
-
-
-
-
-
-
-
- HTTPAPIEX_RESULT HTTPAPIEX_SetOption
- (
- HTTPAPIEX_HANDLE
- handle ,
-
-
-
-
- const char *
- optionName ,
-
-
-
-
- const void *
- value
-
-
-
- )
-
-
-
-
-
-
Sets the option optionName
to the value pointed to by value
.
-
Parameters
-
- handle The HTTPAPIEX_HANDLE
representing this session.
- optionName Name of the option.
- value The value to be set for the option.
-
-
-
-
Returns An HTTPAPIEX_RESULT
indicating the status of the call.
-
-
-
-
-
-
-
-
diff --git a/c/doc/api_reference/httpapiex_8h_source.html b/c/doc/api_reference/httpapiex_8h_source.html
deleted file mode 100644
index 5a849b32..00000000
--- a/c/doc/api_reference/httpapiex_8h_source.html
+++ /dev/null
@@ -1,148 +0,0 @@
-
-
-
-
-
-
-Microsoft Azure IoT Device SDK for C: c/common/inc/httpapiex.h Source File
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Microsoft Azure IoT Device SDK for C
- 1.0.0-preview.1.0.0
-
- The Microsoft Azure IoT device libraries for C contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the documentation of this file.
-
-
-
-
-
-
19 #include "macro_utils.h"
-
-
-
-
-
-
-
-
-
-
29 typedef void * HTTPAPIEX_HANDLE;
-
-
31 #define HTTPAPIEX_RESULT_VALUES \
-
-
-
34 HTTPAPIEX_INVALID_ARG, \
-
35 HTTPAPIEX_RECOVERYFAILED
-
-
-
-
-
-
-
81 extern HTTPAPIEX_RESULT HTTPAPIEX_ExecuteRequest (HTTPAPIEX_HANDLE handle,
HTTPAPI_REQUEST_TYPE requestType,
const char * relativePath, HTTP_HEADERS_HANDLE requestHttpHeadersHandle, BUFFER_HANDLE requestContent,
unsigned int * statusCode, HTTP_HEADERS_HANDLE responseHttpHeadersHandle, BUFFER_HANDLE responseContent);
-
-
-
-
-
-
-
-
-
-
-
enum HTTPAPI_REQUEST_TYPE_TAG HTTPAPI_REQUEST_TYPE
Enumeration specifying the HTTP request verbs accepted by the HTTPAPI module.
-
HTTPAPIEX_HANDLE HTTPAPIEX_Create(const char *hostName)
Creates an HTTPAPIEX_HANDLE that can be used in further calls.
-
void HTTPAPIEX_Destroy(HTTPAPIEX_HANDLE handle)
Frees all resources used by the HTTPAPIEX_HANDLE object.
-
HTTPAPIEX_RESULT HTTPAPIEX_ExecuteRequest(HTTPAPIEX_HANDLE handle, HTTPAPI_REQUEST_TYPE requestType, const char *relativePath, HTTP_HEADERS_HANDLE requestHttpHeadersHandle, BUFFER_HANDLE requestContent, unsigned int *statusCode, HTTP_HEADERS_HANDLE responseHttpHeadersHandle, BUFFER_HANDLE responseContent)
Tries to execute an HTTP request.
-
HTTPAPIEX_RESULT HTTPAPIEX_SetOption(HTTPAPIEX_HANDLE handle, const char *optionName, const void *value)
Sets the option optionName to the value pointed to by value.
-
This module implements the standard HTTP API used by the C IoT client library.
-
enum HTTPAPIEX_RESULT_TAG HTTPAPIEX_RESULT
Enumeration specifying the status of calls to various APIs in this module.
-
-
-
-
-
diff --git a/c/doc/api_reference/httpheaders_8h.html b/c/doc/api_reference/httpheaders_8h.html
deleted file mode 100644
index d4c19a31..00000000
--- a/c/doc/api_reference/httpheaders_8h.html
+++ /dev/null
@@ -1,433 +0,0 @@
-
-
-
-
-
-
-Microsoft Azure IoT Device SDK for C: c/common/inc/httpheaders.h File Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Microsoft Azure IoT Device SDK for C
- 1.0.0-preview.1.0.0
-
- The Microsoft Azure IoT device libraries for C contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
This is a utility module that handles HTTP message-headers.
-More...
-
#include "macro_utils.h"
-#include <stddef.h>
-
-
Go to the source code of this file.
-
-
-
This is a utility module that handles HTTP message-headers.
-
An application would use HTTPHeaders_Alloc to create a new set of HTTP headers. After getting the handle, the application would build in several headers by consecutive calls to HTTPHeaders_AddHeaderNameValuePair . When the headers are constructed, the application can retrieve the stored data by calling one of the following functions:
-
-
-
-
-
-
- HTTP_HEADERS_RESULT HTTPHeaders_AddHeaderNameValuePair
- (
- HTTP_HEADERS_HANDLE
- httpHeadersHandle ,
-
-
-
-
- const char *
- name ,
-
-
-
-
- const char *
- value
-
-
-
- )
-
-
-
-
-
-
Adds a header record from the name
and value
parameters.
-
Parameters
-
- httpHeadersHandle A valid HTTP_HEADERS_HANDLE
value.
- name The name of the HTTP header to add. It is invalid for the name to include the ':' character or character codes outside the range 33-126.
- value The value to be assigned to the header.
-
-
-
-
The function stores the name:value
pair in such a way that when later retrieved by a call to HTTPHeaders_GetHeader it will return a string that is strcmp
equal to name+": "+value
. If the name already exists in the collection of headers, the function concatenates the new value after the existing value, separated by a comma and a space as in: old-value+", "+new-value
.
-
Returns Returns HTTP_HEADERS_OK
when execution is successful or an error code from the HTTPAPIEX_RESULT enum.
-
-
-
-
-
-
-
-
- HTTP_HEADERS_HANDLE HTTPHeaders_Alloc
- (
- void
- )
-
-
-
-
-
-
Produces a HTTP_HANDLE
that can later be used in subsequent calls to the module.
-
This function returns NULL
in case an error occurs. After successful execution HTTPHeaders_GetHeaderCount will report 0
existing headers.
-
Returns A HTTP_HEADERS_HANDLE representing the newly created collection of HTTP headers.
-
-
-
-
-
-
-
-
- HTTP_HEADERS_HANDLE HTTPHeaders_Clone
- (
- HTTP_HEADERS_HANDLE
- handle )
-
-
-
-
-
-
This API produces a clone of the handle
parameter.
-
Parameters
-
- handle A valid HTTP_HEADERS_HANDLE
value.
-
-
-
-
If handle
is not NULL
this function clones the content of the handle to a new handle and returns it.
-
Returns A HTTP_HEADERS_HANDLE
containing a cloned copy of the contents of handle
.
-
-
-
-
-
-
-
-
- const char* HTTPHeaders_FindHeaderValue
- (
- HTTP_HEADERS_HANDLE
- httpHeadersHandle ,
-
-
-
-
- const char *
- name
-
-
-
- )
-
-
-
-
-
-
Retrieves the value for a previously stored name.
-
Parameters
-
- httpHeadersHandle A valid HTTP_HEADERS_HANDLE
value.
- name The name of the HTTP header to find.
-
-
-
-
Returns The return value points to a string that shall be strcmp
equal to the original stored string.
-
-
-
-
-
-
-
-
- void HTTPHeaders_Free
- (
- HTTP_HEADERS_HANDLE
- httpHeadersHandle )
-
-
-
-
-
-
De-allocates the data structures allocated by previous API calls to the same handle.
-
Parameters
-
- httpHeadersHandle A valid HTTP_HEADERS_HANDLE
value.
-
-
-
-
-
-
-
-
-
-
-
- HTTP_HEADERS_RESULT HTTPHeaders_GetHeader
- (
- HTTP_HEADERS_HANDLE
- handle ,
-
-
-
-
- size_t
- index ,
-
-
-
-
- char **
- destination
-
-
-
- )
-
-
-
-
-
-
This API retrieves the string name+": "+value for the header element at the given index
.
-
Parameters
-
- handle A valid HTTP_HEADERS_HANDLE
value.
- index Zero-based index of the item in the headers collection.
- destination If non-null, the header value is written into a new string a pointer to which is written into this parameters. It is the caller's responsibility to free this memory.
-
-
-
-
Returns Returns HTTP_HEADERS_OK
when execution is successful or HTTP_HEADERS_ERROR
when an error occurs.
-
-
-
-
-
-
-
-
- HTTP_HEADERS_RESULT HTTPHeaders_GetHeaderCount
- (
- HTTP_HEADERS_HANDLE
- httpHeadersHandle ,
-
-
-
-
- size_t *
- headersCount
-
-
-
- )
-
-
-
-
-
-
This API retrieves the number of stored headers.
-
Parameters
-
- httpHeadersHandle A valid HTTP_HEADERS_HANDLE
value.
- headersCount If non-null, the API writes the number of into the memory pointed at by this parameter.
-
-
-
-
Returns Returns HTTP_HEADERS_OK
when execution is successful or HTTP_HEADERS_ERROR
when an error occurs.
-
-
-
-
-
-
-
-
- HTTP_HEADERS_RESULT HTTPHeaders_ReplaceHeaderNameValuePair
- (
- HTTP_HEADERS_HANDLE
- httpHeadersHandle ,
-
-
-
-
- const char *
- name ,
-
-
-
-
- const char *
- value
-
-
-
- )
-
-
-
-
-
-
This API performs exactly the same as HTTPHeaders_AddHeaderNameValuePair except that if the header name already exists then the already existing value will be replaced as opposed to being concatenated to.
-
Parameters
-
- httpHeadersHandle A valid HTTP_HEADERS_HANDLE
value.
- name The name of the HTTP header to add/replace. It is invalid for the name to include the ':' character or character codes outside the range 33-126.
- value The value to be assigned to the header.
-
-
-
-
Returns Returns HTTP_HEADERS_OK
when execution is successful or an error code from the HTTPAPIEX_RESULT enum.
-
-
-
-
-
-
-
-
diff --git a/c/doc/api_reference/httpheaders_8h_source.html b/c/doc/api_reference/httpheaders_8h_source.html
deleted file mode 100644
index 8e7175ee..00000000
--- a/c/doc/api_reference/httpheaders_8h_source.html
+++ /dev/null
@@ -1,159 +0,0 @@
-
-
-
-
-
-
-Microsoft Azure IoT Device SDK for C: c/common/inc/httpheaders.h Source File
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Microsoft Azure IoT Device SDK for C
- 1.0.0-preview.1.0.0
-
- The Microsoft Azure IoT device libraries for C contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the documentation of this file.
-
-
-
-
-
-
23 #include "macro_utils.h"
-
-
-
-
-
-
-
-
-
-
-
34 #define HTTP_HEADERS_RESULT_VALUES \
-
-
36 HTTP_HEADERS_INVALID_ARG, \
-
37 HTTP_HEADERS_ALLOC_FAILED, \
-
38 HTTP_HEADERS_INSUFFICIENT_BUFFER, \
-
-
-
-
-
44 typedef void * HTTP_HEADERS_HANDLE;
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/c/doc/api_reference/index.html b/c/doc/api_reference/index.html
deleted file mode 100644
index bfe4d498..00000000
--- a/c/doc/api_reference/index.html
+++ /dev/null
@@ -1,124 +0,0 @@
-
-
-
-
-
-
-Microsoft Azure IoT Device SDK for C: Microsoft Azure IoT Device SDK for C
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Microsoft Azure IoT Device SDK for C
- 1.0.0-preview.1.0.0
-
- The Microsoft Azure IoT device libraries for C contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-Introduction
-
The Microsoft Azure IoT device libraries for C contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
-
The device library consists of a set of reusable components with abstract interfaces that enable pluggability between stock and custom modules.
-
To meet the wide range of device requirements in the Internet of Things space, the C libraries are provided in source code form to support multiple form factors, operating systems, tools sets, protocols and communications patterns widely in use today.
-
-Features
-
-Sends event data to Azure IoT based services.
-Maps server commands to device functions.
-Buffers data when network connection is down.
-Batches messages to improve communication efficiency.
-Supports pluggable transport protocols. HTTP and AMQP protocols are available now, with more coming soon.
-Supports pluggable serialization methods. JSON is available now, with more coming soon.
-
-
-Tested platforms
-
The following platforms have been tested against this library:
-
-Windows 7
-Windows 8.1
-Ubuntu 14.04 LTS
-Debian 7.5
-Fedora 20
-Raspbian
-Mbed
-
-
The library code:
-
-Is written in ANSI C (C99) to maximize code portability.
-Avoids compiler extensions.
-Exposes a platform abstraction layer to isolate OS dependencies (HTTPAPI, Lock, Threads). Refer to the porting guide for more information.
-
-
-
-
-
-
diff --git a/c/doc/api_reference/iothub__client_8h.html b/c/doc/api_reference/iothub__client_8h.html
deleted file mode 100644
index af1c0bb3..00000000
--- a/c/doc/api_reference/iothub__client_8h.html
+++ /dev/null
@@ -1,450 +0,0 @@
-
-
-
-
-
-
-Microsoft Azure IoT Device SDK for C: c/iothub_client/inc/iothub_client.h File Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Microsoft Azure IoT Device SDK for C
- 1.0.0-preview.1.0.0
-
- The Microsoft Azure IoT device libraries for C contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Extends the IoTHubCLient_LL module with additional features.
-More...
-
-
Go to the source code of this file.
-
-
-IOTHUB_CLIENT_HANDLE IoTHubClient_CreateFromConnectionString (const char *connectionString, IOTHUB_CLIENT_TRANSPORT_PROVIDER protocol)
- Creates a IoT Hub client for communication with an existing IoT Hub using the specified connection string parameter. More...
-
-IOTHUB_CLIENT_HANDLE IoTHubClient_Create (const IOTHUB_CLIENT_CONFIG *config)
- Creates a IoT Hub client for communication with an existing IoT Hub using the specified parameters. More...
-
-void IoTHubClient_Destroy (IOTHUB_CLIENT_HANDLE iotHubClientHandle)
- Disposes of resources allocated by the IoT Hub client. This is a blocking call. More...
-
-IOTHUB_CLIENT_RESULT IoTHubClient_SendEventAsync (IOTHUB_CLIENT_HANDLE iotHubClientHandle, IOTHUB_MESSAGE_HANDLE eventMessageHandle, IOTHUB_CLIENT_EVENT_CONFIRMATION_CALLBACK eventConfirmationCallback, void *userContextCallback)
- Asynchronous call to send the message specified by eventMessageHandle
. More...
-
-IOTHUB_CLIENT_RESULT IoTHubClient_GetSendStatus (IOTHUB_CLIENT_LL_HANDLE iotHubClientHandle, IOTHUB_CLIENT_STATUS *iotHubClientStatus)
- This function returns the current sending status for IoTHubClient. More...
-
-IOTHUB_CLIENT_RESULT IoTHubClient_SetMessageCallback (IOTHUB_CLIENT_HANDLE iotHubClientHandle, IOTHUB_CLIENT_MESSAGE_CALLBACK_ASYNC messageCallback, void *userContextCallback)
- Sets up the message callback to be invoked when IoT Hub issues a message to the device. This is a blocking call. More...
-
-IOTHUB_CLIENT_RESULT IoTHubClient_GetLastMessageReceiveTime (IOTHUB_CLIENT_HANDLE iotHubClientHandle, time_t *lastMessageReceiveTime)
- This function returns in the out parameter lastMessageReceiveTime
what was the value of the time
function when the last message was received at the client. More...
-
-IOTHUB_CLIENT_RESULT IoTHubClient_SetOption (IOTHUB_CLIENT_HANDLE iotHubClientHandle, const char *optionName, const void *value)
- This API sets a runtime option identified by parameter optionName
to a value pointed to by value
. optionName
and the data type value
is pointing to are specific for every option. More...
-
-
-
-
Extends the IoTHubCLient_LL module with additional features.
-
IoTHubClient is a module that extends the IoTHubCLient_LL module with 2 features:
-scheduling the work for the IoTHubCLient from a thread, so that the user does not need to create their own thread
-thread-safe APIs
-
-
-
-
-
-
-
Creates a IoT Hub client for communication with an existing IoT Hub using the specified parameters.
-
Parameters
-
- config Pointer to an IOTHUB_CLIENT_CONFIG
structure
-
-
-
-
The API does not allow sharing of a connection across multiple devices. This is a blocking call.
-
Returns A non-NULL IOTHUB_CLIENT_LL_HANDLE
value that is used when invoking other functions for IoT Hub client and NULL
on failure.
-
-
-
-
-
-
-
-
- IOTHUB_CLIENT_HANDLE IoTHubClient_CreateFromConnectionString
- (
- const char *
- connectionString ,
-
-
-
-
- IOTHUB_CLIENT_TRANSPORT_PROVIDER
- protocol
-
-
-
- )
-
-
-
-
-
-
Creates a IoT Hub client for communication with an existing IoT Hub using the specified connection string parameter.
-
Parameters
-
- connectionString Pointer to a character string
- protocol Function pointer for protocol implementation
-
-
-
-
Sample connection string:
-HostName=[IoT Hub name goes here].[IoT Hub suffix goes here, e.g., private.azure-devices-int.net];CredentialType=SharedAccessKey;CredentialScope=Device;DeviceId=[Device ID goes here];SharedAccessKey=[Device key goes here];
-
Returns A non-NULL IOTHUB_CLIENT_LL_HANDLE
value that is used when invoking other functions for IoT Hub client and NULL
on failure.
-
-
-
-
-
-
-
-
- void IoTHubClient_Destroy
- (
- IOTHUB_CLIENT_HANDLE
- iotHubClientHandle )
-
-
-
-
-
-
Disposes of resources allocated by the IoT Hub client. This is a blocking call.
-
Parameters
-
- iotHubClientHandle The handle created by a call to the create function.
-
-
-
-
-
-
-
-
-
-
-
- IOTHUB_CLIENT_RESULT IoTHubClient_GetLastMessageReceiveTime
- (
- IOTHUB_CLIENT_HANDLE
- iotHubClientHandle ,
-
-
-
-
- time_t *
- lastMessageReceiveTime
-
-
-
- )
-
-
-
-
-
-
This function returns in the out parameter lastMessageReceiveTime
what was the value of the time
function when the last message was received at the client.
-
Parameters
-
- iotHubClientHandle The handle created by a call to the create function.
- lastMessageReceiveTime Out parameter containing the value of time
function when the last message was received.
-
-
-
-
Returns IOTHUB_CLIENT_OK upon success or an error code upon failure.
-
-
-
-
-
-
-
-
This function returns the current sending status for IoTHubClient.
-
Parameters
-
- iotHubClientHandle The handle created by a call to the create function.
- iotHubClientStatus The sending state is populated at the address pointed at by this parameter. The value will be set to IOTHUBCLIENT_SENDSTATUS_IDLE
if there is currently no item to be sent and IOTHUBCLIENT_SENDSTATUS_BUSY
if there are.
-
-
-
-
Returns IOTHUB_CLIENT_OK upon success or an error code upon failure.
-
-
-
-
-
-
-
-
- IOTHUB_CLIENT_RESULT IoTHubClient_SendEventAsync
- (
- IOTHUB_CLIENT_HANDLE
- iotHubClientHandle ,
-
-
-
-
- IOTHUB_MESSAGE_HANDLE
- eventMessageHandle ,
-
-
-
-
- IOTHUB_CLIENT_EVENT_CONFIRMATION_CALLBACK
- eventConfirmationCallback ,
-
-
-
-
- void *
- userContextCallback
-
-
-
- )
-
-
-
-
-
-
Asynchronous call to send the message specified by eventMessageHandle
.
-
Parameters
-
- iotHubClientHandle The handle created by a call to the create function.
- eventMessageHandle The handle to an IoT Hub message.
- eventConfirmationCallback The callback specified by the device for receiving confirmation of the delivery of the IoT Hub message. This callback can be expected to invoke the IoTHubClient_LL_SendEventAsync function for the same message in an attempt to retry sending a failing message. The user can specify a NULL
value here to indicate that no callback is required.
- userContextCallback User specified context that will be provided to the callback. This can be NULL
.
-
-
-
-
NOTE: The application behavior is undefined if the user calls the IoTHubClient_LL_Destroy function from within any callback.
-
Returns IOTHUB_CLIENT_OK upon success or an error code upon failure.
-
-
-
-
-
-
-
-
- IOTHUB_CLIENT_RESULT IoTHubClient_SetMessageCallback
- (
- IOTHUB_CLIENT_HANDLE
- iotHubClientHandle ,
-
-
-
-
- IOTHUB_CLIENT_MESSAGE_CALLBACK_ASYNC
- messageCallback ,
-
-
-
-
- void *
- userContextCallback
-
-
-
- )
-
-
-
-
-
-
Sets up the message callback to be invoked when IoT Hub issues a message to the device. This is a blocking call.
-
Parameters
-
- iotHubClientHandle The handle created by a call to the create function.
- messageCallback The callback specified by the device for receiving messages from IoT Hub.
- userContextCallback User specified context that will be provided to the callback. This can be NULL
.
-
-
-
-
NOTE: The application behavior is undefined if the user calls the IoTHubClient_LL_Destroy function from within any callback.
-
Returns IOTHUB_CLIENT_OK upon success or an error code upon failure.
-
-
-
-
-
-
-
-
- IOTHUB_CLIENT_RESULT IoTHubClient_SetOption
- (
- IOTHUB_CLIENT_HANDLE
- iotHubClientHandle ,
-
-
-
-
- const char *
- optionName ,
-
-
-
-
- const void *
- value
-
-
-
- )
-
-
-
-
-
-
This API sets a runtime option identified by parameter optionName
to a value pointed to by value
. optionName
and the data type value
is pointing to are specific for every option.
-
Parameters
-
- iotHubClientHandle The handle created by a call to the create function.
- optionName Name of the option.
- value The value.
-
-
-
-
The options that can be set via this API are:
-timeout - the maximum time in milliseconds a communication is allowed to use. value
is a pointer to an unsigned
int
with the timeout value in milliseconds. This is only supported for the HTTP protocol as of now. When the HTTP protocol uses CURL, the meaning of the parameter is total request time . When the HTTP protocol uses winhttp, the meaning is the same as the dwSendTimeout
and dwReceiveTimeout
parameters of the WinHttpSetTimeouts API.
-CURLOPT_LOW_SPEED_LIMIT - only available for HTTP protocol and only when CURL is used. It has the same meaning as CURL's option with the same name. value
is pointer to a long.
-CURLOPT_LOW_SPEED_TIME - only available for HTTP protocol and only when CURL is used. It has the same meaning as CURL's option with the same name. value
is pointer to a long.
-CURLOPT_FORBID_REUSE - only available for HTTP protocol and only when CURL is used. It has the same meaning as CURL's option with the same name. value
is pointer to a long.
-CURLOPT_FRESH_CONNECT - only available for HTTP protocol and only when CURL is used. It has the same meaning as CURL's option with the same name. value
is pointer to a long.
-CURLOPT_VERBOSE - only available for HTTP protocol and only when CURL is used. It has the same meaning as CURL's option with the same name. value
is pointer to a long.
-
-
Returns IOTHUB_CLIENT_OK upon success or an error code upon failure.
-
-
-
-
-
-
-
-
diff --git a/c/doc/api_reference/iothub__client_8h_source.html b/c/doc/api_reference/iothub__client_8h_source.html
deleted file mode 100644
index df41868b..00000000
--- a/c/doc/api_reference/iothub__client_8h_source.html
+++ /dev/null
@@ -1,148 +0,0 @@
-
-
-
-
-
-
-Microsoft Azure IoT Device SDK for C: c/iothub_client/inc/iothub_client.h Source File
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Microsoft Azure IoT Device SDK for C
- 1.0.0-preview.1.0.0
-
- The Microsoft Azure IoT device libraries for C contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the documentation of this file.
-
-
-
15 #ifndef IOTHUB_CLIENT_H
-
-
-
-
-
-
-
-
-
24 typedef void * IOTHUB_CLIENT_HANDLE;
-
-
-
-
-
-
-
-
85 extern IOTHUB_CLIENT_RESULT IoTHubClient_SendEventAsync (IOTHUB_CLIENT_HANDLE iotHubClientHandle, IOTHUB_MESSAGE_HANDLE eventMessageHandle, IOTHUB_CLIENT_EVENT_CONFIRMATION_CALLBACK eventConfirmationCallback,
void * userContextCallback);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
enum IOTHUB_CLIENT_STATUS_TAG IOTHUB_CLIENT_STATUS
Enumeration returned by the IoTHubClient_LL_GetSendStatus API to indicate the current sending status ...
-
IOTHUB_CLIENT_RESULT IoTHubClient_SendEventAsync(IOTHUB_CLIENT_HANDLE iotHubClientHandle, IOTHUB_MESSAGE_HANDLE eventMessageHandle, IOTHUB_CLIENT_EVENT_CONFIRMATION_CALLBACK eventConfirmationCallback, void *userContextCallback)
Asynchronous call to send the message specified by eventMessageHandle.
-
IOTHUB_CLIENT_RESULT IoTHubClient_SetOption(IOTHUB_CLIENT_HANDLE iotHubClientHandle, const char *optionName, const void *value)
This API sets a runtime option identified by parameter optionName to a value pointed to by value...
-
void IoTHubClient_Destroy(IOTHUB_CLIENT_HANDLE iotHubClientHandle)
Disposes of resources allocated by the IoT Hub client. This is a blocking call.
-
IOTHUB_CLIENT_HANDLE IoTHubClient_Create(const IOTHUB_CLIENT_CONFIG *config)
Creates a IoT Hub client for communication with an existing IoT Hub using the specified parameters...
-
IOTHUB_CLIENT_RESULT IoTHubClient_SetMessageCallback(IOTHUB_CLIENT_HANDLE iotHubClientHandle, IOTHUB_CLIENT_MESSAGE_CALLBACK_ASYNC messageCallback, void *userContextCallback)
Sets up the message callback to be invoked when IoT Hub issues a message to the device. This is a blocking call.
-
enum IOTHUB_CLIENT_RESULT_TAG IOTHUB_CLIENT_RESULT
Enumeration specifying the status of calls to various APIs in this module.
-
IOTHUB_CLIENT_RESULT IoTHubClient_GetSendStatus(IOTHUB_CLIENT_LL_HANDLE iotHubClientHandle, IOTHUB_CLIENT_STATUS *iotHubClientStatus)
This function returns the current sending status for IoTHubClient.
-
IOTHUB_CLIENT_HANDLE IoTHubClient_CreateFromConnectionString(const char *connectionString, IOTHUB_CLIENT_TRANSPORT_PROVIDER protocol)
Creates a IoT Hub client for communication with an existing IoT Hub using the specified connection st...
-
This struct captures IoTHub client configuration.
Definition: iothub_client_ll.h:90
-
IOTHUB_CLIENT_RESULT IoTHubClient_GetLastMessageReceiveTime(IOTHUB_CLIENT_HANDLE iotHubClientHandle, time_t *lastMessageReceiveTime)
This function returns in the out parameter lastMessageReceiveTime what was the value of the time func...
-
APIs that allow a user (usually a device) to communicate with an Azure IoTHub.
-
-
-
-
-
diff --git a/c/doc/api_reference/iothub__client__ll_8h.html b/c/doc/api_reference/iothub__client__ll_8h.html
deleted file mode 100644
index de2f1b27..00000000
--- a/c/doc/api_reference/iothub__client__ll_8h.html
+++ /dev/null
@@ -1,525 +0,0 @@
-
-
-
-
-
-
-Microsoft Azure IoT Device SDK for C: c/iothub_client/inc/iothub_client_ll.h File Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Microsoft Azure IoT Device SDK for C
- 1.0.0-preview.1.0.0
-
- The Microsoft Azure IoT device libraries for C contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
APIs that allow a user (usually a device) to communicate with an Azure IoTHub.
-More...
-
#include "agenttime.h "
-
#include "macro_utils.h"
-
#include "iothub_message.h"
-
-
Go to the source code of this file.
-
-
-IOTHUB_CLIENT_LL_HANDLE IoTHubClient_LL_CreateFromConnectionString (const char *connectionString, IOTHUB_CLIENT_TRANSPORT_PROVIDER protocol)
- Creates a IoT Hub client for communication with an existing IoT Hub using the specified connection string parameter. More...
-
-IOTHUB_CLIENT_LL_HANDLE IoTHubClient_LL_Create (const IOTHUB_CLIENT_CONFIG *config)
- Creates a IoT Hub client for communication with an existing IoT Hub using the specified parameters. More...
-
-void IoTHubClient_LL_Destroy (IOTHUB_CLIENT_LL_HANDLE iotHubClientHandle)
- Disposes of resources allocated by the IoT Hub client. This is a blocking call. More...
-
-IOTHUB_CLIENT_RESULT IoTHubClient_LL_SendEventAsync (IOTHUB_CLIENT_LL_HANDLE iotHubClientHandle, IOTHUB_MESSAGE_HANDLE eventMessageHandle, IOTHUB_CLIENT_EVENT_CONFIRMATION_CALLBACK eventConfirmationCallback, void *userContextCallback)
- Asynchronous call to send the message specified by eventMessageHandle
. More...
-
-IOTHUB_CLIENT_RESULT IoTHubClient_LL_GetSendStatus (IOTHUB_CLIENT_LL_HANDLE iotHubClientHandle, IOTHUB_CLIENT_STATUS *iotHubClientStatus)
- This function returns the current sending status for IoTHubClient. More...
-
-IOTHUB_CLIENT_RESULT IoTHubClient_LL_SetMessageCallback (IOTHUB_CLIENT_LL_HANDLE iotHubClientHandle, IOTHUB_CLIENT_MESSAGE_CALLBACK_ASYNC messageCallback, void *userContextCallback)
- Sets up the message callback to be invoked when IoT Hub issues a message to the device. This is a blocking call. More...
-
-IOTHUB_CLIENT_RESULT IoTHubClient_LL_GetLastMessageReceiveTime (IOTHUB_CLIENT_LL_HANDLE iotHubClientHandle, time_t *lastMessageReceiveTime)
- This function returns in the out parameter lastMessageReceiveTime
what was the value of the time
function when the last message was received at the client. More...
-
-void IoTHubClient_LL_DoWork (IOTHUB_CLIENT_LL_HANDLE iotHubClientHandle)
- This function is meant to be called by the user when work (sending/receiving) can be done by the IoTHubClient. More...
-
-IOTHUB_CLIENT_RESULT IoTHubClient_LL_SetOption (IOTHUB_CLIENT_LL_HANDLE iotHubClientHandle, const char *optionName, const void *value)
- This API sets a runtime option identified by parameter optionName
to a value pointed to by value
. optionName
and the data type value
is pointing to are specific for every option. More...
-
-
-
-
APIs that allow a user (usually a device) to communicate with an Azure IoTHub.
-
IoTHubClient_LL is a module that allows a user (usually a device) to communicate with an Azure IoTHub. It can send events and receive messages. At any given moment in time there can only be at most 1 message callback function.
-
This API surface contains a set of APIs that allows the user to interact with the lower layer portion of the IoTHubClient. These APIs contain _LL_
in their name, but retain the same functionality like the IoTHubClient_
... APIs, with one difference. If the _LL_
APIs are used then the user is responsible for scheduling when the actual work done by the IoTHubClient happens (when the data is sent/received on/from the wire). This is useful for constrained devices where spinning a separate thread is often not desired.
-
-
-
-
-
-
- IOTHUB_CLIENT_LL_HANDLE IoTHubClient_LL_Create
- (
- const IOTHUB_CLIENT_CONFIG *
- config )
-
-
-
-
-
-
Creates a IoT Hub client for communication with an existing IoT Hub using the specified parameters.
-
Parameters
-
- config Pointer to an IOTHUB_CLIENT_CONFIG
structure
-
-
-
-
The API does not allow sharing of a connection across multiple devices. This is a blocking call.
-
Returns A non-NULL IOTHUB_CLIENT_LL_HANDLE
value that is used when invoking other functions for IoT Hub client and NULL
on failure.
-
-
-
-
-
-
-
-
- IOTHUB_CLIENT_LL_HANDLE IoTHubClient_LL_CreateFromConnectionString
- (
- const char *
- connectionString ,
-
-
-
-
- IOTHUB_CLIENT_TRANSPORT_PROVIDER
- protocol
-
-
-
- )
-
-
-
-
-
-
Creates a IoT Hub client for communication with an existing IoT Hub using the specified connection string parameter.
-
Parameters
-
- connectionString Pointer to a character string
- protocol Function pointer for protocol implementation
-
-
-
-
Sample connection string:
-HostName=[IoT Hub name goes here].[IoT Hub suffix goes here, e.g., private.azure-devices-int.net];CredentialType=SharedAccessKey;CredentialScope=Device;DeviceId=[Device ID goes here];SharedAccessKey=[Device key goes here];
-
Returns A non-NULL IOTHUB_CLIENT_LL_HANDLE
value that is used when invoking other functions for IoT Hub client and NULL
on failure.
-
-
-
-
-
-
-
-
- void IoTHubClient_LL_Destroy
- (
- IOTHUB_CLIENT_LL_HANDLE
- iotHubClientHandle )
-
-
-
-
-
-
Disposes of resources allocated by the IoT Hub client. This is a blocking call.
-
Parameters
-
- iotHubClientHandle The handle created by a call to the create function.
-
-
-
-
-
-
-
-
-
-
-
- void IoTHubClient_LL_DoWork
- (
- IOTHUB_CLIENT_LL_HANDLE
- iotHubClientHandle )
-
-
-
-
-
-
This function is meant to be called by the user when work (sending/receiving) can be done by the IoTHubClient.
-
Parameters
-
- iotHubClientHandle The handle created by a call to the create function.
-
-
-
-
All IoTHubClient interactions (in regards to network traffic and/or user level callbacks) are the effect of calling this function and they take place synchronously inside _DoWork.
-
-
-
-
-
-
-
-
- IOTHUB_CLIENT_RESULT IoTHubClient_LL_GetLastMessageReceiveTime
- (
- IOTHUB_CLIENT_LL_HANDLE
- iotHubClientHandle ,
-
-
-
-
- time_t *
- lastMessageReceiveTime
-
-
-
- )
-
-
-
-
-
-
This function returns in the out parameter lastMessageReceiveTime
what was the value of the time
function when the last message was received at the client.
-
Parameters
-
- iotHubClientHandle The handle created by a call to the create function.
- lastMessageReceiveTime Out parameter containing the value of time
function when the last message was received.
-
-
-
-
Returns IOTHUB_CLIENT_OK upon success or an error code upon failure.
-
-
-
-
-
-
-
-
This function returns the current sending status for IoTHubClient.
-
Parameters
-
- iotHubClientHandle The handle created by a call to the create function.
- iotHubClientStatus The sending state is populated at the address pointed at by this parameter. The value will be set to IOTHUBCLIENT_SENDSTATUS_IDLE
if there is currently no item to be sent and IOTHUBCLIENT_SENDSTATUS_BUSY
if there are.
-
-
-
-
Returns IOTHUB_CLIENT_OK upon success or an error code upon failure.
-
-
-
-
-
-
-
-
- IOTHUB_CLIENT_RESULT IoTHubClient_LL_SendEventAsync
- (
- IOTHUB_CLIENT_LL_HANDLE
- iotHubClientHandle ,
-
-
-
-
- IOTHUB_MESSAGE_HANDLE
- eventMessageHandle ,
-
-
-
-
- IOTHUB_CLIENT_EVENT_CONFIRMATION_CALLBACK
- eventConfirmationCallback ,
-
-
-
-
- void *
- userContextCallback
-
-
-
- )
-
-
-
-
-
-
Asynchronous call to send the message specified by eventMessageHandle
.
-
Parameters
-
- iotHubClientHandle The handle created by a call to the create function.
- eventMessageHandle The handle to an IoT Hub message.
- eventConfirmationCallback The callback specified by the device for receiving confirmation of the delivery of the IoT Hub message. This callback can be expected to invoke the IoTHubClient_LL_SendEventAsync function for the same message in an attempt to retry sending a failing message. The user can specify a NULL
value here to indicate that no callback is required.
- userContextCallback User specified context that will be provided to the callback. This can be NULL
.
-
-
-
-
NOTE: The application behavior is undefined if the user calls the IoTHubClient_LL_Destroy function from within any callback.
-
Returns IOTHUB_CLIENT_OK upon success or an error code upon failure.
-
-
-
-
-
-
-
-
- IOTHUB_CLIENT_RESULT IoTHubClient_LL_SetMessageCallback
- (
- IOTHUB_CLIENT_LL_HANDLE
- iotHubClientHandle ,
-
-
-
-
- IOTHUB_CLIENT_MESSAGE_CALLBACK_ASYNC
- messageCallback ,
-
-
-
-
- void *
- userContextCallback
-
-
-
- )
-
-
-
-
-
-
Sets up the message callback to be invoked when IoT Hub issues a message to the device. This is a blocking call.
-
Parameters
-
- iotHubClientHandle The handle created by a call to the create function.
- messageCallback The callback specified by the device for receiving messages from IoT Hub.
- userContextCallback User specified context that will be provided to the callback. This can be NULL
.
-
-
-
-
NOTE: The application behavior is undefined if the user calls the IoTHubClient_LL_Destroy function from within any callback.
-
Returns IOTHUB_CLIENT_OK upon success or an error code upon failure.
-
-
-
-
-
-
-
-
- IOTHUB_CLIENT_RESULT IoTHubClient_LL_SetOption
- (
- IOTHUB_CLIENT_LL_HANDLE
- iotHubClientHandle ,
-
-
-
-
- const char *
- optionName ,
-
-
-
-
- const void *
- value
-
-
-
- )
-
-
-
-
-
-
This API sets a runtime option identified by parameter optionName
to a value pointed to by value
. optionName
and the data type value
is pointing to are specific for every option.
-
Parameters
-
- iotHubClientHandle The handle created by a call to the create function.
- optionName Name of the option.
- value The value.
-
-
-
-
The options that can be set via this API are:
-timeout - the maximum time in milliseconds a communication is allowed to use. value
is a pointer to an unsigned
int
with the timeout value in milliseconds. This is only supported for the HTTP protocol as of now. When the HTTP protocol uses CURL, the meaning of the parameter is total request time . When the HTTP protocol uses winhttp, the meaning is the same as the dwSendTimeout
and dwReceiveTimeout
parameters of the WinHttpSetTimeouts API.
-CURLOPT_LOW_SPEED_LIMIT - only available for HTTP protocol and only when CURL is used. It has the same meaning as CURL's option with the same name. value
is pointer to a long.
-CURLOPT_LOW_SPEED_TIME - only available for HTTP protocol and only when CURL is used. It has the same meaning as CURL's option with the same name. value
is pointer to a long.
-CURLOPT_FORBID_REUSE - only available for HTTP protocol and only when CURL is used. It has the same meaning as CURL's option with the same name. value
is pointer to a long.
-CURLOPT_FRESH_CONNECT - only available for HTTP protocol and only when CURL is used. It has the same meaning as CURL's option with the same name. value
is pointer to a long.
-CURLOPT_VERBOSE - only available for HTTP protocol and only when CURL is used. It has the same meaning as CURL's option with the same name. value
is pointer to a long.
-
-
Returns IOTHUB_CLIENT_OK upon success or an error code upon failure.
-
-
-
-
-
-
-
-
diff --git a/c/doc/api_reference/iothub__client__ll_8h_source.html b/c/doc/api_reference/iothub__client__ll_8h_source.html
deleted file mode 100644
index 5f0cb830..00000000
--- a/c/doc/api_reference/iothub__client__ll_8h_source.html
+++ /dev/null
@@ -1,220 +0,0 @@
-
-
-
-
-
-
-Microsoft Azure IoT Device SDK for C: c/iothub_client/inc/iothub_client_ll.h Source File
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Microsoft Azure IoT Device SDK for C
- 1.0.0-preview.1.0.0
-
- The Microsoft Azure IoT device libraries for C contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the documentation of this file.
-
-
-
23 #ifndef IOTHUB_CLIENT_LL_H
-
24 #define IOTHUB_CLIENT_LL_H
-
-
-
-
28 #include "macro_utils.h"
-
-
30 #include "iothub_message.h"
-
-
-
-
-
-
-
37 #define IOTHUB_CLIENT_RESULT_VALUES \
-
-
39 IOTHUB_CLIENT_INVALID_ARG, \
-
40 IOTHUB_CLIENT_ERROR, \
-
41 IOTHUB_CLIENT_INVALID_SIZE, \
-
42 IOTHUB_CLIENT_INDEFINITE_TIME \
-
-
-
-
-
48 #define IOTHUB_CLIENT_CONFIRMATION_RESULT_VALUES \
-
49 IOTHUB_CLIENT_CONFIRMATION_OK, \
-
50 IOTHUB_CLIENT_CONFIRMATION_BECAUSE_DESTROY, \
-
51 IOTHUB_CLIENT_CONFIRMATION_ERROR \
-
-
-
-
-
59 #define IOTHUB_CLIENT_STATUS_VALUES \
-
60 IOTHUB_CLIENT_SEND_STATUS_IDLE, \
-
61 IOTHUB_CLIENT_SEND_STATUS_BUSY \
-
-
-
-
-
68 #define TRANSPORT_TYPE_VALUES \
-
-
-
-
72 DEFINE_ENUM(TRANSPORT_TYPE, TRANSPORT_TYPE_VALUES);
-
-
74 #define IOTHUBMESSAGE_DISPOSITION_RESULT_VALUES \
-
75 IOTHUBMESSAGE_ACCEPTED, \
-
76 IOTHUBMESSAGE_REJECTED, \
-
77 IOTHUBMESSAGE_ABANDONED
-
-
-
-
84 typedef void * IOTHUB_CLIENT_LL_HANDLE;
-
-
-
87 typedef const void *(*IOTHUB_CLIENT_TRANSPORT_PROVIDER)(void);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
111 const char * protocolGatewayHostName;
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
IOTHUB_CLIENT_RESULT IoTHubClient_LL_SendEventAsync(IOTHUB_CLIENT_LL_HANDLE iotHubClientHandle, IOTHUB_MESSAGE_HANDLE eventMessageHandle, IOTHUB_CLIENT_EVENT_CONFIRMATION_CALLBACK eventConfirmationCallback, void *userContextCallback)
Asynchronous call to send the message specified by eventMessageHandle.
-
enum IOTHUB_CLIENT_STATUS_TAG IOTHUB_CLIENT_STATUS
Enumeration returned by the IoTHubClient_LL_GetSendStatus API to indicate the current sending status ...
-
struct IOTHUB_CLIENT_CONFIG_TAG IOTHUB_CLIENT_CONFIG
This struct captures IoTHub client configuration.
-
const char * iotHubName
The IoT Hub name to which the device is connecting.
Definition: iothub_client_ll.h:106
-
const char * iotHubSuffix
IoT Hub suffix goes here, e.g., private.azure-devices-int.net.
Definition: iothub_client_ll.h:109
-
enum IOTHUB_CLIENT_RESULT_TAG IOTHUB_CLIENT_RESULT
Enumeration specifying the status of calls to various APIs in this module.
-
IOTHUB_CLIENT_RESULT IoTHubClient_LL_GetSendStatus(IOTHUB_CLIENT_LL_HANDLE iotHubClientHandle, IOTHUB_CLIENT_STATUS *iotHubClientStatus)
This function returns the current sending status for IoTHubClient.
-
IOTHUB_CLIENT_RESULT IoTHubClient_LL_SetOption(IOTHUB_CLIENT_LL_HANDLE iotHubClientHandle, const char *optionName, const void *value)
This API sets a runtime option identified by parameter optionName to a value pointed to by value...
-
enum IOTHUBMESSAGE_DISPOSITION_RESULT_TAG IOTHUBMESSAGE_DISPOSITION_RESULT
Enumeration returned by the callback which is invoked whenever the IoT Hub sends a message to the dev...
-
void IoTHubClient_LL_DoWork(IOTHUB_CLIENT_LL_HANDLE iotHubClientHandle)
This function is meant to be called by the user when work (sending/receiving) can be done by the IoTH...
-
const char * deviceKey
The device key used to authenticate the device.
Definition: iothub_client_ll.h:103
-
Function prototypes for time related functions.
-
IOTHUB_CLIENT_LL_HANDLE IoTHubClient_LL_CreateFromConnectionString(const char *connectionString, IOTHUB_CLIENT_TRANSPORT_PROVIDER protocol)
Creates a IoT Hub client for communication with an existing IoT Hub using the specified connection st...
-
This struct captures IoTHub client configuration.
Definition: iothub_client_ll.h:90
-
void IoTHubClient_LL_Destroy(IOTHUB_CLIENT_LL_HANDLE iotHubClientHandle)
Disposes of resources allocated by the IoT Hub client. This is a blocking call.
-
IOTHUB_CLIENT_RESULT IoTHubClient_LL_GetLastMessageReceiveTime(IOTHUB_CLIENT_LL_HANDLE iotHubClientHandle, time_t *lastMessageReceiveTime)
This function returns in the out parameter lastMessageReceiveTime what was the value of the time func...
-
const char * deviceId
A string that identifies the device.
Definition: iothub_client_ll.h:100
-
enum IOTHUB_CLIENT_CONFIRMATION_RESULT_TAG IOTHUB_CLIENT_CONFIRMATION_RESULT
Enumeration passed in by the IoT Hub when the event confirmation callback is invoked to indicate stat...
-
IOTHUB_CLIENT_RESULT IoTHubClient_LL_SetMessageCallback(IOTHUB_CLIENT_LL_HANDLE iotHubClientHandle, IOTHUB_CLIENT_MESSAGE_CALLBACK_ASYNC messageCallback, void *userContextCallback)
Sets up the message callback to be invoked when IoT Hub issues a message to the device. This is a blocking call.
-
IOTHUB_CLIENT_TRANSPORT_PROVIDER protocol
A function pointer that is passed into the IoTHubClientCreate. A function definition for AMQP...
Definition: iothub_client_ll.h:97
-
IOTHUB_CLIENT_LL_HANDLE IoTHubClient_LL_Create(const IOTHUB_CLIENT_CONFIG *config)
Creates a IoT Hub client for communication with an existing IoT Hub using the specified parameters...
-
-
-
-
-
diff --git a/c/doc/api_reference/jquery.js b/c/doc/api_reference/jquery.js
deleted file mode 100644
index 1f4d0b47..00000000
--- a/c/doc/api_reference/jquery.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/*!
- * jQuery JavaScript Library v1.7.1
- * http://jquery.com/
- *
- * Copyright 2011, John Resig
- * Dual licensed under the MIT or GPL Version 2 licenses.
- * http://jquery.org/license
- *
- * Includes Sizzle.js
- * http://sizzlejs.com/
- * Copyright 2011, The Dojo Foundation
- * Released under the MIT, BSD, and GPL Licenses.
- *
- * Date: Mon Nov 21 21:11:03 2011 -0500
- */
-(function(bb,L){var av=bb.document,bu=bb.navigator,bl=bb.location;var b=(function(){var bF=function(b0,b1){return new bF.fn.init(b0,b1,bD)},bU=bb.jQuery,bH=bb.$,bD,bY=/^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,bM=/\S/,bI=/^\s+/,bE=/\s+$/,bA=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,bN=/^[\],:{}\s]*$/,bW=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,bP=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,bJ=/(?:^|:|,)(?:\s*\[)+/g,by=/(webkit)[ \/]([\w.]+)/,bR=/(opera)(?:.*version)?[ \/]([\w.]+)/,bQ=/(msie) ([\w.]+)/,bS=/(mozilla)(?:.*? rv:([\w.]+))?/,bB=/-([a-z]|[0-9])/ig,bZ=/^-ms-/,bT=function(b0,b1){return(b1+"").toUpperCase()},bX=bu.userAgent,bV,bC,e,bL=Object.prototype.toString,bG=Object.prototype.hasOwnProperty,bz=Array.prototype.push,bK=Array.prototype.slice,bO=String.prototype.trim,bv=Array.prototype.indexOf,bx={};bF.fn=bF.prototype={constructor:bF,init:function(b0,b4,b3){var b2,b5,b1,b6;if(!b0){return this}if(b0.nodeType){this.context=this[0]=b0;this.length=1;return this}if(b0==="body"&&!b4&&av.body){this.context=av;this[0]=av.body;this.selector=b0;this.length=1;return this}if(typeof b0==="string"){if(b0.charAt(0)==="<"&&b0.charAt(b0.length-1)===">"&&b0.length>=3){b2=[null,b0,null]}else{b2=bY.exec(b0)}if(b2&&(b2[1]||!b4)){if(b2[1]){b4=b4 instanceof bF?b4[0]:b4;b6=(b4?b4.ownerDocument||b4:av);b1=bA.exec(b0);if(b1){if(bF.isPlainObject(b4)){b0=[av.createElement(b1[1])];bF.fn.attr.call(b0,b4,true)}else{b0=[b6.createElement(b1[1])]}}else{b1=bF.buildFragment([b2[1]],[b6]);b0=(b1.cacheable?bF.clone(b1.fragment):b1.fragment).childNodes}return bF.merge(this,b0)}else{b5=av.getElementById(b2[2]);if(b5&&b5.parentNode){if(b5.id!==b2[2]){return b3.find(b0)}this.length=1;this[0]=b5}this.context=av;this.selector=b0;return this}}else{if(!b4||b4.jquery){return(b4||b3).find(b0)}else{return this.constructor(b4).find(b0)}}}else{if(bF.isFunction(b0)){return b3.ready(b0)}}if(b0.selector!==L){this.selector=b0.selector;this.context=b0.context}return bF.makeArray(b0,this)},selector:"",jquery:"1.7.1",length:0,size:function(){return this.length},toArray:function(){return bK.call(this,0)},get:function(b0){return b0==null?this.toArray():(b0<0?this[this.length+b0]:this[b0])},pushStack:function(b1,b3,b0){var b2=this.constructor();if(bF.isArray(b1)){bz.apply(b2,b1)}else{bF.merge(b2,b1)}b2.prevObject=this;b2.context=this.context;if(b3==="find"){b2.selector=this.selector+(this.selector?" ":"")+b0}else{if(b3){b2.selector=this.selector+"."+b3+"("+b0+")"}}return b2},each:function(b1,b0){return bF.each(this,b1,b0)},ready:function(b0){bF.bindReady();bC.add(b0);return this},eq:function(b0){b0=+b0;return b0===-1?this.slice(b0):this.slice(b0,b0+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(bK.apply(this,arguments),"slice",bK.call(arguments).join(","))},map:function(b0){return this.pushStack(bF.map(this,function(b2,b1){return b0.call(b2,b1,b2)}))},end:function(){return this.prevObject||this.constructor(null)},push:bz,sort:[].sort,splice:[].splice};bF.fn.init.prototype=bF.fn;bF.extend=bF.fn.extend=function(){var b9,b2,b0,b1,b6,b7,b5=arguments[0]||{},b4=1,b3=arguments.length,b8=false;if(typeof b5==="boolean"){b8=b5;b5=arguments[1]||{};b4=2}if(typeof b5!=="object"&&!bF.isFunction(b5)){b5={}}if(b3===b4){b5=this;--b4}for(;b40){return}bC.fireWith(av,[bF]);if(bF.fn.trigger){bF(av).trigger("ready").off("ready")}}},bindReady:function(){if(bC){return}bC=bF.Callbacks("once memory");if(av.readyState==="complete"){return setTimeout(bF.ready,1)}if(av.addEventListener){av.addEventListener("DOMContentLoaded",e,false);bb.addEventListener("load",bF.ready,false)}else{if(av.attachEvent){av.attachEvent("onreadystatechange",e);bb.attachEvent("onload",bF.ready);var b0=false;try{b0=bb.frameElement==null}catch(b1){}if(av.documentElement.doScroll&&b0){bw()}}}},isFunction:function(b0){return bF.type(b0)==="function"},isArray:Array.isArray||function(b0){return bF.type(b0)==="array"},isWindow:function(b0){return b0&&typeof b0==="object"&&"setInterval" in b0},isNumeric:function(b0){return !isNaN(parseFloat(b0))&&isFinite(b0)},type:function(b0){return b0==null?String(b0):bx[bL.call(b0)]||"object"},isPlainObject:function(b2){if(!b2||bF.type(b2)!=="object"||b2.nodeType||bF.isWindow(b2)){return false}try{if(b2.constructor&&!bG.call(b2,"constructor")&&!bG.call(b2.constructor.prototype,"isPrototypeOf")){return false}}catch(b1){return false}var b0;for(b0 in b2){}return b0===L||bG.call(b2,b0)},isEmptyObject:function(b1){for(var b0 in b1){return false}return true},error:function(b0){throw new Error(b0)},parseJSON:function(b0){if(typeof b0!=="string"||!b0){return null}b0=bF.trim(b0);if(bb.JSON&&bb.JSON.parse){return bb.JSON.parse(b0)}if(bN.test(b0.replace(bW,"@").replace(bP,"]").replace(bJ,""))){return(new Function("return "+b0))()}bF.error("Invalid JSON: "+b0)},parseXML:function(b2){var b0,b1;try{if(bb.DOMParser){b1=new DOMParser();b0=b1.parseFromString(b2,"text/xml")}else{b0=new ActiveXObject("Microsoft.XMLDOM");b0.async="false";b0.loadXML(b2)}}catch(b3){b0=L}if(!b0||!b0.documentElement||b0.getElementsByTagName("parsererror").length){bF.error("Invalid XML: "+b2)}return b0},noop:function(){},globalEval:function(b0){if(b0&&bM.test(b0)){(bb.execScript||function(b1){bb["eval"].call(bb,b1)})(b0)}},camelCase:function(b0){return b0.replace(bZ,"ms-").replace(bB,bT)},nodeName:function(b1,b0){return b1.nodeName&&b1.nodeName.toUpperCase()===b0.toUpperCase()},each:function(b3,b6,b2){var b1,b4=0,b5=b3.length,b0=b5===L||bF.isFunction(b3);if(b2){if(b0){for(b1 in b3){if(b6.apply(b3[b1],b2)===false){break}}}else{for(;b40&&b0[0]&&b0[b1-1])||b1===0||bF.isArray(b0));if(b3){for(;b21?aJ.call(arguments,0):bG;if(!(--bw)){bC.resolveWith(bC,bx)}}}function bz(bF){return function(bG){bB[bF]=arguments.length>1?aJ.call(arguments,0):bG;bC.notifyWith(bE,bB)}}if(e>1){for(;bva ";bI=bv.getElementsByTagName("*");bF=bv.getElementsByTagName("a")[0];if(!bI||!bI.length||!bF){return{}}bG=av.createElement("select");bx=bG.appendChild(av.createElement("option"));bE=bv.getElementsByTagName("input")[0];bJ={leadingWhitespace:(bv.firstChild.nodeType===3),tbody:!bv.getElementsByTagName("tbody").length,htmlSerialize:!!bv.getElementsByTagName("link").length,style:/top/.test(bF.getAttribute("style")),hrefNormalized:(bF.getAttribute("href")==="/a"),opacity:/^0.55/.test(bF.style.opacity),cssFloat:!!bF.style.cssFloat,checkOn:(bE.value==="on"),optSelected:bx.selected,getSetAttribute:bv.className!=="t",enctype:!!av.createElement("form").enctype,html5Clone:av.createElement("nav").cloneNode(true).outerHTML!=="<:nav>",submitBubbles:true,changeBubbles:true,focusinBubbles:false,deleteExpando:true,noCloneEvent:true,inlineBlockNeedsLayout:false,shrinkWrapBlocks:false,reliableMarginRight:true};bE.checked=true;bJ.noCloneChecked=bE.cloneNode(true).checked;bG.disabled=true;bJ.optDisabled=!bx.disabled;try{delete bv.test}catch(bC){bJ.deleteExpando=false}if(!bv.addEventListener&&bv.attachEvent&&bv.fireEvent){bv.attachEvent("onclick",function(){bJ.noCloneEvent=false});bv.cloneNode(true).fireEvent("onclick")}bE=av.createElement("input");bE.value="t";bE.setAttribute("type","radio");bJ.radioValue=bE.value==="t";bE.setAttribute("checked","checked");bv.appendChild(bE);bD=av.createDocumentFragment();bD.appendChild(bv.lastChild);bJ.checkClone=bD.cloneNode(true).cloneNode(true).lastChild.checked;bJ.appendChecked=bE.checked;bD.removeChild(bE);bD.appendChild(bv);bv.innerHTML="";if(bb.getComputedStyle){bA=av.createElement("div");bA.style.width="0";bA.style.marginRight="0";bv.style.width="2px";bv.appendChild(bA);bJ.reliableMarginRight=(parseInt((bb.getComputedStyle(bA,null)||{marginRight:0}).marginRight,10)||0)===0}if(bv.attachEvent){for(by in {submit:1,change:1,focusin:1}){bB="on"+by;bw=(bB in bv);if(!bw){bv.setAttribute(bB,"return;");bw=(typeof bv[bB]==="function")}bJ[by+"Bubbles"]=bw}}bD.removeChild(bv);bD=bG=bx=bA=bv=bE=null;b(function(){var bM,bU,bV,bT,bN,bO,bL,bS,bR,e,bP,bQ=av.getElementsByTagName("body")[0];if(!bQ){return}bL=1;bS="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;";bR="visibility:hidden;border:0;";e="style='"+bS+"border:5px solid #000;padding:0;'";bP="";bM=av.createElement("div");bM.style.cssText=bR+"width:0;height:0;position:static;top:0;margin-top:"+bL+"px";bQ.insertBefore(bM,bQ.firstChild);bv=av.createElement("div");bM.appendChild(bv);bv.innerHTML="";bz=bv.getElementsByTagName("td");bw=(bz[0].offsetHeight===0);bz[0].style.display="";bz[1].style.display="none";bJ.reliableHiddenOffsets=bw&&(bz[0].offsetHeight===0);bv.innerHTML="";bv.style.width=bv.style.paddingLeft="1px";b.boxModel=bJ.boxModel=bv.offsetWidth===2;if(typeof bv.style.zoom!=="undefined"){bv.style.display="inline";bv.style.zoom=1;bJ.inlineBlockNeedsLayout=(bv.offsetWidth===2);bv.style.display="";bv.innerHTML="
";bJ.shrinkWrapBlocks=(bv.offsetWidth!==2)}bv.style.cssText=bS+bR;bv.innerHTML=bP;bU=bv.firstChild;bV=bU.firstChild;bN=bU.nextSibling.firstChild.firstChild;bO={doesNotAddBorder:(bV.offsetTop!==5),doesAddBorderForTableAndCells:(bN.offsetTop===5)};bV.style.position="fixed";bV.style.top="20px";bO.fixedPosition=(bV.offsetTop===20||bV.offsetTop===15);bV.style.position=bV.style.top="";bU.style.overflow="hidden";bU.style.position="relative";bO.subtractsBorderForOverflowNotVisible=(bV.offsetTop===-5);bO.doesNotIncludeMarginInBodyOffset=(bQ.offsetTop!==bL);bQ.removeChild(bM);bv=bM=null;b.extend(bJ,bO)});return bJ})();var aS=/^(?:\{.*\}|\[.*\])$/,aA=/([A-Z])/g;b.extend({cache:{},uuid:0,expando:"jQuery"+(b.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:true,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:true},hasData:function(e){e=e.nodeType?b.cache[e[b.expando]]:e[b.expando];return !!e&&!S(e)},data:function(bx,bv,bz,by){if(!b.acceptData(bx)){return}var bG,bA,bD,bE=b.expando,bC=typeof bv==="string",bF=bx.nodeType,e=bF?b.cache:bx,bw=bF?bx[bE]:bx[bE]&&bE,bB=bv==="events";if((!bw||!e[bw]||(!bB&&!by&&!e[bw].data))&&bC&&bz===L){return}if(!bw){if(bF){bx[bE]=bw=++b.uuid}else{bw=bE}}if(!e[bw]){e[bw]={};if(!bF){e[bw].toJSON=b.noop}}if(typeof bv==="object"||typeof bv==="function"){if(by){e[bw]=b.extend(e[bw],bv)}else{e[bw].data=b.extend(e[bw].data,bv)}}bG=bA=e[bw];if(!by){if(!bA.data){bA.data={}}bA=bA.data}if(bz!==L){bA[b.camelCase(bv)]=bz}if(bB&&!bA[bv]){return bG.events}if(bC){bD=bA[bv];if(bD==null){bD=bA[b.camelCase(bv)]}}else{bD=bA}return bD},removeData:function(bx,bv,by){if(!b.acceptData(bx)){return}var bB,bA,bz,bC=b.expando,bD=bx.nodeType,e=bD?b.cache:bx,bw=bD?bx[bC]:bC;if(!e[bw]){return}if(bv){bB=by?e[bw]:e[bw].data;if(bB){if(!b.isArray(bv)){if(bv in bB){bv=[bv]}else{bv=b.camelCase(bv);if(bv in bB){bv=[bv]}else{bv=bv.split(" ")}}}for(bA=0,bz=bv.length;bA-1){return true}}return false},val:function(bx){var e,bv,by,bw=this[0];if(!arguments.length){if(bw){e=b.valHooks[bw.nodeName.toLowerCase()]||b.valHooks[bw.type];if(e&&"get" in e&&(bv=e.get(bw,"value"))!==L){return bv}bv=bw.value;return typeof bv==="string"?bv.replace(aU,""):bv==null?"":bv}return}by=b.isFunction(bx);return this.each(function(bA){var bz=b(this),bB;if(this.nodeType!==1){return}if(by){bB=bx.call(this,bA,bz.val())}else{bB=bx}if(bB==null){bB=""}else{if(typeof bB==="number"){bB+=""}else{if(b.isArray(bB)){bB=b.map(bB,function(bC){return bC==null?"":bC+""})}}}e=b.valHooks[this.nodeName.toLowerCase()]||b.valHooks[this.type];if(!e||!("set" in e)||e.set(this,bB,"value")===L){this.value=bB}})}});b.extend({valHooks:{option:{get:function(e){var bv=e.attributes.value;return !bv||bv.specified?e.value:e.text}},select:{get:function(e){var bA,bv,bz,bx,by=e.selectedIndex,bB=[],bC=e.options,bw=e.type==="select-one";if(by<0){return null}bv=bw?by:0;bz=bw?by+1:bC.length;for(;bv=0});if(!e.length){bv.selectedIndex=-1}return e}}},attrFn:{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true},attr:function(bA,bx,bB,bz){var bw,e,by,bv=bA.nodeType;if(!bA||bv===3||bv===8||bv===2){return}if(bz&&bx in b.attrFn){return b(bA)[bx](bB)}if(typeof bA.getAttribute==="undefined"){return b.prop(bA,bx,bB)}by=bv!==1||!b.isXMLDoc(bA);if(by){bx=bx.toLowerCase();e=b.attrHooks[bx]||(ao.test(bx)?aY:be)}if(bB!==L){if(bB===null){b.removeAttr(bA,bx);return}else{if(e&&"set" in e&&by&&(bw=e.set(bA,bB,bx))!==L){return bw}else{bA.setAttribute(bx,""+bB);return bB}}}else{if(e&&"get" in e&&by&&(bw=e.get(bA,bx))!==null){return bw}else{bw=bA.getAttribute(bx);return bw===null?L:bw}}},removeAttr:function(bx,bz){var by,bA,bv,e,bw=0;if(bz&&bx.nodeType===1){bA=bz.toLowerCase().split(af);e=bA.length;for(;bw=0)}}})});var bd=/^(?:textarea|input|select)$/i,n=/^([^\.]*)?(?:\.(.+))?$/,J=/\bhover(\.\S+)?\b/,aO=/^key/,bf=/^(?:mouse|contextmenu)|click/,T=/^(?:focusinfocus|focusoutblur)$/,U=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,Y=function(e){var bv=U.exec(e);if(bv){bv[1]=(bv[1]||"").toLowerCase();bv[3]=bv[3]&&new RegExp("(?:^|\\s)"+bv[3]+"(?:\\s|$)")}return bv},j=function(bw,e){var bv=bw.attributes||{};return((!e[1]||bw.nodeName.toLowerCase()===e[1])&&(!e[2]||(bv.id||{}).value===e[2])&&(!e[3]||e[3].test((bv["class"]||{}).value)))},bt=function(e){return b.event.special.hover?e:e.replace(J,"mouseenter$1 mouseleave$1")};b.event={add:function(bx,bC,bJ,bA,by){var bD,bB,bK,bI,bH,bF,e,bG,bv,bz,bw,bE;if(bx.nodeType===3||bx.nodeType===8||!bC||!bJ||!(bD=b._data(bx))){return}if(bJ.handler){bv=bJ;bJ=bv.handler}if(!bJ.guid){bJ.guid=b.guid++}bK=bD.events;if(!bK){bD.events=bK={}}bB=bD.handle;if(!bB){bD.handle=bB=function(bL){return typeof b!=="undefined"&&(!bL||b.event.triggered!==bL.type)?b.event.dispatch.apply(bB.elem,arguments):L};bB.elem=bx}bC=b.trim(bt(bC)).split(" ");for(bI=0;bI=0){bG=bG.slice(0,-1);bw=true}if(bG.indexOf(".")>=0){bx=bG.split(".");bG=bx.shift();bx.sort()}if((!bA||b.event.customEvent[bG])&&!b.event.global[bG]){return}bv=typeof bv==="object"?bv[b.expando]?bv:new b.Event(bG,bv):new b.Event(bG);bv.type=bG;bv.isTrigger=true;bv.exclusive=bw;bv.namespace=bx.join(".");bv.namespace_re=bv.namespace?new RegExp("(^|\\.)"+bx.join("\\.(?:.*\\.)?")+"(\\.|$)"):null;by=bG.indexOf(":")<0?"on"+bG:"";if(!bA){e=b.cache;for(bC in e){if(e[bC].events&&e[bC].events[bG]){b.event.trigger(bv,bD,e[bC].handle.elem,true)}}return}bv.result=L;if(!bv.target){bv.target=bA}bD=bD!=null?b.makeArray(bD):[];bD.unshift(bv);bF=b.event.special[bG]||{};if(bF.trigger&&bF.trigger.apply(bA,bD)===false){return}bB=[[bA,bF.bindType||bG]];if(!bJ&&!bF.noBubble&&!b.isWindow(bA)){bI=bF.delegateType||bG;bH=T.test(bI+bG)?bA:bA.parentNode;bz=null;for(;bH;bH=bH.parentNode){bB.push([bH,bI]);bz=bH}if(bz&&bz===bA.ownerDocument){bB.push([bz.defaultView||bz.parentWindow||bb,bI])}}for(bC=0;bCbA){bH.push({elem:this,matches:bz.slice(bA)})}for(bC=0;bC0?this.on(e,null,bx,bw):this.trigger(e)};if(b.attrFn){b.attrFn[e]=true}if(aO.test(e)){b.event.fixHooks[e]=b.event.keyHooks}if(bf.test(e)){b.event.fixHooks[e]=b.event.mouseHooks}});
-/*!
- * Sizzle CSS Selector Engine
- * Copyright 2011, The Dojo Foundation
- * Released under the MIT, BSD, and GPL Licenses.
- * More information: http://sizzlejs.com/
- */
-(function(){var bH=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,bC="sizcache"+(Math.random()+"").replace(".",""),bI=0,bL=Object.prototype.toString,bB=false,bA=true,bK=/\\/g,bO=/\r\n/g,bQ=/\W/;[0,0].sort(function(){bA=false;return 0});var by=function(bV,e,bY,bZ){bY=bY||[];e=e||av;var b1=e;if(e.nodeType!==1&&e.nodeType!==9){return[]}if(!bV||typeof bV!=="string"){return bY}var bS,b3,b6,bR,b2,b5,b4,bX,bU=true,bT=by.isXML(e),bW=[],b0=bV;do{bH.exec("");bS=bH.exec(b0);if(bS){b0=bS[3];bW.push(bS[1]);if(bS[2]){bR=bS[3];break}}}while(bS);if(bW.length>1&&bD.exec(bV)){if(bW.length===2&&bE.relative[bW[0]]){b3=bM(bW[0]+bW[1],e,bZ)}else{b3=bE.relative[bW[0]]?[e]:by(bW.shift(),e);while(bW.length){bV=bW.shift();if(bE.relative[bV]){bV+=bW.shift()}b3=bM(bV,b3,bZ)}}}else{if(!bZ&&bW.length>1&&e.nodeType===9&&!bT&&bE.match.ID.test(bW[0])&&!bE.match.ID.test(bW[bW.length-1])){b2=by.find(bW.shift(),e,bT);e=b2.expr?by.filter(b2.expr,b2.set)[0]:b2.set[0]}if(e){b2=bZ?{expr:bW.pop(),set:bF(bZ)}:by.find(bW.pop(),bW.length===1&&(bW[0]==="~"||bW[0]==="+")&&e.parentNode?e.parentNode:e,bT);b3=b2.expr?by.filter(b2.expr,b2.set):b2.set;if(bW.length>0){b6=bF(b3)}else{bU=false}while(bW.length){b5=bW.pop();b4=b5;if(!bE.relative[b5]){b5=""}else{b4=bW.pop()}if(b4==null){b4=e}bE.relative[b5](b6,b4,bT)}}else{b6=bW=[]}}if(!b6){b6=b3}if(!b6){by.error(b5||bV)}if(bL.call(b6)==="[object Array]"){if(!bU){bY.push.apply(bY,b6)}else{if(e&&e.nodeType===1){for(bX=0;b6[bX]!=null;bX++){if(b6[bX]&&(b6[bX]===true||b6[bX].nodeType===1&&by.contains(e,b6[bX]))){bY.push(b3[bX])}}}else{for(bX=0;b6[bX]!=null;bX++){if(b6[bX]&&b6[bX].nodeType===1){bY.push(b3[bX])}}}}}else{bF(b6,bY)}if(bR){by(bR,b1,bY,bZ);by.uniqueSort(bY)}return bY};by.uniqueSort=function(bR){if(bJ){bB=bA;bR.sort(bJ);if(bB){for(var e=1;e0};by.find=function(bX,e,bY){var bW,bS,bU,bT,bV,bR;if(!bX){return[]}for(bS=0,bU=bE.order.length;bS":function(bW,bR){var bV,bU=typeof bR==="string",bS=0,e=bW.length;if(bU&&!bQ.test(bR)){bR=bR.toLowerCase();for(;bS=0)){if(!bS){e.push(bV)}}else{if(bS){bR[bU]=false}}}}return false},ID:function(e){return e[1].replace(bK,"")},TAG:function(bR,e){return bR[1].replace(bK,"").toLowerCase()},CHILD:function(e){if(e[1]==="nth"){if(!e[2]){by.error(e[0])}e[2]=e[2].replace(/^\+|\s*/g,"");var bR=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(e[2]==="even"&&"2n"||e[2]==="odd"&&"2n+1"||!/\D/.test(e[2])&&"0n+"+e[2]||e[2]);e[2]=(bR[1]+(bR[2]||1))-0;e[3]=bR[3]-0}else{if(e[2]){by.error(e[0])}}e[0]=bI++;return e},ATTR:function(bU,bR,bS,e,bV,bW){var bT=bU[1]=bU[1].replace(bK,"");if(!bW&&bE.attrMap[bT]){bU[1]=bE.attrMap[bT]}bU[4]=(bU[4]||bU[5]||"").replace(bK,"");if(bU[2]==="~="){bU[4]=" "+bU[4]+" "}return bU},PSEUDO:function(bU,bR,bS,e,bV){if(bU[1]==="not"){if((bH.exec(bU[3])||"").length>1||/^\w/.test(bU[3])){bU[3]=by(bU[3],null,null,bR)}else{var bT=by.filter(bU[3],bR,bS,true^bV);if(!bS){e.push.apply(e,bT)}return false}}else{if(bE.match.POS.test(bU[0])||bE.match.CHILD.test(bU[0])){return true}}return bU},POS:function(e){e.unshift(true);return e}},filters:{enabled:function(e){return e.disabled===false&&e.type!=="hidden"},disabled:function(e){return e.disabled===true},checked:function(e){return e.checked===true},selected:function(e){if(e.parentNode){e.parentNode.selectedIndex}return e.selected===true},parent:function(e){return !!e.firstChild},empty:function(e){return !e.firstChild},has:function(bS,bR,e){return !!by(e[3],bS).length},header:function(e){return(/h\d/i).test(e.nodeName)},text:function(bS){var e=bS.getAttribute("type"),bR=bS.type;return bS.nodeName.toLowerCase()==="input"&&"text"===bR&&(e===bR||e===null)},radio:function(e){return e.nodeName.toLowerCase()==="input"&&"radio"===e.type},checkbox:function(e){return e.nodeName.toLowerCase()==="input"&&"checkbox"===e.type},file:function(e){return e.nodeName.toLowerCase()==="input"&&"file"===e.type},password:function(e){return e.nodeName.toLowerCase()==="input"&&"password"===e.type},submit:function(bR){var e=bR.nodeName.toLowerCase();return(e==="input"||e==="button")&&"submit"===bR.type},image:function(e){return e.nodeName.toLowerCase()==="input"&&"image"===e.type},reset:function(bR){var e=bR.nodeName.toLowerCase();return(e==="input"||e==="button")&&"reset"===bR.type},button:function(bR){var e=bR.nodeName.toLowerCase();return e==="input"&&"button"===bR.type||e==="button"},input:function(e){return(/input|select|textarea|button/i).test(e.nodeName)},focus:function(e){return e===e.ownerDocument.activeElement}},setFilters:{first:function(bR,e){return e===0},last:function(bS,bR,e,bT){return bR===bT.length-1},even:function(bR,e){return e%2===0},odd:function(bR,e){return e%2===1},lt:function(bS,bR,e){return bRe[3]-0},nth:function(bS,bR,e){return e[3]-0===bR},eq:function(bS,bR,e){return e[3]-0===bR}},filter:{PSEUDO:function(bS,bX,bW,bY){var e=bX[1],bR=bE.filters[e];if(bR){return bR(bS,bW,bX,bY)}else{if(e==="contains"){return(bS.textContent||bS.innerText||bw([bS])||"").indexOf(bX[3])>=0}else{if(e==="not"){var bT=bX[3];for(var bV=0,bU=bT.length;bV=0)}}},ID:function(bR,e){return bR.nodeType===1&&bR.getAttribute("id")===e},TAG:function(bR,e){return(e==="*"&&bR.nodeType===1)||!!bR.nodeName&&bR.nodeName.toLowerCase()===e},CLASS:function(bR,e){return(" "+(bR.className||bR.getAttribute("class"))+" ").indexOf(e)>-1},ATTR:function(bV,bT){var bS=bT[1],e=by.attr?by.attr(bV,bS):bE.attrHandle[bS]?bE.attrHandle[bS](bV):bV[bS]!=null?bV[bS]:bV.getAttribute(bS),bW=e+"",bU=bT[2],bR=bT[4];return e==null?bU==="!=":!bU&&by.attr?e!=null:bU==="="?bW===bR:bU==="*="?bW.indexOf(bR)>=0:bU==="~="?(" "+bW+" ").indexOf(bR)>=0:!bR?bW&&e!==false:bU==="!="?bW!==bR:bU==="^="?bW.indexOf(bR)===0:bU==="$="?bW.substr(bW.length-bR.length)===bR:bU==="|="?bW===bR||bW.substr(0,bR.length+1)===bR+"-":false},POS:function(bU,bR,bS,bV){var e=bR[2],bT=bE.setFilters[e];if(bT){return bT(bU,bS,bR,bV)}}}};var bD=bE.match.POS,bx=function(bR,e){return"\\"+(e-0+1)};for(var bz in bE.match){bE.match[bz]=new RegExp(bE.match[bz].source+(/(?![^\[]*\])(?![^\(]*\))/.source));bE.leftMatch[bz]=new RegExp(/(^(?:.|\r|\n)*?)/.source+bE.match[bz].source.replace(/\\(\d+)/g,bx))}var bF=function(bR,e){bR=Array.prototype.slice.call(bR,0);if(e){e.push.apply(e,bR);return e}return bR};try{Array.prototype.slice.call(av.documentElement.childNodes,0)[0].nodeType}catch(bP){bF=function(bU,bT){var bS=0,bR=bT||[];if(bL.call(bU)==="[object Array]"){Array.prototype.push.apply(bR,bU)}else{if(typeof bU.length==="number"){for(var e=bU.length;bS ";e.insertBefore(bR,e.firstChild);if(av.getElementById(bS)){bE.find.ID=function(bU,bV,bW){if(typeof bV.getElementById!=="undefined"&&!bW){var bT=bV.getElementById(bU[1]);return bT?bT.id===bU[1]||typeof bT.getAttributeNode!=="undefined"&&bT.getAttributeNode("id").nodeValue===bU[1]?[bT]:L:[]}};bE.filter.ID=function(bV,bT){var bU=typeof bV.getAttributeNode!=="undefined"&&bV.getAttributeNode("id");return bV.nodeType===1&&bU&&bU.nodeValue===bT}}e.removeChild(bR);e=bR=null})();(function(){var e=av.createElement("div");e.appendChild(av.createComment(""));if(e.getElementsByTagName("*").length>0){bE.find.TAG=function(bR,bV){var bU=bV.getElementsByTagName(bR[1]);if(bR[1]==="*"){var bT=[];for(var bS=0;bU[bS];bS++){if(bU[bS].nodeType===1){bT.push(bU[bS])}}bU=bT}return bU}}e.innerHTML=" ";if(e.firstChild&&typeof e.firstChild.getAttribute!=="undefined"&&e.firstChild.getAttribute("href")!=="#"){bE.attrHandle.href=function(bR){return bR.getAttribute("href",2)}}e=null})();if(av.querySelectorAll){(function(){var e=by,bT=av.createElement("div"),bS="__sizzle__";bT.innerHTML="
";if(bT.querySelectorAll&&bT.querySelectorAll(".TEST").length===0){return}by=function(b4,bV,bZ,b3){bV=bV||av;if(!b3&&!by.isXML(bV)){var b2=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b4);if(b2&&(bV.nodeType===1||bV.nodeType===9)){if(b2[1]){return bF(bV.getElementsByTagName(b4),bZ)}else{if(b2[2]&&bE.find.CLASS&&bV.getElementsByClassName){return bF(bV.getElementsByClassName(b2[2]),bZ)}}}if(bV.nodeType===9){if(b4==="body"&&bV.body){return bF([bV.body],bZ)}else{if(b2&&b2[3]){var bY=bV.getElementById(b2[3]);if(bY&&bY.parentNode){if(bY.id===b2[3]){return bF([bY],bZ)}}else{return bF([],bZ)}}}try{return bF(bV.querySelectorAll(b4),bZ)}catch(b0){}}else{if(bV.nodeType===1&&bV.nodeName.toLowerCase()!=="object"){var bW=bV,bX=bV.getAttribute("id"),bU=bX||bS,b6=bV.parentNode,b5=/^\s*[+~]/.test(b4);if(!bX){bV.setAttribute("id",bU)}else{bU=bU.replace(/'/g,"\\$&")}if(b5&&b6){bV=bV.parentNode}try{if(!b5||b6){return bF(bV.querySelectorAll("[id='"+bU+"'] "+b4),bZ)}}catch(b1){}finally{if(!bX){bW.removeAttribute("id")}}}}}return e(b4,bV,bZ,b3)};for(var bR in e){by[bR]=e[bR]}bT=null})()}(function(){var e=av.documentElement,bS=e.matchesSelector||e.mozMatchesSelector||e.webkitMatchesSelector||e.msMatchesSelector;if(bS){var bU=!bS.call(av.createElement("div"),"div"),bR=false;try{bS.call(av.documentElement,"[test!='']:sizzle")}catch(bT){bR=true}by.matchesSelector=function(bW,bY){bY=bY.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!by.isXML(bW)){try{if(bR||!bE.match.PSEUDO.test(bY)&&!/!=/.test(bY)){var bV=bS.call(bW,bY);if(bV||!bU||bW.document&&bW.document.nodeType!==11){return bV}}}catch(bX){}}return by(bY,null,null,[bW]).length>0}}})();(function(){var e=av.createElement("div");e.innerHTML="
";if(!e.getElementsByClassName||e.getElementsByClassName("e").length===0){return}e.lastChild.className="e";if(e.getElementsByClassName("e").length===1){return}bE.order.splice(1,0,"CLASS");bE.find.CLASS=function(bR,bS,bT){if(typeof bS.getElementsByClassName!=="undefined"&&!bT){return bS.getElementsByClassName(bR[1])}};e=null})();function bv(bR,bW,bV,bZ,bX,bY){for(var bT=0,bS=bZ.length;bT0){bU=e;break}}}e=e[bR]}bZ[bT]=bU}}}if(av.documentElement.contains){by.contains=function(bR,e){return bR!==e&&(bR.contains?bR.contains(e):true)}}else{if(av.documentElement.compareDocumentPosition){by.contains=function(bR,e){return !!(bR.compareDocumentPosition(e)&16)}}else{by.contains=function(){return false}}}by.isXML=function(e){var bR=(e?e.ownerDocument||e:0).documentElement;return bR?bR.nodeName!=="HTML":false};var bM=function(bS,e,bW){var bV,bX=[],bU="",bY=e.nodeType?[e]:e;while((bV=bE.match.PSEUDO.exec(bS))){bU+=bV[0];bS=bS.replace(bE.match.PSEUDO,"")}bS=bE.relative[bS]?bS+"*":bS;for(var bT=0,bR=bY.length;bT 0){for(bB=bA;bB=0:b.filter(e,this).length>0:this.filter(e).length>0)},closest:function(by,bx){var bv=[],bw,e,bz=this[0];if(b.isArray(by)){var bB=1;while(bz&&bz.ownerDocument&&bz!==bx){for(bw=0;bw-1:b.find.matchesSelector(bz,by)){bv.push(bz);break}else{bz=bz.parentNode;if(!bz||!bz.ownerDocument||bz===bx||bz.nodeType===11){break}}}}bv=bv.length>1?b.unique(bv):bv;return this.pushStack(bv,"closest",by)},index:function(e){if(!e){return(this[0]&&this[0].parentNode)?this.prevAll().length:-1}if(typeof e==="string"){return b.inArray(this[0],b(e))}return b.inArray(e.jquery?e[0]:e,this)},add:function(e,bv){var bx=typeof e==="string"?b(e,bv):b.makeArray(e&&e.nodeType?[e]:e),bw=b.merge(this.get(),bx);return this.pushStack(C(bx[0])||C(bw[0])?bw:b.unique(bw))},andSelf:function(){return this.add(this.prevObject)}});function C(e){return !e||!e.parentNode||e.parentNode.nodeType===11}b.each({parent:function(bv){var e=bv.parentNode;return e&&e.nodeType!==11?e:null},parents:function(e){return b.dir(e,"parentNode")},parentsUntil:function(bv,e,bw){return b.dir(bv,"parentNode",bw)},next:function(e){return b.nth(e,2,"nextSibling")},prev:function(e){return b.nth(e,2,"previousSibling")},nextAll:function(e){return b.dir(e,"nextSibling")},prevAll:function(e){return b.dir(e,"previousSibling")},nextUntil:function(bv,e,bw){return b.dir(bv,"nextSibling",bw)},prevUntil:function(bv,e,bw){return b.dir(bv,"previousSibling",bw)},siblings:function(e){return b.sibling(e.parentNode.firstChild,e)},children:function(e){return b.sibling(e.firstChild)},contents:function(e){return b.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:b.makeArray(e.childNodes)}},function(e,bv){b.fn[e]=function(by,bw){var bx=b.map(this,bv,by);if(!ab.test(e)){bw=by}if(bw&&typeof bw==="string"){bx=b.filter(bw,bx)}bx=this.length>1&&!ay[e]?b.unique(bx):bx;if((this.length>1||a9.test(bw))&&aq.test(e)){bx=bx.reverse()}return this.pushStack(bx,e,P.call(arguments).join(","))}});b.extend({filter:function(bw,e,bv){if(bv){bw=":not("+bw+")"}return e.length===1?b.find.matchesSelector(e[0],bw)?[e[0]]:[]:b.find.matches(bw,e)},dir:function(bw,bv,by){var e=[],bx=bw[bv];while(bx&&bx.nodeType!==9&&(by===L||bx.nodeType!==1||!b(bx).is(by))){if(bx.nodeType===1){e.push(bx)}bx=bx[bv]}return e},nth:function(by,e,bw,bx){e=e||1;var bv=0;for(;by;by=by[bw]){if(by.nodeType===1&&++bv===e){break}}return by},sibling:function(bw,bv){var e=[];for(;bw;bw=bw.nextSibling){if(bw.nodeType===1&&bw!==bv){e.push(bw)}}return e}});function aG(bx,bw,e){bw=bw||0;if(b.isFunction(bw)){return b.grep(bx,function(bz,by){var bA=!!bw.call(bz,by,bz);return bA===e})}else{if(bw.nodeType){return b.grep(bx,function(bz,by){return(bz===bw)===e})}else{if(typeof bw==="string"){var bv=b.grep(bx,function(by){return by.nodeType===1});if(bp.test(bw)){return b.filter(bw,bv,!e)}else{bw=b.filter(bw,bv)}}}}return b.grep(bx,function(bz,by){return(b.inArray(bz,bw)>=0)===e})}function a(e){var bw=aR.split("|"),bv=e.createDocumentFragment();if(bv.createElement){while(bw.length){bv.createElement(bw.pop())}}return bv}var aR="abbr|article|aside|audio|canvas|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",ag=/ jQuery\d+="(?:\d+|null)"/g,ar=/^\s+/,R=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,d=/<([\w:]+)/,w=/",""],legend:[1,""," "],thead:[1,""],tr:[2,""],td:[3,""],col:[2,""],area:[1,""," "],_default:[0,"",""]},ac=a(av);ax.optgroup=ax.option;ax.tbody=ax.tfoot=ax.colgroup=ax.caption=ax.thead;ax.th=ax.td;if(!b.support.htmlSerialize){ax._default=[1,"div","
"]}b.fn.extend({text:function(e){if(b.isFunction(e)){return this.each(function(bw){var bv=b(this);bv.text(e.call(this,bw,bv.text()))})}if(typeof e!=="object"&&e!==L){return this.empty().append((this[0]&&this[0].ownerDocument||av).createTextNode(e))}return b.text(this)},wrapAll:function(e){if(b.isFunction(e)){return this.each(function(bw){b(this).wrapAll(e.call(this,bw))})}if(this[0]){var bv=b(e,this[0].ownerDocument).eq(0).clone(true);if(this[0].parentNode){bv.insertBefore(this[0])}bv.map(function(){var bw=this;while(bw.firstChild&&bw.firstChild.nodeType===1){bw=bw.firstChild}return bw}).append(this)}return this},wrapInner:function(e){if(b.isFunction(e)){return this.each(function(bv){b(this).wrapInner(e.call(this,bv))})}return this.each(function(){var bv=b(this),bw=bv.contents();if(bw.length){bw.wrapAll(e)}else{bv.append(e)}})},wrap:function(e){var bv=b.isFunction(e);return this.each(function(bw){b(this).wrapAll(bv?e.call(this,bw):e)})},unwrap:function(){return this.parent().each(function(){if(!b.nodeName(this,"body")){b(this).replaceWith(this.childNodes)}}).end()},append:function(){return this.domManip(arguments,true,function(e){if(this.nodeType===1){this.appendChild(e)}})},prepend:function(){return this.domManip(arguments,true,function(e){if(this.nodeType===1){this.insertBefore(e,this.firstChild)}})},before:function(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(bv){this.parentNode.insertBefore(bv,this)})}else{if(arguments.length){var e=b.clean(arguments);e.push.apply(e,this.toArray());return this.pushStack(e,"before",arguments)}}},after:function(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(bv){this.parentNode.insertBefore(bv,this.nextSibling)})}else{if(arguments.length){var e=this.pushStack(this,"after",arguments);e.push.apply(e,b.clean(arguments));return e}}},remove:function(e,bx){for(var bv=0,bw;(bw=this[bv])!=null;bv++){if(!e||b.filter(e,[bw]).length){if(!bx&&bw.nodeType===1){b.cleanData(bw.getElementsByTagName("*"));b.cleanData([bw])}if(bw.parentNode){bw.parentNode.removeChild(bw)}}}return this},empty:function(){for(var e=0,bv;(bv=this[e])!=null;e++){if(bv.nodeType===1){b.cleanData(bv.getElementsByTagName("*"))}while(bv.firstChild){bv.removeChild(bv.firstChild)}}return this},clone:function(bv,e){bv=bv==null?false:bv;e=e==null?bv:e;return this.map(function(){return b.clone(this,bv,e)})},html:function(bx){if(bx===L){return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(ag,""):null}else{if(typeof bx==="string"&&!ae.test(bx)&&(b.support.leadingWhitespace||!ar.test(bx))&&!ax[(d.exec(bx)||["",""])[1].toLowerCase()]){bx=bx.replace(R,"<$1>$2>");try{for(var bw=0,bv=this.length;bw1&&bw0?this.clone(true):this).get();b(bC[bA])[bv](by);bz=bz.concat(by)}return this.pushStack(bz,e,bC.selector)}}});function bg(e){if(typeof e.getElementsByTagName!=="undefined"){return e.getElementsByTagName("*")}else{if(typeof e.querySelectorAll!=="undefined"){return e.querySelectorAll("*")}else{return[]}}}function az(e){if(e.type==="checkbox"||e.type==="radio"){e.defaultChecked=e.checked}}function E(e){var bv=(e.nodeName||"").toLowerCase();if(bv==="input"){az(e)}else{if(bv!=="script"&&typeof e.getElementsByTagName!=="undefined"){b.grep(e.getElementsByTagName("input"),az)}}}function al(e){var bv=av.createElement("div");ac.appendChild(bv);bv.innerHTML=e.outerHTML;return bv.firstChild}b.extend({clone:function(by,bA,bw){var e,bv,bx,bz=b.support.html5Clone||!ah.test("<"+by.nodeName)?by.cloneNode(true):al(by);if((!b.support.noCloneEvent||!b.support.noCloneChecked)&&(by.nodeType===1||by.nodeType===11)&&!b.isXMLDoc(by)){ai(by,bz);e=bg(by);bv=bg(bz);for(bx=0;e[bx];++bx){if(bv[bx]){ai(e[bx],bv[bx])}}}if(bA){t(by,bz);if(bw){e=bg(by);bv=bg(bz);for(bx=0;e[bx];++bx){t(e[bx],bv[bx])}}}e=bv=null;return bz},clean:function(bw,by,bH,bA){var bF;by=by||av;if(typeof by.createElement==="undefined"){by=by.ownerDocument||by[0]&&by[0].ownerDocument||av}var bI=[],bB;for(var bE=0,bz;(bz=bw[bE])!=null;bE++){if(typeof bz==="number"){bz+=""}if(!bz){continue}if(typeof bz==="string"){if(!W.test(bz)){bz=by.createTextNode(bz)}else{bz=bz.replace(R,"<$1>$2>");var bK=(d.exec(bz)||["",""])[1].toLowerCase(),bx=ax[bK]||ax._default,bD=bx[0],bv=by.createElement("div");if(by===av){ac.appendChild(bv)}else{a(by).appendChild(bv)}bv.innerHTML=bx[1]+bz+bx[2];while(bD--){bv=bv.lastChild}if(!b.support.tbody){var e=w.test(bz),bC=bK==="table"&&!e?bv.firstChild&&bv.firstChild.childNodes:bx[1]===""&&!e?bv.childNodes:[];for(bB=bC.length-1;bB>=0;--bB){if(b.nodeName(bC[bB],"tbody")&&!bC[bB].childNodes.length){bC[bB].parentNode.removeChild(bC[bB])}}}if(!b.support.leadingWhitespace&&ar.test(bz)){bv.insertBefore(by.createTextNode(ar.exec(bz)[0]),bv.firstChild)}bz=bv.childNodes}}var bG;if(!b.support.appendChecked){if(bz[0]&&typeof(bG=bz.length)==="number"){for(bB=0;bB=0){return bx+"px"}}else{return bx}}}});if(!b.support.opacity){b.cssHooks.opacity={get:function(bv,e){return au.test((e&&bv.currentStyle?bv.currentStyle.filter:bv.style.filter)||"")?(parseFloat(RegExp.$1)/100)+"":e?"1":""},set:function(by,bz){var bx=by.style,bv=by.currentStyle,e=b.isNumeric(bz)?"alpha(opacity="+bz*100+")":"",bw=bv&&bv.filter||bx.filter||"";bx.zoom=1;if(bz>=1&&b.trim(bw.replace(ak,""))===""){bx.removeAttribute("filter");if(bv&&!bv.filter){return}}bx.filter=ak.test(bw)?bw.replace(ak,e):bw+" "+e}}}b(function(){if(!b.support.reliableMarginRight){b.cssHooks.marginRight={get:function(bw,bv){var e;b.swap(bw,{display:"inline-block"},function(){if(bv){e=Z(bw,"margin-right","marginRight")}else{e=bw.style.marginRight}});return e}}}});if(av.defaultView&&av.defaultView.getComputedStyle){aI=function(by,bw){var bv,bx,e;bw=bw.replace(z,"-$1").toLowerCase();if((bx=by.ownerDocument.defaultView)&&(e=bx.getComputedStyle(by,null))){bv=e.getPropertyValue(bw);if(bv===""&&!b.contains(by.ownerDocument.documentElement,by)){bv=b.style(by,bw)}}return bv}}if(av.documentElement.currentStyle){aX=function(bz,bw){var bA,e,by,bv=bz.currentStyle&&bz.currentStyle[bw],bx=bz.style;if(bv===null&&bx&&(by=bx[bw])){bv=by}if(!bc.test(bv)&&bn.test(bv)){bA=bx.left;e=bz.runtimeStyle&&bz.runtimeStyle.left;if(e){bz.runtimeStyle.left=bz.currentStyle.left}bx.left=bw==="fontSize"?"1em":(bv||0);bv=bx.pixelLeft+"px";bx.left=bA;if(e){bz.runtimeStyle.left=e}}return bv===""?"auto":bv}}Z=aI||aX;function p(by,bw,bv){var bA=bw==="width"?by.offsetWidth:by.offsetHeight,bz=bw==="width"?an:a1,bx=0,e=bz.length;if(bA>0){if(bv!=="border"){for(;bx)<[^<]*)*<\/script>/gi,q=/^(?:select|textarea)/i,h=/\s+/,br=/([?&])_=[^&]*/,K=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,A=b.fn.load,aa={},r={},aE,s,aV=["*/"]+["*"];try{aE=bl.href}catch(aw){aE=av.createElement("a");aE.href="";aE=aE.href}s=K.exec(aE.toLowerCase())||[];function f(e){return function(by,bA){if(typeof by!=="string"){bA=by;by="*"}if(b.isFunction(bA)){var bx=by.toLowerCase().split(h),bw=0,bz=bx.length,bv,bB,bC;for(;bw=0){var e=bw.slice(by,bw.length);bw=bw.slice(0,by)}var bx="GET";if(bz){if(b.isFunction(bz)){bA=bz;bz=L}else{if(typeof bz==="object"){bz=b.param(bz,b.ajaxSettings.traditional);bx="POST"}}}var bv=this;b.ajax({url:bw,type:bx,dataType:"html",data:bz,complete:function(bC,bB,bD){bD=bC.responseText;if(bC.isResolved()){bC.done(function(bE){bD=bE});bv.html(e?b("").append(bD.replace(a6,"")).find(e):bD)}if(bA){bv.each(bA,[bD,bB,bC])}}});return this},serialize:function(){return b.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?b.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||q.test(this.nodeName)||aZ.test(this.type))}).map(function(e,bv){var bw=b(this).val();return bw==null?null:b.isArray(bw)?b.map(bw,function(by,bx){return{name:bv.name,value:by.replace(bs,"\r\n")}}):{name:bv.name,value:bw.replace(bs,"\r\n")}}).get()}});b.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(e,bv){b.fn[bv]=function(bw){return this.on(bv,bw)}});b.each(["get","post"],function(e,bv){b[bv]=function(bw,by,bz,bx){if(b.isFunction(by)){bx=bx||bz;bz=by;by=L}return b.ajax({type:bv,url:bw,data:by,success:bz,dataType:bx})}});b.extend({getScript:function(e,bv){return b.get(e,L,bv,"script")},getJSON:function(e,bv,bw){return b.get(e,bv,bw,"json")},ajaxSetup:function(bv,e){if(e){am(bv,b.ajaxSettings)}else{e=bv;bv=b.ajaxSettings}am(bv,e);return bv},ajaxSettings:{url:aE,isLocal:aM.test(s[1]),global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":aV},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":bb.String,"text html":true,"text json":b.parseJSON,"text xml":b.parseXML},flatOptions:{context:true,url:true}},ajaxPrefilter:f(aa),ajaxTransport:f(r),ajax:function(bz,bx){if(typeof bz==="object"){bx=bz;bz=L}bx=bx||{};var bD=b.ajaxSetup({},bx),bS=bD.context||bD,bG=bS!==bD&&(bS.nodeType||bS instanceof b)?b(bS):b.event,bR=b.Deferred(),bN=b.Callbacks("once memory"),bB=bD.statusCode||{},bC,bH={},bO={},bQ,by,bL,bE,bI,bA=0,bw,bK,bJ={readyState:0,setRequestHeader:function(bT,bU){if(!bA){var e=bT.toLowerCase();bT=bO[e]=bO[e]||bT;bH[bT]=bU}return this},getAllResponseHeaders:function(){return bA===2?bQ:null},getResponseHeader:function(bT){var e;if(bA===2){if(!by){by={};while((e=aD.exec(bQ))){by[e[1].toLowerCase()]=e[2]}}e=by[bT.toLowerCase()]}return e===L?null:e},overrideMimeType:function(e){if(!bA){bD.mimeType=e}return this},abort:function(e){e=e||"abort";if(bL){bL.abort(e)}bF(0,e);return this}};function bF(bZ,bU,b0,bW){if(bA===2){return}bA=2;if(bE){clearTimeout(bE)}bL=L;bQ=bW||"";bJ.readyState=bZ>0?4:0;var bT,b4,b3,bX=bU,bY=b0?bj(bD,bJ,b0):L,bV,b2;if(bZ>=200&&bZ<300||bZ===304){if(bD.ifModified){if((bV=bJ.getResponseHeader("Last-Modified"))){b.lastModified[bC]=bV}if((b2=bJ.getResponseHeader("Etag"))){b.etag[bC]=b2}}if(bZ===304){bX="notmodified";bT=true}else{try{b4=G(bD,bY);bX="success";bT=true}catch(b1){bX="parsererror";b3=b1}}}else{b3=bX;if(!bX||bZ){bX="error";if(bZ<0){bZ=0}}}bJ.status=bZ;bJ.statusText=""+(bU||bX);if(bT){bR.resolveWith(bS,[b4,bX,bJ])}else{bR.rejectWith(bS,[bJ,bX,b3])}bJ.statusCode(bB);bB=L;if(bw){bG.trigger("ajax"+(bT?"Success":"Error"),[bJ,bD,bT?b4:b3])}bN.fireWith(bS,[bJ,bX]);if(bw){bG.trigger("ajaxComplete",[bJ,bD]);if(!(--b.active)){b.event.trigger("ajaxStop")}}}bR.promise(bJ);bJ.success=bJ.done;bJ.error=bJ.fail;bJ.complete=bN.add;bJ.statusCode=function(bT){if(bT){var e;if(bA<2){for(e in bT){bB[e]=[bB[e],bT[e]]}}else{e=bT[bJ.status];bJ.then(e,e)}}return this};bD.url=((bz||bD.url)+"").replace(bq,"").replace(c,s[1]+"//");bD.dataTypes=b.trim(bD.dataType||"*").toLowerCase().split(h);if(bD.crossDomain==null){bI=K.exec(bD.url.toLowerCase());bD.crossDomain=!!(bI&&(bI[1]!=s[1]||bI[2]!=s[2]||(bI[3]||(bI[1]==="http:"?80:443))!=(s[3]||(s[1]==="http:"?80:443))))}if(bD.data&&bD.processData&&typeof bD.data!=="string"){bD.data=b.param(bD.data,bD.traditional)}aW(aa,bD,bx,bJ);if(bA===2){return false}bw=bD.global;bD.type=bD.type.toUpperCase();bD.hasContent=!aQ.test(bD.type);if(bw&&b.active++===0){b.event.trigger("ajaxStart")}if(!bD.hasContent){if(bD.data){bD.url+=(M.test(bD.url)?"&":"?")+bD.data;delete bD.data}bC=bD.url;if(bD.cache===false){var bv=b.now(),bP=bD.url.replace(br,"$1_="+bv);bD.url=bP+((bP===bD.url)?(M.test(bD.url)?"&":"?")+"_="+bv:"")}}if(bD.data&&bD.hasContent&&bD.contentType!==false||bx.contentType){bJ.setRequestHeader("Content-Type",bD.contentType)}if(bD.ifModified){bC=bC||bD.url;if(b.lastModified[bC]){bJ.setRequestHeader("If-Modified-Since",b.lastModified[bC])}if(b.etag[bC]){bJ.setRequestHeader("If-None-Match",b.etag[bC])}}bJ.setRequestHeader("Accept",bD.dataTypes[0]&&bD.accepts[bD.dataTypes[0]]?bD.accepts[bD.dataTypes[0]]+(bD.dataTypes[0]!=="*"?", "+aV+"; q=0.01":""):bD.accepts["*"]);for(bK in bD.headers){bJ.setRequestHeader(bK,bD.headers[bK])}if(bD.beforeSend&&(bD.beforeSend.call(bS,bJ,bD)===false||bA===2)){bJ.abort();return false}for(bK in {success:1,error:1,complete:1}){bJ[bK](bD[bK])}bL=aW(r,bD,bx,bJ);if(!bL){bF(-1,"No Transport")}else{bJ.readyState=1;if(bw){bG.trigger("ajaxSend",[bJ,bD])}if(bD.async&&bD.timeout>0){bE=setTimeout(function(){bJ.abort("timeout")},bD.timeout)}try{bA=1;bL.send(bH,bF)}catch(bM){if(bA<2){bF(-1,bM)}else{throw bM}}}return bJ},param:function(e,bw){var bv=[],by=function(bz,bA){bA=b.isFunction(bA)?bA():bA;bv[bv.length]=encodeURIComponent(bz)+"="+encodeURIComponent(bA)};if(bw===L){bw=b.ajaxSettings.traditional}if(b.isArray(e)||(e.jquery&&!b.isPlainObject(e))){b.each(e,function(){by(this.name,this.value)})}else{for(var bx in e){v(bx,e[bx],bw,by)}}return bv.join("&").replace(k,"+")}});function v(bw,by,bv,bx){if(b.isArray(by)){b.each(by,function(bA,bz){if(bv||ap.test(bw)){bx(bw,bz)}else{v(bw+"["+(typeof bz==="object"||b.isArray(bz)?bA:"")+"]",bz,bv,bx)}})}else{if(!bv&&by!=null&&typeof by==="object"){for(var e in by){v(bw+"["+e+"]",by[e],bv,bx)}}else{bx(bw,by)}}}b.extend({active:0,lastModified:{},etag:{}});function bj(bD,bC,bz){var bv=bD.contents,bB=bD.dataTypes,bw=bD.responseFields,by,bA,bx,e;for(bA in bw){if(bA in bz){bC[bw[bA]]=bz[bA]}}while(bB[0]==="*"){bB.shift();if(by===L){by=bD.mimeType||bC.getResponseHeader("content-type")}}if(by){for(bA in bv){if(bv[bA]&&bv[bA].test(by)){bB.unshift(bA);break}}}if(bB[0] in bz){bx=bB[0]}else{for(bA in bz){if(!bB[0]||bD.converters[bA+" "+bB[0]]){bx=bA;break}if(!e){e=bA}}bx=bx||e}if(bx){if(bx!==bB[0]){bB.unshift(bx)}return bz[bx]}}function G(bH,bz){if(bH.dataFilter){bz=bH.dataFilter(bz,bH.dataType)}var bD=bH.dataTypes,bG={},bA,bE,bw=bD.length,bB,bC=bD[0],bx,by,bF,bv,e;for(bA=1;bA
=bw.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();bw.animatedProperties[this.prop]=true;for(bA in bw.animatedProperties){if(bw.animatedProperties[bA]!==true){e=false}}if(e){if(bw.overflow!=null&&!b.support.shrinkWrapBlocks){b.each(["","X","Y"],function(bC,bD){bz.style["overflow"+bD]=bw.overflow[bC]})}if(bw.hide){b(bz).hide()}if(bw.hide||bw.show){for(bA in bw.animatedProperties){b.style(bz,bA,bw.orig[bA]);b.removeData(bz,"fxshow"+bA,true);b.removeData(bz,"toggle"+bA,true)}}bv=bw.complete;if(bv){bw.complete=false;bv.call(bz)}}return false}else{if(bw.duration==Infinity){this.now=bx}else{bB=bx-this.startTime;this.state=bB/bw.duration;this.pos=b.easing[bw.animatedProperties[this.prop]](this.state,bB,0,1,bw.duration);this.now=this.start+((this.end-this.start)*this.pos)}this.update()}return true}};b.extend(b.fx,{tick:function(){var bw,bv=b.timers,e=0;for(;e").appendTo(e),bw=bv.css("display");bv.remove();if(bw==="none"||bw===""){if(!a8){a8=av.createElement("iframe");a8.frameBorder=a8.width=a8.height=0}e.appendChild(a8);if(!m||!a8.createElement){m=(a8.contentWindow||a8.contentDocument).document;m.write((av.compatMode==="CSS1Compat"?"":"")+"");m.close()}bv=m.createElement(bx);m.body.appendChild(bv);bw=b.css(bv,"display");e.removeChild(a8)}Q[bx]=bw}return Q[bx]}var V=/^t(?:able|d|h)$/i,ad=/^(?:body|html)$/i;if("getBoundingClientRect" in av.documentElement){b.fn.offset=function(bI){var by=this[0],bB;if(bI){return this.each(function(e){b.offset.setOffset(this,bI,e)})}if(!by||!by.ownerDocument){return null}if(by===by.ownerDocument.body){return b.offset.bodyOffset(by)}try{bB=by.getBoundingClientRect()}catch(bF){}var bH=by.ownerDocument,bw=bH.documentElement;if(!bB||!b.contains(bw,by)){return bB?{top:bB.top,left:bB.left}:{top:0,left:0}}var bC=bH.body,bD=aK(bH),bA=bw.clientTop||bC.clientTop||0,bE=bw.clientLeft||bC.clientLeft||0,bv=bD.pageYOffset||b.support.boxModel&&bw.scrollTop||bC.scrollTop,bz=bD.pageXOffset||b.support.boxModel&&bw.scrollLeft||bC.scrollLeft,bG=bB.top+bv-bA,bx=bB.left+bz-bE;return{top:bG,left:bx}}}else{b.fn.offset=function(bF){var bz=this[0];if(bF){return this.each(function(bG){b.offset.setOffset(this,bF,bG)})}if(!bz||!bz.ownerDocument){return null}if(bz===bz.ownerDocument.body){return b.offset.bodyOffset(bz)}var bC,bw=bz.offsetParent,bv=bz,bE=bz.ownerDocument,bx=bE.documentElement,bA=bE.body,bB=bE.defaultView,e=bB?bB.getComputedStyle(bz,null):bz.currentStyle,bD=bz.offsetTop,by=bz.offsetLeft;while((bz=bz.parentNode)&&bz!==bA&&bz!==bx){if(b.support.fixedPosition&&e.position==="fixed"){break}bC=bB?bB.getComputedStyle(bz,null):bz.currentStyle;bD-=bz.scrollTop;by-=bz.scrollLeft;if(bz===bw){bD+=bz.offsetTop;by+=bz.offsetLeft;if(b.support.doesNotAddBorder&&!(b.support.doesAddBorderForTableAndCells&&V.test(bz.nodeName))){bD+=parseFloat(bC.borderTopWidth)||0;by+=parseFloat(bC.borderLeftWidth)||0}bv=bw;bw=bz.offsetParent}if(b.support.subtractsBorderForOverflowNotVisible&&bC.overflow!=="visible"){bD+=parseFloat(bC.borderTopWidth)||0;by+=parseFloat(bC.borderLeftWidth)||0}e=bC}if(e.position==="relative"||e.position==="static"){bD+=bA.offsetTop;by+=bA.offsetLeft}if(b.support.fixedPosition&&e.position==="fixed"){bD+=Math.max(bx.scrollTop,bA.scrollTop);by+=Math.max(bx.scrollLeft,bA.scrollLeft)}return{top:bD,left:by}}}b.offset={bodyOffset:function(e){var bw=e.offsetTop,bv=e.offsetLeft;if(b.support.doesNotIncludeMarginInBodyOffset){bw+=parseFloat(b.css(e,"marginTop"))||0;bv+=parseFloat(b.css(e,"marginLeft"))||0}return{top:bw,left:bv}},setOffset:function(bx,bG,bA){var bB=b.css(bx,"position");if(bB==="static"){bx.style.position="relative"}var bz=b(bx),bv=bz.offset(),e=b.css(bx,"top"),bE=b.css(bx,"left"),bF=(bB==="absolute"||bB==="fixed")&&b.inArray("auto",[e,bE])>-1,bD={},bC={},bw,by;if(bF){bC=bz.position();bw=bC.top;by=bC.left}else{bw=parseFloat(e)||0;by=parseFloat(bE)||0}if(b.isFunction(bG)){bG=bG.call(bx,bA,bv)}if(bG.top!=null){bD.top=(bG.top-bv.top)+bw}if(bG.left!=null){bD.left=(bG.left-bv.left)+by}if("using" in bG){bG.using.call(bx,bD)}else{bz.css(bD)}}};b.fn.extend({position:function(){if(!this[0]){return null}var bw=this[0],bv=this.offsetParent(),bx=this.offset(),e=ad.test(bv[0].nodeName)?{top:0,left:0}:bv.offset();bx.top-=parseFloat(b.css(bw,"marginTop"))||0;bx.left-=parseFloat(b.css(bw,"marginLeft"))||0;e.top+=parseFloat(b.css(bv[0],"borderTopWidth"))||0;e.left+=parseFloat(b.css(bv[0],"borderLeftWidth"))||0;return{top:bx.top-e.top,left:bx.left-e.left}},offsetParent:function(){return this.map(function(){var e=this.offsetParent||av.body;while(e&&(!ad.test(e.nodeName)&&b.css(e,"position")==="static")){e=e.offsetParent}return e})}});b.each(["Left","Top"],function(bv,e){var bw="scroll"+e;b.fn[bw]=function(bz){var bx,by;if(bz===L){bx=this[0];if(!bx){return null}by=aK(bx);return by?("pageXOffset" in by)?by[bv?"pageYOffset":"pageXOffset"]:b.support.boxModel&&by.document.documentElement[bw]||by.document.body[bw]:bx[bw]}return this.each(function(){by=aK(this);if(by){by.scrollTo(!bv?bz:b(by).scrollLeft(),bv?bz:b(by).scrollTop())}else{this[bw]=bz}})}});function aK(e){return b.isWindow(e)?e:e.nodeType===9?e.defaultView||e.parentWindow:false}b.each(["Height","Width"],function(bv,e){var bw=e.toLowerCase();b.fn["inner"+e]=function(){var bx=this[0];return bx?bx.style?parseFloat(b.css(bx,bw,"padding")):this[bw]():null};b.fn["outer"+e]=function(by){var bx=this[0];return bx?bx.style?parseFloat(b.css(bx,bw,by?"margin":"border")):this[bw]():null};b.fn[bw]=function(bz){var bA=this[0];if(!bA){return bz==null?null:this}if(b.isFunction(bz)){return this.each(function(bE){var bD=b(this);bD[bw](bz.call(this,bE,bD[bw]()))})}if(b.isWindow(bA)){var bB=bA.document.documentElement["client"+e],bx=bA.document.body;return bA.document.compatMode==="CSS1Compat"&&bB||bx&&bx["client"+e]||bB}else{if(bA.nodeType===9){return Math.max(bA.documentElement["client"+e],bA.body["scroll"+e],bA.documentElement["scroll"+e],bA.body["offset"+e],bA.documentElement["offset"+e])}else{if(bz===L){var bC=b.css(bA,bw),by=parseFloat(bC);return b.isNumeric(by)?by:bC}else{return this.css(bw,typeof bz==="string"?bz:bz+"px")}}}}});bb.jQuery=bb.$=b;if(typeof define==="function"&&define.amd&&define.amd.jQuery){define("jquery",[],function(){return b})}})(window);/*!
- * jQuery UI 1.8.18
- *
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
- * Dual licensed under the MIT or GPL Version 2 licenses.
- * http://jquery.org/license
- *
- * http://docs.jquery.com/UI
- */
-(function(a,d){a.ui=a.ui||{};if(a.ui.version){return}a.extend(a.ui,{version:"1.8.18",keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91}});a.fn.extend({propAttr:a.fn.prop||a.fn.attr,_focus:a.fn.focus,focus:function(e,f){return typeof e==="number"?this.each(function(){var g=this;setTimeout(function(){a(g).focus();if(f){f.call(g)}},e)}):this._focus.apply(this,arguments)},scrollParent:function(){var e;if((a.browser.msie&&(/(static|relative)/).test(this.css("position")))||(/absolute/).test(this.css("position"))){e=this.parents().filter(function(){return(/(relative|absolute|fixed)/).test(a.curCSS(this,"position",1))&&(/(auto|scroll)/).test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0)}else{e=this.parents().filter(function(){return(/(auto|scroll)/).test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0)}return(/fixed/).test(this.css("position"))||!e.length?a(document):e},zIndex:function(h){if(h!==d){return this.css("zIndex",h)}if(this.length){var f=a(this[0]),e,g;while(f.length&&f[0]!==document){e=f.css("position");if(e==="absolute"||e==="relative"||e==="fixed"){g=parseInt(f.css("zIndex"),10);if(!isNaN(g)&&g!==0){return g}}f=f.parent()}}return 0},disableSelection:function(){return this.bind((a.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(e){e.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}});a.each(["Width","Height"],function(g,e){var f=e==="Width"?["Left","Right"]:["Top","Bottom"],h=e.toLowerCase(),k={innerWidth:a.fn.innerWidth,innerHeight:a.fn.innerHeight,outerWidth:a.fn.outerWidth,outerHeight:a.fn.outerHeight};function j(m,l,i,n){a.each(f,function(){l-=parseFloat(a.curCSS(m,"padding"+this,true))||0;if(i){l-=parseFloat(a.curCSS(m,"border"+this+"Width",true))||0}if(n){l-=parseFloat(a.curCSS(m,"margin"+this,true))||0}});return l}a.fn["inner"+e]=function(i){if(i===d){return k["inner"+e].call(this)}return this.each(function(){a(this).css(h,j(this,i)+"px")})};a.fn["outer"+e]=function(i,l){if(typeof i!=="number"){return k["outer"+e].call(this,i)}return this.each(function(){a(this).css(h,j(this,i,true,l)+"px")})}});function c(g,e){var j=g.nodeName.toLowerCase();if("area"===j){var i=g.parentNode,h=i.name,f;if(!g.href||!h||i.nodeName.toLowerCase()!=="map"){return false}f=a("img[usemap=#"+h+"]")[0];return !!f&&b(f)}return(/input|select|textarea|button|object/.test(j)?!g.disabled:"a"==j?g.href||e:e)&&b(g)}function b(e){return !a(e).parents().andSelf().filter(function(){return a.curCSS(this,"visibility")==="hidden"||a.expr.filters.hidden(this)}).length}a.extend(a.expr[":"],{data:function(g,f,e){return !!a.data(g,e[3])},focusable:function(e){return c(e,!isNaN(a.attr(e,"tabindex")))},tabbable:function(g){var e=a.attr(g,"tabindex"),f=isNaN(e);return(f||e>=0)&&c(g,!f)}});a(function(){var e=document.body,f=e.appendChild(f=document.createElement("div"));f.offsetHeight;a.extend(f.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0});a.support.minHeight=f.offsetHeight===100;a.support.selectstart="onselectstart" in f;e.removeChild(f).style.display="none"});a.extend(a.ui,{plugin:{add:function(f,g,j){var h=a.ui[f].prototype;for(var e in j){h.plugins[e]=h.plugins[e]||[];h.plugins[e].push([g,j[e]])}},call:function(e,g,f){var j=e.plugins[g];if(!j||!e.element[0].parentNode){return}for(var h=0;h0){return true}h[e]=1;g=(h[e]>0);h[e]=0;return g},isOverAxis:function(f,e,g){return(f>e)&&(f<(e+g))},isOver:function(j,f,i,h,e,g){return a.ui.isOverAxis(j,i,e)&&a.ui.isOverAxis(f,h,g)}})})(jQuery);/*!
- * jQuery UI Widget 1.8.18
- *
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
- * Dual licensed under the MIT or GPL Version 2 licenses.
- * http://jquery.org/license
- *
- * http://docs.jquery.com/UI/Widget
- */
-(function(b,d){if(b.cleanData){var c=b.cleanData;b.cleanData=function(f){for(var g=0,h;(h=f[g])!=null;g++){try{b(h).triggerHandler("remove")}catch(j){}}c(f)}}else{var a=b.fn.remove;b.fn.remove=function(e,f){return this.each(function(){if(!f){if(!e||b.filter(e,[this]).length){b("*",this).add([this]).each(function(){try{b(this).triggerHandler("remove")}catch(g){}})}}return a.call(b(this),e,f)})}}b.widget=function(f,h,e){var g=f.split(".")[0],j;f=f.split(".")[1];j=g+"-"+f;if(!e){e=h;h=b.Widget}b.expr[":"][j]=function(k){return !!b.data(k,f)};b[g]=b[g]||{};b[g][f]=function(k,l){if(arguments.length){this._createWidget(k,l)}};var i=new h();i.options=b.extend(true,{},i.options);b[g][f].prototype=b.extend(true,i,{namespace:g,widgetName:f,widgetEventPrefix:b[g][f].prototype.widgetEventPrefix||f,widgetBaseClass:j},e);b.widget.bridge(f,b[g][f])};b.widget.bridge=function(f,e){b.fn[f]=function(i){var g=typeof i==="string",h=Array.prototype.slice.call(arguments,1),j=this;i=!g&&h.length?b.extend.apply(null,[true,i].concat(h)):i;if(g&&i.charAt(0)==="_"){return j}if(g){this.each(function(){var k=b.data(this,f),l=k&&b.isFunction(k[i])?k[i].apply(k,h):k;if(l!==k&&l!==d){j=l;return false}})}else{this.each(function(){var k=b.data(this,f);if(k){k.option(i||{})._init()}else{b.data(this,f,new e(i,this))}})}return j}};b.Widget=function(e,f){if(arguments.length){this._createWidget(e,f)}};b.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",options:{disabled:false},_createWidget:function(f,g){b.data(g,this.widgetName,this);this.element=b(g);this.options=b.extend(true,{},this.options,this._getCreateOptions(),f);var e=this;this.element.bind("remove."+this.widgetName,function(){e.destroy()});this._create();this._trigger("create");this._init()},_getCreateOptions:function(){return b.metadata&&b.metadata.get(this.element[0])[this.widgetName]},_create:function(){},_init:function(){},destroy:function(){this.element.unbind("."+this.widgetName).removeData(this.widgetName);this.widget().unbind("."+this.widgetName).removeAttr("aria-disabled").removeClass(this.widgetBaseClass+"-disabled ui-state-disabled")},widget:function(){return this.element},option:function(f,g){var e=f;if(arguments.length===0){return b.extend({},this.options)}if(typeof f==="string"){if(g===d){return this.options[f]}e={};e[f]=g}this._setOptions(e);return this},_setOptions:function(f){var e=this;b.each(f,function(g,h){e._setOption(g,h)});return this},_setOption:function(e,f){this.options[e]=f;if(e==="disabled"){this.widget()[f?"addClass":"removeClass"](this.widgetBaseClass+"-disabled ui-state-disabled").attr("aria-disabled",f)}return this},enable:function(){return this._setOption("disabled",false)},disable:function(){return this._setOption("disabled",true)},_trigger:function(e,f,g){var j,i,h=this.options[e];g=g||{};f=b.Event(f);f.type=(e===this.widgetEventPrefix?e:this.widgetEventPrefix+e).toLowerCase();f.target=this.element[0];i=f.originalEvent;if(i){for(j in i){if(!(j in f)){f[j]=i[j]}}}this.element.trigger(f,g);return !(b.isFunction(h)&&h.call(this.element[0],f,g)===false||f.isDefaultPrevented())}}})(jQuery);/*!
- * jQuery UI Mouse 1.8.18
- *
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
- * Dual licensed under the MIT or GPL Version 2 licenses.
- * http://jquery.org/license
- *
- * http://docs.jquery.com/UI/Mouse
- *
- * Depends:
- * jquery.ui.widget.js
- */
-(function(b,c){var a=false;b(document).mouseup(function(d){a=false});b.widget("ui.mouse",{options:{cancel:":input,option",distance:1,delay:0},_mouseInit:function(){var d=this;this.element.bind("mousedown."+this.widgetName,function(e){return d._mouseDown(e)}).bind("click."+this.widgetName,function(e){if(true===b.data(e.target,d.widgetName+".preventClickEvent")){b.removeData(e.target,d.widgetName+".preventClickEvent");e.stopImmediatePropagation();return false}});this.started=false},_mouseDestroy:function(){this.element.unbind("."+this.widgetName)},_mouseDown:function(f){if(a){return}(this._mouseStarted&&this._mouseUp(f));this._mouseDownEvent=f;var e=this,g=(f.which==1),d=(typeof this.options.cancel=="string"&&f.target.nodeName?b(f.target).closest(this.options.cancel).length:false);if(!g||d||!this._mouseCapture(f)){return true}this.mouseDelayMet=!this.options.delay;if(!this.mouseDelayMet){this._mouseDelayTimer=setTimeout(function(){e.mouseDelayMet=true},this.options.delay)}if(this._mouseDistanceMet(f)&&this._mouseDelayMet(f)){this._mouseStarted=(this._mouseStart(f)!==false);if(!this._mouseStarted){f.preventDefault();return true}}if(true===b.data(f.target,this.widgetName+".preventClickEvent")){b.removeData(f.target,this.widgetName+".preventClickEvent")}this._mouseMoveDelegate=function(h){return e._mouseMove(h)};this._mouseUpDelegate=function(h){return e._mouseUp(h)};b(document).bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate);f.preventDefault();a=true;return true},_mouseMove:function(d){if(b.browser.msie&&!(document.documentMode>=9)&&!d.button){return this._mouseUp(d)}if(this._mouseStarted){this._mouseDrag(d);return d.preventDefault()}if(this._mouseDistanceMet(d)&&this._mouseDelayMet(d)){this._mouseStarted=(this._mouseStart(this._mouseDownEvent,d)!==false);(this._mouseStarted?this._mouseDrag(d):this._mouseUp(d))}return !this._mouseStarted},_mouseUp:function(d){b(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate);if(this._mouseStarted){this._mouseStarted=false;if(d.target==this._mouseDownEvent.target){b.data(d.target,this.widgetName+".preventClickEvent",true)}this._mouseStop(d)}return false},_mouseDistanceMet:function(d){return(Math.max(Math.abs(this._mouseDownEvent.pageX-d.pageX),Math.abs(this._mouseDownEvent.pageY-d.pageY))>=this.options.distance)},_mouseDelayMet:function(d){return this.mouseDelayMet},_mouseStart:function(d){},_mouseDrag:function(d){},_mouseStop:function(d){},_mouseCapture:function(d){return true}})})(jQuery);(function(c,d){c.widget("ui.resizable",c.ui.mouse,{widgetEventPrefix:"resize",options:{alsoResize:false,animate:false,animateDuration:"slow",animateEasing:"swing",aspectRatio:false,autoHide:false,containment:false,ghost:false,grid:false,handles:"e,s,se",helper:false,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:1000},_create:function(){var f=this,k=this.options;this.element.addClass("ui-resizable");c.extend(this,{_aspectRatio:!!(k.aspectRatio),aspectRatio:k.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:k.helper||k.ghost||k.animate?k.helper||"ui-resizable-helper":null});if(this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)){this.element.wrap(c('
').css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")}));this.element=this.element.parent().data("resizable",this.element.data("resizable"));this.elementIsWrapper=true;this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")});this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0});this.originalResizeStyle=this.originalElement.css("resize");this.originalElement.css("resize","none");this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"}));this.originalElement.css({margin:this.originalElement.css("margin")});this._proportionallyResize()}this.handles=k.handles||(!c(".ui-resizable-handle",this.element).length?"e,s,se":{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"});if(this.handles.constructor==String){if(this.handles=="all"){this.handles="n,e,s,w,se,sw,ne,nw"}var l=this.handles.split(",");this.handles={};for(var g=0;g ');if(/sw|se|ne|nw/.test(j)){h.css({zIndex:++k.zIndex})}if("se"==j){h.addClass("ui-icon ui-icon-gripsmall-diagonal-se")}this.handles[j]=".ui-resizable-"+j;this.element.append(h)}}this._renderAxis=function(q){q=q||this.element;for(var n in this.handles){if(this.handles[n].constructor==String){this.handles[n]=c(this.handles[n],this.element).show()}if(this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)){var o=c(this.handles[n],this.element),p=0;p=/sw|ne|nw|se|n|s/.test(n)?o.outerHeight():o.outerWidth();var m=["padding",/ne|nw|n/.test(n)?"Top":/se|sw|s/.test(n)?"Bottom":/^e$/.test(n)?"Right":"Left"].join("");q.css(m,p);this._proportionallyResize()}if(!c(this.handles[n]).length){continue}}};this._renderAxis(this.element);this._handles=c(".ui-resizable-handle",this.element).disableSelection();this._handles.mouseover(function(){if(!f.resizing){if(this.className){var i=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)}f.axis=i&&i[1]?i[1]:"se"}});if(k.autoHide){this._handles.hide();c(this.element).addClass("ui-resizable-autohide").hover(function(){if(k.disabled){return}c(this).removeClass("ui-resizable-autohide");f._handles.show()},function(){if(k.disabled){return}if(!f.resizing){c(this).addClass("ui-resizable-autohide");f._handles.hide()}})}this._mouseInit()},destroy:function(){this._mouseDestroy();var e=function(g){c(g).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};if(this.elementIsWrapper){e(this.element);var f=this.element;f.after(this.originalElement.css({position:f.css("position"),width:f.outerWidth(),height:f.outerHeight(),top:f.css("top"),left:f.css("left")})).remove()}this.originalElement.css("resize",this.originalResizeStyle);e(this.originalElement);return this},_mouseCapture:function(f){var g=false;for(var e in this.handles){if(c(this.handles[e])[0]==f.target){g=true}}return !this.options.disabled&&g},_mouseStart:function(g){var j=this.options,f=this.element.position(),e=this.element;this.resizing=true;this.documentScroll={top:c(document).scrollTop(),left:c(document).scrollLeft()};if(e.is(".ui-draggable")||(/absolute/).test(e.css("position"))){e.css({position:"absolute",top:f.top,left:f.left})}this._renderProxy();var k=b(this.helper.css("left")),h=b(this.helper.css("top"));if(j.containment){k+=c(j.containment).scrollLeft()||0;h+=c(j.containment).scrollTop()||0}this.offset=this.helper.offset();this.position={left:k,top:h};this.size=this._helper?{width:e.outerWidth(),height:e.outerHeight()}:{width:e.width(),height:e.height()};this.originalSize=this._helper?{width:e.outerWidth(),height:e.outerHeight()}:{width:e.width(),height:e.height()};this.originalPosition={left:k,top:h};this.sizeDiff={width:e.outerWidth()-e.width(),height:e.outerHeight()-e.height()};this.originalMousePosition={left:g.pageX,top:g.pageY};this.aspectRatio=(typeof j.aspectRatio=="number")?j.aspectRatio:((this.originalSize.width/this.originalSize.height)||1);var i=c(".ui-resizable-"+this.axis).css("cursor");c("body").css("cursor",i=="auto"?this.axis+"-resize":i);e.addClass("ui-resizable-resizing");this._propagate("start",g);return true},_mouseDrag:function(e){var h=this.helper,g=this.options,m={},q=this,j=this.originalMousePosition,n=this.axis;var r=(e.pageX-j.left)||0,p=(e.pageY-j.top)||0;var i=this._change[n];if(!i){return false}var l=i.apply(this,[e,r,p]),k=c.browser.msie&&c.browser.version<7,f=this.sizeDiff;this._updateVirtualBoundaries(e.shiftKey);if(this._aspectRatio||e.shiftKey){l=this._updateRatio(l,e)}l=this._respectSize(l,e);this._propagate("resize",e);h.css({top:this.position.top+"px",left:this.position.left+"px",width:this.size.width+"px",height:this.size.height+"px"});if(!this._helper&&this._proportionallyResizeElements.length){this._proportionallyResize()}this._updateCache(l);this._trigger("resize",e,this.ui());return false},_mouseStop:function(h){this.resizing=false;var i=this.options,m=this;if(this._helper){var g=this._proportionallyResizeElements,e=g.length&&(/textarea/i).test(g[0].nodeName),f=e&&c.ui.hasScroll(g[0],"left")?0:m.sizeDiff.height,k=e?0:m.sizeDiff.width;var n={width:(m.helper.width()-k),height:(m.helper.height()-f)},j=(parseInt(m.element.css("left"),10)+(m.position.left-m.originalPosition.left))||null,l=(parseInt(m.element.css("top"),10)+(m.position.top-m.originalPosition.top))||null;if(!i.animate){this.element.css(c.extend(n,{top:l,left:j}))}m.helper.height(m.size.height);m.helper.width(m.size.width);if(this._helper&&!i.animate){this._proportionallyResize()}}c("body").css("cursor","auto");this.element.removeClass("ui-resizable-resizing");this._propagate("stop",h);if(this._helper){this.helper.remove()}return false},_updateVirtualBoundaries:function(g){var j=this.options,i,h,f,k,e;e={minWidth:a(j.minWidth)?j.minWidth:0,maxWidth:a(j.maxWidth)?j.maxWidth:Infinity,minHeight:a(j.minHeight)?j.minHeight:0,maxHeight:a(j.maxHeight)?j.maxHeight:Infinity};if(this._aspectRatio||g){i=e.minHeight*this.aspectRatio;f=e.minWidth/this.aspectRatio;h=e.maxHeight*this.aspectRatio;k=e.maxWidth/this.aspectRatio;if(i>e.minWidth){e.minWidth=i}if(f>e.minHeight){e.minHeight=f}if(hl.width),s=a(l.height)&&i.minHeight&&(i.minHeight>l.height);if(h){l.width=i.minWidth}if(s){l.height=i.minHeight}if(t){l.width=i.maxWidth}if(m){l.height=i.maxHeight}var f=this.originalPosition.left+this.originalSize.width,p=this.position.top+this.size.height;var k=/sw|nw|w/.test(q),e=/nw|ne|n/.test(q);if(h&&k){l.left=f-i.minWidth}if(t&&k){l.left=f-i.maxWidth}if(s&&e){l.top=p-i.minHeight}if(m&&e){l.top=p-i.maxHeight}var n=!l.width&&!l.height;if(n&&!l.left&&l.top){l.top=null}else{if(n&&!l.top&&l.left){l.left=null}}return l},_proportionallyResize:function(){var k=this.options;if(!this._proportionallyResizeElements.length){return}var g=this.helper||this.element;for(var f=0;f');var e=c.browser.msie&&c.browser.version<7,g=(e?1:0),h=(e?2:-1);this.helper.addClass(this._helper).css({width:this.element.outerWidth()+h,height:this.element.outerHeight()+h,position:"absolute",left:this.elementOffset.left-g+"px",top:this.elementOffset.top-g+"px",zIndex:++i.zIndex});this.helper.appendTo("body").disableSelection()}else{this.helper=this.element}},_change:{e:function(g,f,e){return{width:this.originalSize.width+f}},w:function(h,f,e){var j=this.options,g=this.originalSize,i=this.originalPosition;return{left:i.left+f,width:g.width-f}},n:function(h,f,e){var j=this.options,g=this.originalSize,i=this.originalPosition;return{top:i.top+e,height:g.height-e}},s:function(g,f,e){return{height:this.originalSize.height+e}},se:function(g,f,e){return c.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[g,f,e]))},sw:function(g,f,e){return c.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[g,f,e]))},ne:function(g,f,e){return c.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[g,f,e]))},nw:function(g,f,e){return c.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[g,f,e]))}},_propagate:function(f,e){c.ui.plugin.call(this,f,[e,this.ui()]);(f!="resize"&&this._trigger(f,e,this.ui()))},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}});c.extend(c.ui.resizable,{version:"1.8.18"});c.ui.plugin.add("resizable","alsoResize",{start:function(f,g){var e=c(this).data("resizable"),i=e.options;var h=function(j){c(j).each(function(){var k=c(this);k.data("resizable-alsoresize",{width:parseInt(k.width(),10),height:parseInt(k.height(),10),left:parseInt(k.css("left"),10),top:parseInt(k.css("top"),10)})})};if(typeof(i.alsoResize)=="object"&&!i.alsoResize.parentNode){if(i.alsoResize.length){i.alsoResize=i.alsoResize[0];h(i.alsoResize)}else{c.each(i.alsoResize,function(j){h(j)})}}else{h(i.alsoResize)}},resize:function(g,i){var f=c(this).data("resizable"),j=f.options,h=f.originalSize,l=f.originalPosition;var k={height:(f.size.height-h.height)||0,width:(f.size.width-h.width)||0,top:(f.position.top-l.top)||0,left:(f.position.left-l.left)||0},e=function(m,n){c(m).each(function(){var q=c(this),r=c(this).data("resizable-alsoresize"),p={},o=n&&n.length?n:q.parents(i.originalElement[0]).length?["width","height"]:["width","height","top","left"];c.each(o,function(s,u){var t=(r[u]||0)+(k[u]||0);if(t&&t>=0){p[u]=t||null}});q.css(p)})};if(typeof(j.alsoResize)=="object"&&!j.alsoResize.nodeType){c.each(j.alsoResize,function(m,n){e(m,n)})}else{e(j.alsoResize)}},stop:function(e,f){c(this).removeData("resizable-alsoresize")}});c.ui.plugin.add("resizable","animate",{stop:function(i,n){var p=c(this).data("resizable"),j=p.options;var h=p._proportionallyResizeElements,e=h.length&&(/textarea/i).test(h[0].nodeName),f=e&&c.ui.hasScroll(h[0],"left")?0:p.sizeDiff.height,l=e?0:p.sizeDiff.width;var g={width:(p.size.width-l),height:(p.size.height-f)},k=(parseInt(p.element.css("left"),10)+(p.position.left-p.originalPosition.left))||null,m=(parseInt(p.element.css("top"),10)+(p.position.top-p.originalPosition.top))||null;p.element.animate(c.extend(g,m&&k?{top:m,left:k}:{}),{duration:j.animateDuration,easing:j.animateEasing,step:function(){var o={width:parseInt(p.element.css("width"),10),height:parseInt(p.element.css("height"),10),top:parseInt(p.element.css("top"),10),left:parseInt(p.element.css("left"),10)};if(h&&h.length){c(h[0]).css({width:o.width,height:o.height})}p._updateCache(o);p._propagate("resize",i)}})}});c.ui.plugin.add("resizable","containment",{start:function(f,r){var t=c(this).data("resizable"),j=t.options,l=t.element;var g=j.containment,k=(g instanceof c)?g.get(0):(/parent/.test(g))?l.parent().get(0):g;if(!k){return}t.containerElement=c(k);if(/document/.test(g)||g==document){t.containerOffset={left:0,top:0};t.containerPosition={left:0,top:0};t.parentData={element:c(document),left:0,top:0,width:c(document).width(),height:c(document).height()||document.body.parentNode.scrollHeight}}else{var n=c(k),i=[];c(["Top","Right","Left","Bottom"]).each(function(p,o){i[p]=b(n.css("padding"+o))});t.containerOffset=n.offset();t.containerPosition=n.position();t.containerSize={height:(n.innerHeight()-i[3]),width:(n.innerWidth()-i[1])};var q=t.containerOffset,e=t.containerSize.height,m=t.containerSize.width,h=(c.ui.hasScroll(k,"left")?k.scrollWidth:m),s=(c.ui.hasScroll(k)?k.scrollHeight:e);t.parentData={element:k,left:q.left,top:q.top,width:h,height:s}}},resize:function(g,q){var t=c(this).data("resizable"),i=t.options,f=t.containerSize,p=t.containerOffset,m=t.size,n=t.position,r=t._aspectRatio||g.shiftKey,e={top:0,left:0},h=t.containerElement;if(h[0]!=document&&(/static/).test(h.css("position"))){e=p}if(n.left<(t._helper?p.left:0)){t.size.width=t.size.width+(t._helper?(t.position.left-p.left):(t.position.left-e.left));if(r){t.size.height=t.size.width/i.aspectRatio}t.position.left=i.helper?p.left:0}if(n.top<(t._helper?p.top:0)){t.size.height=t.size.height+(t._helper?(t.position.top-p.top):t.position.top);if(r){t.size.width=t.size.height*i.aspectRatio}t.position.top=t._helper?p.top:0}t.offset.left=t.parentData.left+t.position.left;t.offset.top=t.parentData.top+t.position.top;var l=Math.abs((t._helper?t.offset.left-e.left:(t.offset.left-e.left))+t.sizeDiff.width),s=Math.abs((t._helper?t.offset.top-e.top:(t.offset.top-p.top))+t.sizeDiff.height);var k=t.containerElement.get(0)==t.element.parent().get(0),j=/relative|absolute/.test(t.containerElement.css("position"));if(k&&j){l-=t.parentData.left}if(l+t.size.width>=t.parentData.width){t.size.width=t.parentData.width-l;if(r){t.size.height=t.size.width/t.aspectRatio}}if(s+t.size.height>=t.parentData.height){t.size.height=t.parentData.height-s;if(r){t.size.width=t.size.height*t.aspectRatio}}},stop:function(f,n){var q=c(this).data("resizable"),g=q.options,l=q.position,m=q.containerOffset,e=q.containerPosition,i=q.containerElement;var j=c(q.helper),r=j.offset(),p=j.outerWidth()-q.sizeDiff.width,k=j.outerHeight()-q.sizeDiff.height;if(q._helper&&!g.animate&&(/relative/).test(i.css("position"))){c(this).css({left:r.left-e.left-m.left,width:p,height:k})}if(q._helper&&!g.animate&&(/static/).test(i.css("position"))){c(this).css({left:r.left-e.left-m.left,width:p,height:k})}}});c.ui.plugin.add("resizable","ghost",{start:function(g,h){var e=c(this).data("resizable"),i=e.options,f=e.size;e.ghost=e.originalElement.clone();e.ghost.css({opacity:0.25,display:"block",position:"relative",height:f.height,width:f.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass(typeof i.ghost=="string"?i.ghost:"");e.ghost.appendTo(e.helper)},resize:function(f,g){var e=c(this).data("resizable"),h=e.options;if(e.ghost){e.ghost.css({position:"relative",height:e.size.height,width:e.size.width})}},stop:function(f,g){var e=c(this).data("resizable"),h=e.options;if(e.ghost&&e.helper){e.helper.get(0).removeChild(e.ghost.get(0))}}});c.ui.plugin.add("resizable","grid",{resize:function(e,m){var p=c(this).data("resizable"),h=p.options,k=p.size,i=p.originalSize,j=p.originalPosition,n=p.axis,l=h._aspectRatio||e.shiftKey;h.grid=typeof h.grid=="number"?[h.grid,h.grid]:h.grid;var g=Math.round((k.width-i.width)/(h.grid[0]||1))*(h.grid[0]||1),f=Math.round((k.height-i.height)/(h.grid[1]||1))*(h.grid[1]||1);if(/^(se|s|e)$/.test(n)){p.size.width=i.width+g;p.size.height=i.height+f}else{if(/^(ne)$/.test(n)){p.size.width=i.width+g;p.size.height=i.height+f;p.position.top=j.top-f}else{if(/^(sw)$/.test(n)){p.size.width=i.width+g;p.size.height=i.height+f;p.position.left=j.left-g}else{p.size.width=i.width+g;p.size.height=i.height+f;p.position.top=j.top-f;p.position.left=j.left-g}}}}});var b=function(e){return parseInt(e,10)||0};var a=function(e){return !isNaN(parseInt(e,10))}})(jQuery);/*!
- * jQuery hashchange event - v1.3 - 7/21/2010
- * http://benalman.com/projects/jquery-hashchange-plugin/
- *
- * Copyright (c) 2010 "Cowboy" Ben Alman
- * Dual licensed under the MIT and GPL licenses.
- * http://benalman.com/about/license/
- */
-(function($,e,b){var c="hashchange",h=document,f,g=$.event.special,i=h.documentMode,d="on"+c in e&&(i===b||i>7);function a(j){j=j||location.href;return"#"+j.replace(/^[^#]*#?(.*)$/,"$1")}$.fn[c]=function(j){return j?this.bind(c,j):this.trigger(c)};$.fn[c].delay=50;g[c]=$.extend(g[c],{setup:function(){if(d){return false}$(f.start)},teardown:function(){if(d){return false}$(f.stop)}});f=(function(){var j={},p,m=a(),k=function(q){return q},l=k,o=k;j.start=function(){p||n()};j.stop=function(){p&&clearTimeout(p);p=b};function n(){var r=a(),q=o(m);if(r!==m){l(m=r,q);$(e).trigger(c)}else{if(q!==m){location.href=location.href.replace(/#.*/,"")+q}}p=setTimeout(n,$.fn[c].delay)}$.browser.msie&&!d&&(function(){var q,r;j.start=function(){if(!q){r=$.fn[c].src;r=r&&r+a();q=$('').hide().one("load",function(){r||l(a());n()}).attr("src",r||"javascript:0").insertAfter("body")[0].contentWindow;h.onpropertychange=function(){try{if(event.propertyName==="title"){q.document.title=h.title}}catch(s){}}}};j.stop=k;o=function(){return a(q.location.href)};l=function(v,s){var u=q.document,t=$.fn[c].domain;if(v!==s){u.title=h.title;u.open();t&&u.write('
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Microsoft Azure IoT Device SDK for C
- 1.0.0-preview.1.0.0
-
- The Microsoft Azure IoT device libraries for C contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
A minimalistic platform agnostic lock abstraction for thread synchronization.
-More...
-
#include "macro_utils.h"
-
-
Go to the source code of this file.
-
-
-LOCK_HANDLE Lock_Init (void)
- This API creates and returns a valid lock handle. More...
-
-LOCK_RESULT Lock (LOCK_HANDLE handle)
- Acquires a lock on the given lock handle. Uses platform specific mutex primitives in its implementation. More...
-
-LOCK_RESULT Unlock (LOCK_HANDLE handle)
- Releases the lock on the given lock handle. Uses platform specific mutex primitives in its implementation. More...
-
-LOCK_RESULT Lock_Deinit (LOCK_HANDLE handle)
- The lock instance is destroyed. More...
-
-
-
-
A minimalistic platform agnostic lock abstraction for thread synchronization.
-
The Lock component is implemented in order to achieve thread synchronization, as we may have a requirement to consume locks across different platforms. This component exposes some generic APIs so that it can be extended for platform specific implementations.
-
-
-
-
-
-
Acquires a lock on the given lock handle. Uses platform specific mutex primitives in its implementation.
-
Parameters
-
- handle A valid handle to the lock.
-
-
-
-
Returns Returns LOCK_OK
when a lock has been acquired and LOCK_ERROR
when an error occurs.
-
-
-
-
-
-
-
-
- LOCK_RESULT Lock_Deinit
- (
- LOCK_HANDLE
- handle )
-
-
-
-
-
-
The lock instance is destroyed.
-
Parameters
-
- handle A valid handle to the lock.
-
-
-
-
Returns Returns LOCK_OK
when the lock object has been destroyed and LOCK_ERROR
when an error occurs.
-
-
-
-
-
-
-
-
- LOCK_HANDLE Lock_Init
- (
- void
- )
-
-
-
-
-
-
This API creates and returns a valid lock handle.
-
Returns A valid LOCK_HANDLE
when successful or NULL
otherwise.
-
-
-
-
-
-
-
-
- LOCK_RESULT Unlock
- (
- LOCK_HANDLE
- handle )
-
-
-
-
-
-
Releases the lock on the given lock handle. Uses platform specific mutex primitives in its implementation.
-
Parameters
-
- handle A valid handle to the lock.
-
-
-
-
Returns Returns LOCK_OK
when the lock has been released and LOCK_ERROR
when an error occurs.
-
-
-
-
-
-
-
-
diff --git a/c/doc/api_reference/lock_8h_source.html b/c/doc/api_reference/lock_8h_source.html
deleted file mode 100644
index 7088032a..00000000
--- a/c/doc/api_reference/lock_8h_source.html
+++ /dev/null
@@ -1,140 +0,0 @@
-
-
-
-
-
-
-Microsoft Azure IoT Device SDK for C: c/common/inc/lock.h Source File
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Microsoft Azure IoT Device SDK for C
- 1.0.0-preview.1.0.0
-
- The Microsoft Azure IoT device libraries for C contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the documentation of this file.
-
-
-
-
-
-
17 #include "macro_utils.h"
-
-
-
-
-
-
23 typedef void * LOCK_HANDLE;
-
-
25 #define LOCK_RESULT_VALUES \
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
LOCK_HANDLE Lock_Init(void)
This API creates and returns a valid lock handle.
-
enum LOCK_RESULT_TAG LOCK_RESULT
Enumeration specifying the lock status.
-
LOCK_RESULT Lock(LOCK_HANDLE handle)
Acquires a lock on the given lock handle. Uses platform specific mutex primitives in its implementati...
-
LOCK_RESULT Unlock(LOCK_HANDLE handle)
Releases the lock on the given lock handle. Uses platform specific mutex primitives in its implementa...
-
LOCK_RESULT Lock_Deinit(LOCK_HANDLE handle)
The lock instance is destroyed.
-
-
-
-
-
diff --git a/c/doc/api_reference/nav_f.png b/c/doc/api_reference/nav_f.png
deleted file mode 100644
index 5ceae878cc8eb5b28d21195e7980e041cd58c003..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 136
zcmeAS@N?(olHy`uVBq!ia0vp^j6iI`!2~2XGqLUlQvRMUjv*C{Z|`p8Wl`jDxyY#H
zb|_(kba~k)mp569S3gj#U&i6$Qv5wFZ6#C2bD3M!>Sm!!w}vInE}qnJL85u@_c+Es
kOQ!@e+T3}&xBjobeYv5uSL0MUXQ0sxp00i_>zopr0ILoz;s5{u
diff --git a/c/doc/api_reference/nav_g.png b/c/doc/api_reference/nav_g.png
deleted file mode 100644
index 2093a237a94f6c83e19ec6e5fd42f7ddabdafa81..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 95
zcmeAS@N?(olHy`uVBq!ia0vp^j6lrB!3HFm1ilyoDK$?Q$B+ufw|5PB85lU25BhtE
tr?otc=hd~V+ws&_A@j8Fiv!K1|%O$WD@{VR-P`7Ar*{o?>cfFFyLT0aB==G
zqxrWkIO(aLv^?JED*lDDVD^i5?0%b8F_qn`J;zXA{BLU5(Z{V<`
-
-
-
-
-
-Microsoft Azure IoT Device SDK for C: c/serializer/inc/schemalib.h File Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Microsoft Azure IoT Device SDK for C
- 1.0.0-preview.1.0.0
-
- The Microsoft Azure IoT device libraries for C contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
The IoT Hub Serializer APIs allows developers to define models for their devices.
-More...
-
#include "macro_utils.h"
-#include "strings.h"
-#include "iotdevice.h"
-
-
Go to the source code of this file.
-
-
-
The IoT Hub Serializer APIs allows developers to define models for their devices.
-
-
-
-
-
-
- void serializer_deinit
- (
- void
- )
-
-
-
-
-
-
Shuts down the IOT library.
-
The library will track all created devices and upon a call to serializer_deinit it will de-initialize all devices.
-
-
-
-
-
-
-
-
- SERIALIZER_RESULT serializer_init
- (
- const char *
- overrideSchemaNamespace )
-
-
-
-
-
-
Initializes the library.
-
Parameters
-
- overrideSchemaNamespace An override schema namespace to use for all models. Optional, can be NULL
.
-
-
-
-
If schemaNamespace
is not NULL
, its value shall be used instead of the namespace defined for each model by using the DECLARE_XXX
macro.
-
Returns SERIALIZER_OK
on success and any other error on failure.
-
-
-
-
-
-
-
-
Set serializer options.
-
Parameters
-
- which The option to be set.
- value The value to set for the given option.
-
-
-
-
Returns SERIALIZER_OK
on success and any other error on failure.
-
-
-
-
-
-
-
-
diff --git a/c/doc/api_reference/schemalib_8h_source.html b/c/doc/api_reference/schemalib_8h_source.html
deleted file mode 100644
index 79825405..00000000
--- a/c/doc/api_reference/schemalib_8h_source.html
+++ /dev/null
@@ -1,154 +0,0 @@
-
-
-
-
-
-
-Microsoft Azure IoT Device SDK for C: c/serializer/inc/schemalib.h Source File
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Microsoft Azure IoT Device SDK for C
- 1.0.0-preview.1.0.0
-
- The Microsoft Azure IoT device libraries for C contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the documentation of this file.
-
-
-
-
-
-
12 #include "macro_utils.h"
-
-
14 #include "iotdevice.h"
-
-
-
-
-
-
-
21 #define SERIALIZER_RESULT_VALUES \
-
-
23 SERIALIZER_INVALID_ARG, \
-
24 SERIALIZER_CODEFIRST_INIT_FAILED, \
-
25 SERIALIZER_SCHEMA_FAILED, \
-
26 SERIALIZER_HTTP_API_INIT_FAILED, \
-
27 SERIALIZER_ALREADY_INIT, \
-
-
29 SERIALIZER_NOT_INITIALIZED, \
-
30 SERIALIZER_ALREADY_STARTED, \
-
31 SERIALIZER_DEVICE_CREATE_FAILED, \
-
32 SERIALIZER_GET_MODEL_HANDLE_FAILED, \
-
33 SERIALIZER_SERVICEBUS_FAILED
-
-
-
-
40 #define SERIALIZER_CONFIG_VALUES \
-
41 CommandPollingInterval, \
-
42 SerializeDelayedBufferMaxSize
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
SERIALIZER_RESULT serializer_setconfig(SERIALIZER_CONFIG which, void *value)
Set serializer options.
-
enum SERIALIZER_CONFIG_TAG SERIALIZER_CONFIG
Enumeration specifying the option to set on the serializer when calling serializer_setconfig.
-
void serializer_deinit(void)
Shuts down the IOT library.
-
SERIALIZER_RESULT serializer_init(const char *overrideSchemaNamespace)
Initializes the library.
-
enum SERIALIZER_RESULT_TAG SERIALIZER_RESULT
Enumeration specifying the status of calls to various APIs in this module.
-
-
-
-
-
diff --git a/c/doc/api_reference/search/all_0.html b/c/doc/api_reference/search/all_0.html
deleted file mode 100644
index 1d469500..00000000
--- a/c/doc/api_reference/search/all_0.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/all_0.js b/c/doc/api_reference/search/all_0.js
deleted file mode 100644
index d9e50925..00000000
--- a/c/doc/api_reference/search/all_0.js
+++ /dev/null
@@ -1,4 +0,0 @@
-var searchData=
-[
- ['agenttime_2eh',['agenttime.h',['../agenttime_8h.html',1,'']]]
-];
diff --git a/c/doc/api_reference/search/all_1.html b/c/doc/api_reference/search/all_1.html
deleted file mode 100644
index 1fbc509c..00000000
--- a/c/doc/api_reference/search/all_1.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/all_1.js b/c/doc/api_reference/search/all_1.js
deleted file mode 100644
index 01adfa6a..00000000
--- a/c/doc/api_reference/search/all_1.js
+++ /dev/null
@@ -1,8 +0,0 @@
-var searchData=
-[
- ['base64_2eh',['base64.h',['../base64_8h.html',1,'']]],
- ['base64_5fdecoder',['Base64_Decoder',['../base64_8h.html#af53129a184d122641b31220cbd401402',1,'base64.h']]],
- ['base64_5fencode',['Base64_Encode',['../base64_8h.html#a3fc0095d207b2916b9af7e3b9bf25dbb',1,'base64.h']]],
- ['base64_5fencode_5fbytes',['Base64_Encode_Bytes',['../base64_8h.html#a9e30a20c2abb2bf5e826426c953d12ed',1,'base64.h']]],
- ['begin_5fnamespace',['BEGIN_NAMESPACE',['../serializer_8h.html#ad409cf8f57d6766ce80a504e679bb6a6',1,'serializer.h']]]
-];
diff --git a/c/doc/api_reference/search/all_2.html b/c/doc/api_reference/search/all_2.html
deleted file mode 100644
index 93962b72..00000000
--- a/c/doc/api_reference/search/all_2.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/all_2.js b/c/doc/api_reference/search/all_2.js
deleted file mode 100644
index ab29b311..00000000
--- a/c/doc/api_reference/search/all_2.js
+++ /dev/null
@@ -1,7 +0,0 @@
-var searchData=
-[
- ['declare_5fmodel',['DECLARE_MODEL',['../serializer_8h.html#a03ed9d2601530986f0be6c9e675a9489',1,'serializer.h']]],
- ['declare_5fstruct',['DECLARE_STRUCT',['../serializer_8h.html#aeeaee7762d880f428ed4ba88ca7db1e6',1,'serializer.h']]],
- ['deviceid',['deviceId',['../struct_i_o_t_h_u_b___c_l_i_e_n_t___c_o_n_f_i_g___t_a_g.html#af33000861e1bb43af8e339dee3e689a0',1,'IOTHUB_CLIENT_CONFIG_TAG']]],
- ['devicekey',['deviceKey',['../struct_i_o_t_h_u_b___c_l_i_e_n_t___c_o_n_f_i_g___t_a_g.html#ad030712a97d1d08abb7d38841417fc2d',1,'IOTHUB_CLIENT_CONFIG_TAG']]]
-];
diff --git a/c/doc/api_reference/search/all_3.html b/c/doc/api_reference/search/all_3.html
deleted file mode 100644
index 679f93ca..00000000
--- a/c/doc/api_reference/search/all_3.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/all_3.js b/c/doc/api_reference/search/all_3.js
deleted file mode 100644
index d0e41346..00000000
--- a/c/doc/api_reference/search/all_3.js
+++ /dev/null
@@ -1,5 +0,0 @@
-var searchData=
-[
- ['end_5fnamespace',['END_NAMESPACE',['../serializer_8h.html#af169ba5b3435392cf046bd3e07e324d3',1,'serializer.h']]],
- ['execute_5fcommand',['EXECUTE_COMMAND',['../serializer_8h.html#a8b306a60e81bcfdf3729962df530ec16',1,'serializer.h']]]
-];
diff --git a/c/doc/api_reference/search/all_4.html b/c/doc/api_reference/search/all_4.html
deleted file mode 100644
index adc99fbb..00000000
--- a/c/doc/api_reference/search/all_4.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/all_4.js b/c/doc/api_reference/search/all_4.js
deleted file mode 100644
index 1bdc5891..00000000
--- a/c/doc/api_reference/search/all_4.js
+++ /dev/null
@@ -1,8 +0,0 @@
-var searchData=
-[
- ['get_5fctime',['get_ctime',['../agenttime_8h.html#a0d6a35518723789d23906b028da65636',1,'agenttime.h']]],
- ['get_5fdifftime',['get_difftime',['../agenttime_8h.html#a321a069486f837a3c3d048d7a5f8d8be',1,'agenttime.h']]],
- ['get_5fgmtime',['get_gmtime',['../agenttime_8h.html#a8cbed35d6d2183a257e91b5bc4122669',1,'agenttime.h']]],
- ['get_5fmodel_5fhandle',['GET_MODEL_HANDLE',['../serializer_8h.html#a887590f4b40f78bf359c8e56f03c56fe',1,'serializer.h']]],
- ['get_5ftime',['get_time',['../agenttime_8h.html#acc6a1b36113a04d34377d9b7901202dd',1,'agenttime.h']]]
-];
diff --git a/c/doc/api_reference/search/all_5.html b/c/doc/api_reference/search/all_5.html
deleted file mode 100644
index a9fcd170..00000000
--- a/c/doc/api_reference/search/all_5.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/all_5.js b/c/doc/api_reference/search/all_5.js
deleted file mode 100644
index ad02ea0e..00000000
--- a/c/doc/api_reference/search/all_5.js
+++ /dev/null
@@ -1,33 +0,0 @@
-var searchData=
-[
- ['http_5fheaders_5fresult',['HTTP_HEADERS_RESULT',['../httpheaders_8h.html#a0e2b8a3247e013bfcd5a2c5c09ffeb46',1,'httpheaders.h']]],
- ['http_5fheaders_5fresult_5ftag',['HTTP_HEADERS_RESULT_TAG',['../httpheaders_8h.html#a8f45dc684b1c576d92316e46a253203c',1,'httpheaders.h']]],
- ['httpapi_2eh',['httpapi.h',['../httpapi_8h.html',1,'']]],
- ['httpapi_5fcloneoption',['HTTPAPI_CloneOption',['../httpapi_8h.html#ad4a4aab991408a4dbf0c018eae727985',1,'httpapi.h']]],
- ['httpapi_5fcloseconnection',['HTTPAPI_CloseConnection',['../httpapi_8h.html#aed5a7f4253357457399d03dad763d904',1,'httpapi.h']]],
- ['httpapi_5fcreateconnection',['HTTPAPI_CreateConnection',['../httpapi_8h.html#a96629fdbe1b52a5357da60bb1248b174',1,'httpapi.h']]],
- ['httpapi_5fdeinit',['HTTPAPI_Deinit',['../httpapi_8h.html#a0746eed2ddbd3cf46ec5f015ceb32305',1,'httpapi.h']]],
- ['httpapi_5fexecuterequest',['HTTPAPI_ExecuteRequest',['../httpapi_8h.html#afa60b8d96e73b2fe592b591208ef66b1',1,'httpapi.h']]],
- ['httpapi_5finit',['HTTPAPI_Init',['../httpapi_8h.html#a0a73dc1b76c522a36b0f201d1a80c3d4',1,'httpapi.h']]],
- ['httpapi_5frequest_5ftype',['HTTPAPI_REQUEST_TYPE',['../httpapi_8h.html#ad3df2a926e7d91868324660f83dcd66d',1,'httpapi.h']]],
- ['httpapi_5frequest_5ftype_5ftag',['HTTPAPI_REQUEST_TYPE_TAG',['../httpapi_8h.html#a81bf3649034ead3dd83e2fd34571e89c',1,'httpapi.h']]],
- ['httpapi_5fresult',['HTTPAPI_RESULT',['../httpapi_8h.html#accb5e25e6c8d9765e5abe53132708480',1,'httpapi.h']]],
- ['httpapi_5fresult_5ftag',['HTTPAPI_RESULT_TAG',['../httpapi_8h.html#a98e397f3dccc10de6bd136785012ca87',1,'httpapi.h']]],
- ['httpapi_5fsetoption',['HTTPAPI_SetOption',['../httpapi_8h.html#a126e89db045f53ecc3438eecea2efc84',1,'httpapi.h']]],
- ['httpapiex_2eh',['httpapiex.h',['../httpapiex_8h.html',1,'']]],
- ['httpapiex_5fcreate',['HTTPAPIEX_Create',['../httpapiex_8h.html#a914c0f1741f3d3ae45c3b19fd6eeaa70',1,'httpapiex.h']]],
- ['httpapiex_5fdestroy',['HTTPAPIEX_Destroy',['../httpapiex_8h.html#a5518724d6f85d8fd4db9aaa45d7e695d',1,'httpapiex.h']]],
- ['httpapiex_5fexecuterequest',['HTTPAPIEX_ExecuteRequest',['../httpapiex_8h.html#a9bb3e8fe9e08c382ad8ceb55f86fcb7e',1,'httpapiex.h']]],
- ['httpapiex_5fresult',['HTTPAPIEX_RESULT',['../httpapiex_8h.html#a5d80096f8913d8f1b021446bb21a4ba8',1,'httpapiex.h']]],
- ['httpapiex_5fresult_5ftag',['HTTPAPIEX_RESULT_TAG',['../httpapiex_8h.html#a605d1cdabe6e2dd794c507a096bb06e8',1,'httpapiex.h']]],
- ['httpapiex_5fsetoption',['HTTPAPIEX_SetOption',['../httpapiex_8h.html#adbfe5c665ef6326ac5e16226eb1f878f',1,'httpapiex.h']]],
- ['httpheaders_2eh',['httpheaders.h',['../httpheaders_8h.html',1,'']]],
- ['httpheaders_5faddheadernamevaluepair',['HTTPHeaders_AddHeaderNameValuePair',['../httpheaders_8h.html#a8dce889a4de32b3b87253a88233c0ee8',1,'httpheaders.h']]],
- ['httpheaders_5falloc',['HTTPHeaders_Alloc',['../httpheaders_8h.html#ae7ad9a388a31de196d2029fb7c917a6c',1,'httpheaders.h']]],
- ['httpheaders_5fclone',['HTTPHeaders_Clone',['../httpheaders_8h.html#afd829706924f49fc83ed5d334789378e',1,'httpheaders.h']]],
- ['httpheaders_5ffindheadervalue',['HTTPHeaders_FindHeaderValue',['../httpheaders_8h.html#afa826a79ce713d5fef6601cc37190076',1,'httpheaders.h']]],
- ['httpheaders_5ffree',['HTTPHeaders_Free',['../httpheaders_8h.html#af0a24331c9a4cb947efe371ca9db0ab2',1,'httpheaders.h']]],
- ['httpheaders_5fgetheader',['HTTPHeaders_GetHeader',['../httpheaders_8h.html#aea6a07dbf89d3cf55f3bc95e9a8b4c44',1,'httpheaders.h']]],
- ['httpheaders_5fgetheadercount',['HTTPHeaders_GetHeaderCount',['../httpheaders_8h.html#a392de03265933e898f7a5e1f1f4065de',1,'httpheaders.h']]],
- ['httpheaders_5freplaceheadernamevaluepair',['HTTPHeaders_ReplaceHeaderNameValuePair',['../httpheaders_8h.html#a579bc2b4b3ae632382e077378f0139f3',1,'httpheaders.h']]]
-];
diff --git a/c/doc/api_reference/search/all_6.html b/c/doc/api_reference/search/all_6.html
deleted file mode 100644
index 821c374d..00000000
--- a/c/doc/api_reference/search/all_6.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/all_6.js b/c/doc/api_reference/search/all_6.js
deleted file mode 100644
index d7c70df2..00000000
--- a/c/doc/api_reference/search/all_6.js
+++ /dev/null
@@ -1,34 +0,0 @@
-var searchData=
-[
- ['iothub_5fclient_2eh',['iothub_client.h',['../iothub__client_8h.html',1,'']]],
- ['iothub_5fclient_5fconfig',['IOTHUB_CLIENT_CONFIG',['../iothub__client__ll_8h.html#ac14a59dcc227623976d044d1805b5e22',1,'iothub_client_ll.h']]],
- ['iothub_5fclient_5fconfig_5ftag',['IOTHUB_CLIENT_CONFIG_TAG',['../struct_i_o_t_h_u_b___c_l_i_e_n_t___c_o_n_f_i_g___t_a_g.html',1,'']]],
- ['iothub_5fclient_5fconfirmation_5fresult',['IOTHUB_CLIENT_CONFIRMATION_RESULT',['../iothub__client__ll_8h.html#a4577382ad30d162f2b9cf461ead5639b',1,'iothub_client_ll.h']]],
- ['iothub_5fclient_5fconfirmation_5fresult_5ftag',['IOTHUB_CLIENT_CONFIRMATION_RESULT_TAG',['../iothub__client__ll_8h.html#af338feaaafa37bd3352967a1fe52c9e7',1,'iothub_client_ll.h']]],
- ['iothub_5fclient_5fll_2eh',['iothub_client_ll.h',['../iothub__client__ll_8h.html',1,'']]],
- ['iothub_5fclient_5fresult',['IOTHUB_CLIENT_RESULT',['../iothub__client__ll_8h.html#acab188935ec8a12092ab518112268bfd',1,'iothub_client_ll.h']]],
- ['iothub_5fclient_5fresult_5ftag',['IOTHUB_CLIENT_RESULT_TAG',['../iothub__client__ll_8h.html#a1dcfcf0cc4f3d27d4fe24642929e0e05',1,'iothub_client_ll.h']]],
- ['iothub_5fclient_5fstatus',['IOTHUB_CLIENT_STATUS',['../iothub__client__ll_8h.html#a06bec2310f92a54329a1f39b0804ee88',1,'iothub_client_ll.h']]],
- ['iothub_5fclient_5fstatus_5ftag',['IOTHUB_CLIENT_STATUS_TAG',['../iothub__client__ll_8h.html#aad29ba44eb4ad88bf10e7d3d43138bf7',1,'iothub_client_ll.h']]],
- ['iothubclient_5fcreate',['IoTHubClient_Create',['../iothub__client_8h.html#a7e4253f4df8cdef79cbe44d33c73547d',1,'iothub_client.h']]],
- ['iothubclient_5fcreatefromconnectionstring',['IoTHubClient_CreateFromConnectionString',['../iothub__client_8h.html#a190e08e1201046fda675517070d63e83',1,'iothub_client.h']]],
- ['iothubclient_5fdestroy',['IoTHubClient_Destroy',['../iothub__client_8h.html#a47fce212d1c5026e02ccd670242e1d83',1,'iothub_client.h']]],
- ['iothubclient_5fgetlastmessagereceivetime',['IoTHubClient_GetLastMessageReceiveTime',['../iothub__client_8h.html#a4484e3db3c295c66d379b44fc53cfd79',1,'iothub_client.h']]],
- ['iothubclient_5fgetsendstatus',['IoTHubClient_GetSendStatus',['../iothub__client_8h.html#a1a7263e65a99da2bb397977031d6e02a',1,'iothub_client.h']]],
- ['iothubclient_5fll_5fcreate',['IoTHubClient_LL_Create',['../iothub__client__ll_8h.html#ad236a781c7fb988216b98be099125447',1,'iothub_client_ll.h']]],
- ['iothubclient_5fll_5fcreatefromconnectionstring',['IoTHubClient_LL_CreateFromConnectionString',['../iothub__client__ll_8h.html#aadecae0b07958725e83cae943250469d',1,'iothub_client_ll.h']]],
- ['iothubclient_5fll_5fdestroy',['IoTHubClient_LL_Destroy',['../iothub__client__ll_8h.html#afc3049dc24e311713ab4735873989a4a',1,'iothub_client_ll.h']]],
- ['iothubclient_5fll_5fdowork',['IoTHubClient_LL_DoWork',['../iothub__client__ll_8h.html#af5e5e122bdc1f1228ae2116fc158b3d6',1,'iothub_client_ll.h']]],
- ['iothubclient_5fll_5fgetlastmessagereceivetime',['IoTHubClient_LL_GetLastMessageReceiveTime',['../iothub__client__ll_8h.html#a21b712300499f014b8c467e195f2503c',1,'iothub_client_ll.h']]],
- ['iothubclient_5fll_5fgetsendstatus',['IoTHubClient_LL_GetSendStatus',['../iothub__client__ll_8h.html#aa7773cdda101288cfd805c34f726eb84',1,'iothub_client_ll.h']]],
- ['iothubclient_5fll_5fsendeventasync',['IoTHubClient_LL_SendEventAsync',['../iothub__client__ll_8h.html#ab47deec96944dd3f1bf0e747ab565277',1,'iothub_client_ll.h']]],
- ['iothubclient_5fll_5fsetmessagecallback',['IoTHubClient_LL_SetMessageCallback',['../iothub__client__ll_8h.html#af8c8a00af8c2fac1ccf2111eb4e2016c',1,'iothub_client_ll.h']]],
- ['iothubclient_5fll_5fsetoption',['IoTHubClient_LL_SetOption',['../iothub__client__ll_8h.html#a70eb58c7ede92f75001104ff4745faa2',1,'iothub_client_ll.h']]],
- ['iothubclient_5fsendeventasync',['IoTHubClient_SendEventAsync',['../iothub__client_8h.html#a3e60e953d03a503c1ae30dd6af7f390f',1,'iothub_client.h']]],
- ['iothubclient_5fsetmessagecallback',['IoTHubClient_SetMessageCallback',['../iothub__client_8h.html#a86d2a2ad2209f6e33bf59ee586abc042',1,'iothub_client.h']]],
- ['iothubclient_5fsetoption',['IoTHubClient_SetOption',['../iothub__client_8h.html#a7a0ff66340551d6748b13e9ca74f3197',1,'iothub_client.h']]],
- ['iothubmessage_5fdisposition_5fresult',['IOTHUBMESSAGE_DISPOSITION_RESULT',['../iothub__client__ll_8h.html#a988b1c83b28d268c642d72dcab8228a4',1,'iothub_client_ll.h']]],
- ['iothubmessage_5fdisposition_5fresult_5ftag',['IOTHUBMESSAGE_DISPOSITION_RESULT_TAG',['../iothub__client__ll_8h.html#ad6c1da5dbe6e1dd6746ab930b377d531',1,'iothub_client_ll.h']]],
- ['iothubname',['iotHubName',['../struct_i_o_t_h_u_b___c_l_i_e_n_t___c_o_n_f_i_g___t_a_g.html#a6b559edc71ff3b0e8d9f9840cb36b27c',1,'IOTHUB_CLIENT_CONFIG_TAG']]],
- ['iothubsuffix',['iotHubSuffix',['../struct_i_o_t_h_u_b___c_l_i_e_n_t___c_o_n_f_i_g___t_a_g.html#ae54e74d8db92b20f796df76f01d5dd68',1,'IOTHUB_CLIENT_CONFIG_TAG']]]
-];
diff --git a/c/doc/api_reference/search/all_7.html b/c/doc/api_reference/search/all_7.html
deleted file mode 100644
index 38c6c000..00000000
--- a/c/doc/api_reference/search/all_7.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/all_7.js b/c/doc/api_reference/search/all_7.js
deleted file mode 100644
index 95cbed58..00000000
--- a/c/doc/api_reference/search/all_7.js
+++ /dev/null
@@ -1,9 +0,0 @@
-var searchData=
-[
- ['lock',['Lock',['../lock_8h.html#a146c21d68c41777d20ef1f7e30518505',1,'lock.h']]],
- ['lock_2eh',['lock.h',['../lock_8h.html',1,'']]],
- ['lock_5fdeinit',['Lock_Deinit',['../lock_8h.html#ac9743d97f19aac4a0bda808e57ef1249',1,'lock.h']]],
- ['lock_5finit',['Lock_Init',['../lock_8h.html#a3683432285e999baa8c543f27633829c',1,'lock.h']]],
- ['lock_5fresult',['LOCK_RESULT',['../lock_8h.html#a306e7b44e0dda20d53ed79ff6650b4b9',1,'lock.h']]],
- ['lock_5fresult_5ftag',['LOCK_RESULT_TAG',['../lock_8h.html#a87aaca66aa3e87418924bd8f8acac6fa',1,'lock.h']]]
-];
diff --git a/c/doc/api_reference/search/all_8.html b/c/doc/api_reference/search/all_8.html
deleted file mode 100644
index 2a22cd52..00000000
--- a/c/doc/api_reference/search/all_8.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/all_8.js b/c/doc/api_reference/search/all_8.js
deleted file mode 100644
index c4f4d193..00000000
--- a/c/doc/api_reference/search/all_8.js
+++ /dev/null
@@ -1,4 +0,0 @@
-var searchData=
-[
- ['microsoft_20azure_20iot_20device_20sdk_20for_20c',['Microsoft Azure IoT Device SDK for C',['../index.html',1,'']]]
-];
diff --git a/c/doc/api_reference/search/all_9.html b/c/doc/api_reference/search/all_9.html
deleted file mode 100644
index bd9b05c3..00000000
--- a/c/doc/api_reference/search/all_9.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/all_9.js b/c/doc/api_reference/search/all_9.js
deleted file mode 100644
index 966da3ae..00000000
--- a/c/doc/api_reference/search/all_9.js
+++ /dev/null
@@ -1,4 +0,0 @@
-var searchData=
-[
- ['protocol',['protocol',['../struct_i_o_t_h_u_b___c_l_i_e_n_t___c_o_n_f_i_g___t_a_g.html#aa7753cf96255b57c65c56d8fedd3d7ca',1,'IOTHUB_CLIENT_CONFIG_TAG']]]
-];
diff --git a/c/doc/api_reference/search/all_a.html b/c/doc/api_reference/search/all_a.html
deleted file mode 100644
index 4a25af1c..00000000
--- a/c/doc/api_reference/search/all_a.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/all_a.js b/c/doc/api_reference/search/all_a.js
deleted file mode 100644
index e9638976..00000000
--- a/c/doc/api_reference/search/all_a.js
+++ /dev/null
@@ -1,13 +0,0 @@
-var searchData=
-[
- ['schemalib_2eh',['schemalib.h',['../schemalib_8h.html',1,'']]],
- ['serialize',['SERIALIZE',['../serializer_8h.html#a18c48c356331a3ff3084ff604da29b91',1,'serializer.h']]],
- ['serializer_2eh',['serializer.h',['../serializer_8h.html',1,'']]],
- ['serializer_5fconfig',['SERIALIZER_CONFIG',['../schemalib_8h.html#af53bee224fe8926ea9e23f0e09ab7910',1,'schemalib.h']]],
- ['serializer_5fconfig_5ftag',['SERIALIZER_CONFIG_TAG',['../schemalib_8h.html#a613fbcf6251d7de13a480b6a4a7e315c',1,'schemalib.h']]],
- ['serializer_5fdeinit',['serializer_deinit',['../schemalib_8h.html#a7a6d4835d9608c78de209ca23b9817c2',1,'schemalib.h']]],
- ['serializer_5finit',['serializer_init',['../schemalib_8h.html#a0efca90998d764b66602d0046333d4bd',1,'schemalib.h']]],
- ['serializer_5fresult',['SERIALIZER_RESULT',['../schemalib_8h.html#ad17b49367136d353b37ac80b2fd0e920',1,'schemalib.h']]],
- ['serializer_5fresult_5ftag',['SERIALIZER_RESULT_TAG',['../schemalib_8h.html#a960fe6038a4c443849a51328561a3cdc',1,'schemalib.h']]],
- ['serializer_5fsetconfig',['serializer_setconfig',['../schemalib_8h.html#aa60c0c7fb365aff62ccdf052dd96a5d7',1,'schemalib.h']]]
-];
diff --git a/c/doc/api_reference/search/all_b.html b/c/doc/api_reference/search/all_b.html
deleted file mode 100644
index a92de485..00000000
--- a/c/doc/api_reference/search/all_b.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/all_b.js b/c/doc/api_reference/search/all_b.js
deleted file mode 100644
index 2bdcaf41..00000000
--- a/c/doc/api_reference/search/all_b.js
+++ /dev/null
@@ -1,10 +0,0 @@
-var searchData=
-[
- ['threadapi_2eh',['threadapi.h',['../threadapi_8h.html',1,'']]],
- ['threadapi_5fcreate',['ThreadAPI_Create',['../threadapi_8h.html#aed50c815f4090261c06968bb90644b50',1,'threadapi.h']]],
- ['threadapi_5fexit',['ThreadAPI_Exit',['../threadapi_8h.html#a304fd6867f922d6321f36569d1769d04',1,'threadapi.h']]],
- ['threadapi_5fjoin',['ThreadAPI_Join',['../threadapi_8h.html#aa80bce4748cbe10f4b726f2ea3168609',1,'threadapi.h']]],
- ['threadapi_5fresult',['THREADAPI_RESULT',['../threadapi_8h.html#aa3ec4389c15a7208ff9dfe12533781cd',1,'threadapi.h']]],
- ['threadapi_5fresult_5ftag',['THREADAPI_RESULT_TAG',['../threadapi_8h.html#a66fa1f9dc4dba46aff5a1a9f7b013d2a',1,'threadapi.h']]],
- ['threadapi_5fsleep',['ThreadAPI_Sleep',['../threadapi_8h.html#a9ce3ec671e3aa3ca28a3e93c514dac56',1,'threadapi.h']]]
-];
diff --git a/c/doc/api_reference/search/all_c.html b/c/doc/api_reference/search/all_c.html
deleted file mode 100644
index 20cdfbcf..00000000
--- a/c/doc/api_reference/search/all_c.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/all_c.js b/c/doc/api_reference/search/all_c.js
deleted file mode 100644
index 68b53690..00000000
--- a/c/doc/api_reference/search/all_c.js
+++ /dev/null
@@ -1,4 +0,0 @@
-var searchData=
-[
- ['unlock',['Unlock',['../lock_8h.html#aef3dd970e9edfc49b414aa6cb0f3ad84',1,'lock.h']]]
-];
diff --git a/c/doc/api_reference/search/all_d.html b/c/doc/api_reference/search/all_d.html
deleted file mode 100644
index 00b28ed8..00000000
--- a/c/doc/api_reference/search/all_d.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/all_d.js b/c/doc/api_reference/search/all_d.js
deleted file mode 100644
index 767e5660..00000000
--- a/c/doc/api_reference/search/all_d.js
+++ /dev/null
@@ -1,5 +0,0 @@
-var searchData=
-[
- ['with_5faction',['WITH_ACTION',['../serializer_8h.html#a2b3c020f5a3943e946cc9a01c958af4c',1,'serializer.h']]],
- ['with_5fdata',['WITH_DATA',['../serializer_8h.html#aebcff311f305eddbad1712b8d7aded85',1,'serializer.h']]]
-];
diff --git a/c/doc/api_reference/search/classes_0.html b/c/doc/api_reference/search/classes_0.html
deleted file mode 100644
index 523591f0..00000000
--- a/c/doc/api_reference/search/classes_0.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/classes_0.js b/c/doc/api_reference/search/classes_0.js
deleted file mode 100644
index 8c1e2964..00000000
--- a/c/doc/api_reference/search/classes_0.js
+++ /dev/null
@@ -1,4 +0,0 @@
-var searchData=
-[
- ['iothub_5fclient_5fconfig_5ftag',['IOTHUB_CLIENT_CONFIG_TAG',['../struct_i_o_t_h_u_b___c_l_i_e_n_t___c_o_n_f_i_g___t_a_g.html',1,'']]]
-];
diff --git a/c/doc/api_reference/search/close.png b/c/doc/api_reference/search/close.png
deleted file mode 100644
index 9342d3dfeea7b7c4ee610987e717804b5a42ceb9..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 273
zcmV+s0q*{ZP)4(RlMby96)VwnbG{
zbe&}^BDn7x>$<{ck4zAK-=nT;=hHG)kmplIF${xqm8db3oX6wT3bvp`TE@m0cg;b)
zBuSL}5?N7O(iZLdAlz@)b)Rd~DnSsSX&P5qC`XwuFwcAYLC+d2>+1(8on;wpt8QIC
X2MT$R4iQDd00000NkvXXu0mjfia~GN
diff --git a/c/doc/api_reference/search/defines_0.html b/c/doc/api_reference/search/defines_0.html
deleted file mode 100644
index c3b36198..00000000
--- a/c/doc/api_reference/search/defines_0.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/defines_0.js b/c/doc/api_reference/search/defines_0.js
deleted file mode 100644
index f3b09ddd..00000000
--- a/c/doc/api_reference/search/defines_0.js
+++ /dev/null
@@ -1,4 +0,0 @@
-var searchData=
-[
- ['begin_5fnamespace',['BEGIN_NAMESPACE',['../serializer_8h.html#ad409cf8f57d6766ce80a504e679bb6a6',1,'serializer.h']]]
-];
diff --git a/c/doc/api_reference/search/defines_1.html b/c/doc/api_reference/search/defines_1.html
deleted file mode 100644
index 09fcf9e5..00000000
--- a/c/doc/api_reference/search/defines_1.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/defines_1.js b/c/doc/api_reference/search/defines_1.js
deleted file mode 100644
index 77c1c632..00000000
--- a/c/doc/api_reference/search/defines_1.js
+++ /dev/null
@@ -1,5 +0,0 @@
-var searchData=
-[
- ['declare_5fmodel',['DECLARE_MODEL',['../serializer_8h.html#a03ed9d2601530986f0be6c9e675a9489',1,'serializer.h']]],
- ['declare_5fstruct',['DECLARE_STRUCT',['../serializer_8h.html#aeeaee7762d880f428ed4ba88ca7db1e6',1,'serializer.h']]]
-];
diff --git a/c/doc/api_reference/search/defines_2.html b/c/doc/api_reference/search/defines_2.html
deleted file mode 100644
index 6d6dc75e..00000000
--- a/c/doc/api_reference/search/defines_2.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/defines_2.js b/c/doc/api_reference/search/defines_2.js
deleted file mode 100644
index d0e41346..00000000
--- a/c/doc/api_reference/search/defines_2.js
+++ /dev/null
@@ -1,5 +0,0 @@
-var searchData=
-[
- ['end_5fnamespace',['END_NAMESPACE',['../serializer_8h.html#af169ba5b3435392cf046bd3e07e324d3',1,'serializer.h']]],
- ['execute_5fcommand',['EXECUTE_COMMAND',['../serializer_8h.html#a8b306a60e81bcfdf3729962df530ec16',1,'serializer.h']]]
-];
diff --git a/c/doc/api_reference/search/defines_3.html b/c/doc/api_reference/search/defines_3.html
deleted file mode 100644
index 5aba72ef..00000000
--- a/c/doc/api_reference/search/defines_3.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/defines_3.js b/c/doc/api_reference/search/defines_3.js
deleted file mode 100644
index c094b645..00000000
--- a/c/doc/api_reference/search/defines_3.js
+++ /dev/null
@@ -1,4 +0,0 @@
-var searchData=
-[
- ['get_5fmodel_5fhandle',['GET_MODEL_HANDLE',['../serializer_8h.html#a887590f4b40f78bf359c8e56f03c56fe',1,'serializer.h']]]
-];
diff --git a/c/doc/api_reference/search/defines_4.html b/c/doc/api_reference/search/defines_4.html
deleted file mode 100644
index 7486f564..00000000
--- a/c/doc/api_reference/search/defines_4.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/defines_4.js b/c/doc/api_reference/search/defines_4.js
deleted file mode 100644
index bb883179..00000000
--- a/c/doc/api_reference/search/defines_4.js
+++ /dev/null
@@ -1,4 +0,0 @@
-var searchData=
-[
- ['serialize',['SERIALIZE',['../serializer_8h.html#a18c48c356331a3ff3084ff604da29b91',1,'serializer.h']]]
-];
diff --git a/c/doc/api_reference/search/defines_5.html b/c/doc/api_reference/search/defines_5.html
deleted file mode 100644
index 3137e0ac..00000000
--- a/c/doc/api_reference/search/defines_5.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/defines_5.js b/c/doc/api_reference/search/defines_5.js
deleted file mode 100644
index 767e5660..00000000
--- a/c/doc/api_reference/search/defines_5.js
+++ /dev/null
@@ -1,5 +0,0 @@
-var searchData=
-[
- ['with_5faction',['WITH_ACTION',['../serializer_8h.html#a2b3c020f5a3943e946cc9a01c958af4c',1,'serializer.h']]],
- ['with_5fdata',['WITH_DATA',['../serializer_8h.html#aebcff311f305eddbad1712b8d7aded85',1,'serializer.h']]]
-];
diff --git a/c/doc/api_reference/search/enums_0.html b/c/doc/api_reference/search/enums_0.html
deleted file mode 100644
index d8d79a39..00000000
--- a/c/doc/api_reference/search/enums_0.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/enums_0.js b/c/doc/api_reference/search/enums_0.js
deleted file mode 100644
index 88c5b2c6..00000000
--- a/c/doc/api_reference/search/enums_0.js
+++ /dev/null
@@ -1,7 +0,0 @@
-var searchData=
-[
- ['http_5fheaders_5fresult_5ftag',['HTTP_HEADERS_RESULT_TAG',['../httpheaders_8h.html#a8f45dc684b1c576d92316e46a253203c',1,'httpheaders.h']]],
- ['httpapi_5frequest_5ftype_5ftag',['HTTPAPI_REQUEST_TYPE_TAG',['../httpapi_8h.html#a81bf3649034ead3dd83e2fd34571e89c',1,'httpapi.h']]],
- ['httpapi_5fresult_5ftag',['HTTPAPI_RESULT_TAG',['../httpapi_8h.html#a98e397f3dccc10de6bd136785012ca87',1,'httpapi.h']]],
- ['httpapiex_5fresult_5ftag',['HTTPAPIEX_RESULT_TAG',['../httpapiex_8h.html#a605d1cdabe6e2dd794c507a096bb06e8',1,'httpapiex.h']]]
-];
diff --git a/c/doc/api_reference/search/enums_1.html b/c/doc/api_reference/search/enums_1.html
deleted file mode 100644
index 9c2ae9a9..00000000
--- a/c/doc/api_reference/search/enums_1.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/enums_1.js b/c/doc/api_reference/search/enums_1.js
deleted file mode 100644
index 17e7fabb..00000000
--- a/c/doc/api_reference/search/enums_1.js
+++ /dev/null
@@ -1,7 +0,0 @@
-var searchData=
-[
- ['iothub_5fclient_5fconfirmation_5fresult_5ftag',['IOTHUB_CLIENT_CONFIRMATION_RESULT_TAG',['../iothub__client__ll_8h.html#af338feaaafa37bd3352967a1fe52c9e7',1,'iothub_client_ll.h']]],
- ['iothub_5fclient_5fresult_5ftag',['IOTHUB_CLIENT_RESULT_TAG',['../iothub__client__ll_8h.html#a1dcfcf0cc4f3d27d4fe24642929e0e05',1,'iothub_client_ll.h']]],
- ['iothub_5fclient_5fstatus_5ftag',['IOTHUB_CLIENT_STATUS_TAG',['../iothub__client__ll_8h.html#aad29ba44eb4ad88bf10e7d3d43138bf7',1,'iothub_client_ll.h']]],
- ['iothubmessage_5fdisposition_5fresult_5ftag',['IOTHUBMESSAGE_DISPOSITION_RESULT_TAG',['../iothub__client__ll_8h.html#ad6c1da5dbe6e1dd6746ab930b377d531',1,'iothub_client_ll.h']]]
-];
diff --git a/c/doc/api_reference/search/enums_2.html b/c/doc/api_reference/search/enums_2.html
deleted file mode 100644
index e547781d..00000000
--- a/c/doc/api_reference/search/enums_2.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/enums_2.js b/c/doc/api_reference/search/enums_2.js
deleted file mode 100644
index 89bb9895..00000000
--- a/c/doc/api_reference/search/enums_2.js
+++ /dev/null
@@ -1,4 +0,0 @@
-var searchData=
-[
- ['lock_5fresult_5ftag',['LOCK_RESULT_TAG',['../lock_8h.html#a87aaca66aa3e87418924bd8f8acac6fa',1,'lock.h']]]
-];
diff --git a/c/doc/api_reference/search/enums_3.html b/c/doc/api_reference/search/enums_3.html
deleted file mode 100644
index 16795d5a..00000000
--- a/c/doc/api_reference/search/enums_3.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/enums_3.js b/c/doc/api_reference/search/enums_3.js
deleted file mode 100644
index 91223ed6..00000000
--- a/c/doc/api_reference/search/enums_3.js
+++ /dev/null
@@ -1,5 +0,0 @@
-var searchData=
-[
- ['serializer_5fconfig_5ftag',['SERIALIZER_CONFIG_TAG',['../schemalib_8h.html#a613fbcf6251d7de13a480b6a4a7e315c',1,'schemalib.h']]],
- ['serializer_5fresult_5ftag',['SERIALIZER_RESULT_TAG',['../schemalib_8h.html#a960fe6038a4c443849a51328561a3cdc',1,'schemalib.h']]]
-];
diff --git a/c/doc/api_reference/search/enums_4.html b/c/doc/api_reference/search/enums_4.html
deleted file mode 100644
index 55ec3ef8..00000000
--- a/c/doc/api_reference/search/enums_4.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/enums_4.js b/c/doc/api_reference/search/enums_4.js
deleted file mode 100644
index a24e7e78..00000000
--- a/c/doc/api_reference/search/enums_4.js
+++ /dev/null
@@ -1,4 +0,0 @@
-var searchData=
-[
- ['threadapi_5fresult_5ftag',['THREADAPI_RESULT_TAG',['../threadapi_8h.html#a66fa1f9dc4dba46aff5a1a9f7b013d2a',1,'threadapi.h']]]
-];
diff --git a/c/doc/api_reference/search/files_0.html b/c/doc/api_reference/search/files_0.html
deleted file mode 100644
index a2ec540b..00000000
--- a/c/doc/api_reference/search/files_0.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/files_0.js b/c/doc/api_reference/search/files_0.js
deleted file mode 100644
index d9e50925..00000000
--- a/c/doc/api_reference/search/files_0.js
+++ /dev/null
@@ -1,4 +0,0 @@
-var searchData=
-[
- ['agenttime_2eh',['agenttime.h',['../agenttime_8h.html',1,'']]]
-];
diff --git a/c/doc/api_reference/search/files_1.html b/c/doc/api_reference/search/files_1.html
deleted file mode 100644
index 9e974daa..00000000
--- a/c/doc/api_reference/search/files_1.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/files_1.js b/c/doc/api_reference/search/files_1.js
deleted file mode 100644
index 1490943d..00000000
--- a/c/doc/api_reference/search/files_1.js
+++ /dev/null
@@ -1,4 +0,0 @@
-var searchData=
-[
- ['base64_2eh',['base64.h',['../base64_8h.html',1,'']]]
-];
diff --git a/c/doc/api_reference/search/files_2.html b/c/doc/api_reference/search/files_2.html
deleted file mode 100644
index 04348f90..00000000
--- a/c/doc/api_reference/search/files_2.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/files_2.js b/c/doc/api_reference/search/files_2.js
deleted file mode 100644
index 1b80e3ff..00000000
--- a/c/doc/api_reference/search/files_2.js
+++ /dev/null
@@ -1,6 +0,0 @@
-var searchData=
-[
- ['httpapi_2eh',['httpapi.h',['../httpapi_8h.html',1,'']]],
- ['httpapiex_2eh',['httpapiex.h',['../httpapiex_8h.html',1,'']]],
- ['httpheaders_2eh',['httpheaders.h',['../httpheaders_8h.html',1,'']]]
-];
diff --git a/c/doc/api_reference/search/files_3.html b/c/doc/api_reference/search/files_3.html
deleted file mode 100644
index 77942003..00000000
--- a/c/doc/api_reference/search/files_3.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/files_3.js b/c/doc/api_reference/search/files_3.js
deleted file mode 100644
index a869252b..00000000
--- a/c/doc/api_reference/search/files_3.js
+++ /dev/null
@@ -1,5 +0,0 @@
-var searchData=
-[
- ['iothub_5fclient_2eh',['iothub_client.h',['../iothub__client_8h.html',1,'']]],
- ['iothub_5fclient_5fll_2eh',['iothub_client_ll.h',['../iothub__client__ll_8h.html',1,'']]]
-];
diff --git a/c/doc/api_reference/search/files_4.html b/c/doc/api_reference/search/files_4.html
deleted file mode 100644
index e6bc2852..00000000
--- a/c/doc/api_reference/search/files_4.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/files_4.js b/c/doc/api_reference/search/files_4.js
deleted file mode 100644
index 019afc3d..00000000
--- a/c/doc/api_reference/search/files_4.js
+++ /dev/null
@@ -1,4 +0,0 @@
-var searchData=
-[
- ['lock_2eh',['lock.h',['../lock_8h.html',1,'']]]
-];
diff --git a/c/doc/api_reference/search/files_5.html b/c/doc/api_reference/search/files_5.html
deleted file mode 100644
index 5ab2ed6a..00000000
--- a/c/doc/api_reference/search/files_5.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/files_5.js b/c/doc/api_reference/search/files_5.js
deleted file mode 100644
index 30bec4fb..00000000
--- a/c/doc/api_reference/search/files_5.js
+++ /dev/null
@@ -1,5 +0,0 @@
-var searchData=
-[
- ['schemalib_2eh',['schemalib.h',['../schemalib_8h.html',1,'']]],
- ['serializer_2eh',['serializer.h',['../serializer_8h.html',1,'']]]
-];
diff --git a/c/doc/api_reference/search/files_6.html b/c/doc/api_reference/search/files_6.html
deleted file mode 100644
index 9453495a..00000000
--- a/c/doc/api_reference/search/files_6.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/files_6.js b/c/doc/api_reference/search/files_6.js
deleted file mode 100644
index d04a0c8a..00000000
--- a/c/doc/api_reference/search/files_6.js
+++ /dev/null
@@ -1,4 +0,0 @@
-var searchData=
-[
- ['threadapi_2eh',['threadapi.h',['../threadapi_8h.html',1,'']]]
-];
diff --git a/c/doc/api_reference/search/functions_0.html b/c/doc/api_reference/search/functions_0.html
deleted file mode 100644
index 246d1672..00000000
--- a/c/doc/api_reference/search/functions_0.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/functions_0.js b/c/doc/api_reference/search/functions_0.js
deleted file mode 100644
index 7bef892f..00000000
--- a/c/doc/api_reference/search/functions_0.js
+++ /dev/null
@@ -1,6 +0,0 @@
-var searchData=
-[
- ['base64_5fdecoder',['Base64_Decoder',['../base64_8h.html#af53129a184d122641b31220cbd401402',1,'base64.h']]],
- ['base64_5fencode',['Base64_Encode',['../base64_8h.html#a3fc0095d207b2916b9af7e3b9bf25dbb',1,'base64.h']]],
- ['base64_5fencode_5fbytes',['Base64_Encode_Bytes',['../base64_8h.html#a9e30a20c2abb2bf5e826426c953d12ed',1,'base64.h']]]
-];
diff --git a/c/doc/api_reference/search/functions_1.html b/c/doc/api_reference/search/functions_1.html
deleted file mode 100644
index 5f14d674..00000000
--- a/c/doc/api_reference/search/functions_1.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/functions_1.js b/c/doc/api_reference/search/functions_1.js
deleted file mode 100644
index c20f87f6..00000000
--- a/c/doc/api_reference/search/functions_1.js
+++ /dev/null
@@ -1,7 +0,0 @@
-var searchData=
-[
- ['get_5fctime',['get_ctime',['../agenttime_8h.html#a0d6a35518723789d23906b028da65636',1,'agenttime.h']]],
- ['get_5fdifftime',['get_difftime',['../agenttime_8h.html#a321a069486f837a3c3d048d7a5f8d8be',1,'agenttime.h']]],
- ['get_5fgmtime',['get_gmtime',['../agenttime_8h.html#a8cbed35d6d2183a257e91b5bc4122669',1,'agenttime.h']]],
- ['get_5ftime',['get_time',['../agenttime_8h.html#acc6a1b36113a04d34377d9b7901202dd',1,'agenttime.h']]]
-];
diff --git a/c/doc/api_reference/search/functions_2.html b/c/doc/api_reference/search/functions_2.html
deleted file mode 100644
index 3995cf8c..00000000
--- a/c/doc/api_reference/search/functions_2.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/functions_2.js b/c/doc/api_reference/search/functions_2.js
deleted file mode 100644
index 1770c0c9..00000000
--- a/c/doc/api_reference/search/functions_2.js
+++ /dev/null
@@ -1,22 +0,0 @@
-var searchData=
-[
- ['httpapi_5fcloneoption',['HTTPAPI_CloneOption',['../httpapi_8h.html#ad4a4aab991408a4dbf0c018eae727985',1,'httpapi.h']]],
- ['httpapi_5fcloseconnection',['HTTPAPI_CloseConnection',['../httpapi_8h.html#aed5a7f4253357457399d03dad763d904',1,'httpapi.h']]],
- ['httpapi_5fcreateconnection',['HTTPAPI_CreateConnection',['../httpapi_8h.html#a96629fdbe1b52a5357da60bb1248b174',1,'httpapi.h']]],
- ['httpapi_5fdeinit',['HTTPAPI_Deinit',['../httpapi_8h.html#a0746eed2ddbd3cf46ec5f015ceb32305',1,'httpapi.h']]],
- ['httpapi_5fexecuterequest',['HTTPAPI_ExecuteRequest',['../httpapi_8h.html#afa60b8d96e73b2fe592b591208ef66b1',1,'httpapi.h']]],
- ['httpapi_5finit',['HTTPAPI_Init',['../httpapi_8h.html#a0a73dc1b76c522a36b0f201d1a80c3d4',1,'httpapi.h']]],
- ['httpapi_5fsetoption',['HTTPAPI_SetOption',['../httpapi_8h.html#a126e89db045f53ecc3438eecea2efc84',1,'httpapi.h']]],
- ['httpapiex_5fcreate',['HTTPAPIEX_Create',['../httpapiex_8h.html#a914c0f1741f3d3ae45c3b19fd6eeaa70',1,'httpapiex.h']]],
- ['httpapiex_5fdestroy',['HTTPAPIEX_Destroy',['../httpapiex_8h.html#a5518724d6f85d8fd4db9aaa45d7e695d',1,'httpapiex.h']]],
- ['httpapiex_5fexecuterequest',['HTTPAPIEX_ExecuteRequest',['../httpapiex_8h.html#a9bb3e8fe9e08c382ad8ceb55f86fcb7e',1,'httpapiex.h']]],
- ['httpapiex_5fsetoption',['HTTPAPIEX_SetOption',['../httpapiex_8h.html#adbfe5c665ef6326ac5e16226eb1f878f',1,'httpapiex.h']]],
- ['httpheaders_5faddheadernamevaluepair',['HTTPHeaders_AddHeaderNameValuePair',['../httpheaders_8h.html#a8dce889a4de32b3b87253a88233c0ee8',1,'httpheaders.h']]],
- ['httpheaders_5falloc',['HTTPHeaders_Alloc',['../httpheaders_8h.html#ae7ad9a388a31de196d2029fb7c917a6c',1,'httpheaders.h']]],
- ['httpheaders_5fclone',['HTTPHeaders_Clone',['../httpheaders_8h.html#afd829706924f49fc83ed5d334789378e',1,'httpheaders.h']]],
- ['httpheaders_5ffindheadervalue',['HTTPHeaders_FindHeaderValue',['../httpheaders_8h.html#afa826a79ce713d5fef6601cc37190076',1,'httpheaders.h']]],
- ['httpheaders_5ffree',['HTTPHeaders_Free',['../httpheaders_8h.html#af0a24331c9a4cb947efe371ca9db0ab2',1,'httpheaders.h']]],
- ['httpheaders_5fgetheader',['HTTPHeaders_GetHeader',['../httpheaders_8h.html#aea6a07dbf89d3cf55f3bc95e9a8b4c44',1,'httpheaders.h']]],
- ['httpheaders_5fgetheadercount',['HTTPHeaders_GetHeaderCount',['../httpheaders_8h.html#a392de03265933e898f7a5e1f1f4065de',1,'httpheaders.h']]],
- ['httpheaders_5freplaceheadernamevaluepair',['HTTPHeaders_ReplaceHeaderNameValuePair',['../httpheaders_8h.html#a579bc2b4b3ae632382e077378f0139f3',1,'httpheaders.h']]]
-];
diff --git a/c/doc/api_reference/search/functions_3.html b/c/doc/api_reference/search/functions_3.html
deleted file mode 100644
index 4e302d69..00000000
--- a/c/doc/api_reference/search/functions_3.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/functions_3.js b/c/doc/api_reference/search/functions_3.js
deleted file mode 100644
index 01c66ea0..00000000
--- a/c/doc/api_reference/search/functions_3.js
+++ /dev/null
@@ -1,20 +0,0 @@
-var searchData=
-[
- ['iothubclient_5fcreate',['IoTHubClient_Create',['../iothub__client_8h.html#a7e4253f4df8cdef79cbe44d33c73547d',1,'iothub_client.h']]],
- ['iothubclient_5fcreatefromconnectionstring',['IoTHubClient_CreateFromConnectionString',['../iothub__client_8h.html#a190e08e1201046fda675517070d63e83',1,'iothub_client.h']]],
- ['iothubclient_5fdestroy',['IoTHubClient_Destroy',['../iothub__client_8h.html#a47fce212d1c5026e02ccd670242e1d83',1,'iothub_client.h']]],
- ['iothubclient_5fgetlastmessagereceivetime',['IoTHubClient_GetLastMessageReceiveTime',['../iothub__client_8h.html#a4484e3db3c295c66d379b44fc53cfd79',1,'iothub_client.h']]],
- ['iothubclient_5fgetsendstatus',['IoTHubClient_GetSendStatus',['../iothub__client_8h.html#a1a7263e65a99da2bb397977031d6e02a',1,'iothub_client.h']]],
- ['iothubclient_5fll_5fcreate',['IoTHubClient_LL_Create',['../iothub__client__ll_8h.html#ad236a781c7fb988216b98be099125447',1,'iothub_client_ll.h']]],
- ['iothubclient_5fll_5fcreatefromconnectionstring',['IoTHubClient_LL_CreateFromConnectionString',['../iothub__client__ll_8h.html#aadecae0b07958725e83cae943250469d',1,'iothub_client_ll.h']]],
- ['iothubclient_5fll_5fdestroy',['IoTHubClient_LL_Destroy',['../iothub__client__ll_8h.html#afc3049dc24e311713ab4735873989a4a',1,'iothub_client_ll.h']]],
- ['iothubclient_5fll_5fdowork',['IoTHubClient_LL_DoWork',['../iothub__client__ll_8h.html#af5e5e122bdc1f1228ae2116fc158b3d6',1,'iothub_client_ll.h']]],
- ['iothubclient_5fll_5fgetlastmessagereceivetime',['IoTHubClient_LL_GetLastMessageReceiveTime',['../iothub__client__ll_8h.html#a21b712300499f014b8c467e195f2503c',1,'iothub_client_ll.h']]],
- ['iothubclient_5fll_5fgetsendstatus',['IoTHubClient_LL_GetSendStatus',['../iothub__client__ll_8h.html#aa7773cdda101288cfd805c34f726eb84',1,'iothub_client_ll.h']]],
- ['iothubclient_5fll_5fsendeventasync',['IoTHubClient_LL_SendEventAsync',['../iothub__client__ll_8h.html#ab47deec96944dd3f1bf0e747ab565277',1,'iothub_client_ll.h']]],
- ['iothubclient_5fll_5fsetmessagecallback',['IoTHubClient_LL_SetMessageCallback',['../iothub__client__ll_8h.html#af8c8a00af8c2fac1ccf2111eb4e2016c',1,'iothub_client_ll.h']]],
- ['iothubclient_5fll_5fsetoption',['IoTHubClient_LL_SetOption',['../iothub__client__ll_8h.html#a70eb58c7ede92f75001104ff4745faa2',1,'iothub_client_ll.h']]],
- ['iothubclient_5fsendeventasync',['IoTHubClient_SendEventAsync',['../iothub__client_8h.html#a3e60e953d03a503c1ae30dd6af7f390f',1,'iothub_client.h']]],
- ['iothubclient_5fsetmessagecallback',['IoTHubClient_SetMessageCallback',['../iothub__client_8h.html#a86d2a2ad2209f6e33bf59ee586abc042',1,'iothub_client.h']]],
- ['iothubclient_5fsetoption',['IoTHubClient_SetOption',['../iothub__client_8h.html#a7a0ff66340551d6748b13e9ca74f3197',1,'iothub_client.h']]]
-];
diff --git a/c/doc/api_reference/search/functions_4.html b/c/doc/api_reference/search/functions_4.html
deleted file mode 100644
index 58ca83a6..00000000
--- a/c/doc/api_reference/search/functions_4.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/functions_4.js b/c/doc/api_reference/search/functions_4.js
deleted file mode 100644
index 6edf64ac..00000000
--- a/c/doc/api_reference/search/functions_4.js
+++ /dev/null
@@ -1,6 +0,0 @@
-var searchData=
-[
- ['lock',['Lock',['../lock_8h.html#a146c21d68c41777d20ef1f7e30518505',1,'lock.h']]],
- ['lock_5fdeinit',['Lock_Deinit',['../lock_8h.html#ac9743d97f19aac4a0bda808e57ef1249',1,'lock.h']]],
- ['lock_5finit',['Lock_Init',['../lock_8h.html#a3683432285e999baa8c543f27633829c',1,'lock.h']]]
-];
diff --git a/c/doc/api_reference/search/functions_5.html b/c/doc/api_reference/search/functions_5.html
deleted file mode 100644
index 5f9f05ae..00000000
--- a/c/doc/api_reference/search/functions_5.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/functions_5.js b/c/doc/api_reference/search/functions_5.js
deleted file mode 100644
index 72eebf90..00000000
--- a/c/doc/api_reference/search/functions_5.js
+++ /dev/null
@@ -1,6 +0,0 @@
-var searchData=
-[
- ['serializer_5fdeinit',['serializer_deinit',['../schemalib_8h.html#a7a6d4835d9608c78de209ca23b9817c2',1,'schemalib.h']]],
- ['serializer_5finit',['serializer_init',['../schemalib_8h.html#a0efca90998d764b66602d0046333d4bd',1,'schemalib.h']]],
- ['serializer_5fsetconfig',['serializer_setconfig',['../schemalib_8h.html#aa60c0c7fb365aff62ccdf052dd96a5d7',1,'schemalib.h']]]
-];
diff --git a/c/doc/api_reference/search/functions_6.html b/c/doc/api_reference/search/functions_6.html
deleted file mode 100644
index c980da25..00000000
--- a/c/doc/api_reference/search/functions_6.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/functions_6.js b/c/doc/api_reference/search/functions_6.js
deleted file mode 100644
index f5684323..00000000
--- a/c/doc/api_reference/search/functions_6.js
+++ /dev/null
@@ -1,7 +0,0 @@
-var searchData=
-[
- ['threadapi_5fcreate',['ThreadAPI_Create',['../threadapi_8h.html#aed50c815f4090261c06968bb90644b50',1,'threadapi.h']]],
- ['threadapi_5fexit',['ThreadAPI_Exit',['../threadapi_8h.html#a304fd6867f922d6321f36569d1769d04',1,'threadapi.h']]],
- ['threadapi_5fjoin',['ThreadAPI_Join',['../threadapi_8h.html#aa80bce4748cbe10f4b726f2ea3168609',1,'threadapi.h']]],
- ['threadapi_5fsleep',['ThreadAPI_Sleep',['../threadapi_8h.html#a9ce3ec671e3aa3ca28a3e93c514dac56',1,'threadapi.h']]]
-];
diff --git a/c/doc/api_reference/search/functions_7.html b/c/doc/api_reference/search/functions_7.html
deleted file mode 100644
index 38573293..00000000
--- a/c/doc/api_reference/search/functions_7.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/functions_7.js b/c/doc/api_reference/search/functions_7.js
deleted file mode 100644
index 68b53690..00000000
--- a/c/doc/api_reference/search/functions_7.js
+++ /dev/null
@@ -1,4 +0,0 @@
-var searchData=
-[
- ['unlock',['Unlock',['../lock_8h.html#aef3dd970e9edfc49b414aa6cb0f3ad84',1,'lock.h']]]
-];
diff --git a/c/doc/api_reference/search/mag_sel.png b/c/doc/api_reference/search/mag_sel.png
deleted file mode 100644
index 81f6040a2092402b4d98f9ffa8855d12a0d4ca17..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 563
zcmV-30?hr1P)zxx&tqG15pu7)IiiXFflOc2k;dXd>%13GZAy?
zRz!q0=|E6a6vV)&ZBS~G9oe0kbqyw1*gvY`{Pop2oKq#FlzgXt@Xh-7fxh>}`Fxg>
z$%N%{$!4=5nM{(;=c!aG1Ofr^Do{u%Ih{^&Fc@H2)+a-?TBXrw5DW&z%Nb6mQ!L9O
zl}b@6mB?f=tX3;#vl)}ggh(Vpyh(IK
z(Mb0D{l{U$FsRjP;!{($+bsaaVi8T#1c0V#qEIOCYa9@UVLV`f__E81L;?WEaRA;Y
zUH;rZ;vb;mk7JX|$=i3O~&If0O@oZfLg8gfIjW=dcBsz;gI=!{-r4#
z4%6v$&~;q^j7Fo67yJ(NJWuX+I~I!tj^nW3?}^9bq|<3^+vapS5sgM^x7!cs(+mMT
z&y%j};&~po+YO)3hoUH4E*E;e9>?R6SS&`X)p`njycAVcg{rEb41T{~Hk(bl-7eSb
zmFxA2uIqo#@R?lKm50ND`~6Nfn|-b1|L6O98vt3Tx@gKz#isxO002ovPDHLkV1kyW
B_l^Jn
diff --git a/c/doc/api_reference/search/nomatches.html b/c/doc/api_reference/search/nomatches.html
deleted file mode 100644
index b1ded27e..00000000
--- a/c/doc/api_reference/search/nomatches.html
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
-
-
-
-
-
diff --git a/c/doc/api_reference/search/pages_0.html b/c/doc/api_reference/search/pages_0.html
deleted file mode 100644
index 75d203dc..00000000
--- a/c/doc/api_reference/search/pages_0.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/pages_0.js b/c/doc/api_reference/search/pages_0.js
deleted file mode 100644
index c4f4d193..00000000
--- a/c/doc/api_reference/search/pages_0.js
+++ /dev/null
@@ -1,4 +0,0 @@
-var searchData=
-[
- ['microsoft_20azure_20iot_20device_20sdk_20for_20c',['Microsoft Azure IoT Device SDK for C',['../index.html',1,'']]]
-];
diff --git a/c/doc/api_reference/search/search.css b/c/doc/api_reference/search/search.css
deleted file mode 100644
index 0ed6a1de..00000000
--- a/c/doc/api_reference/search/search.css
+++ /dev/null
@@ -1,271 +0,0 @@
-/*---------------- Search Box */
-
-#FSearchBox {
- float: left;
-}
-
-#MSearchBox {
- white-space : nowrap;
- position: absolute;
- float: none;
- display: inline;
- margin-top: 8px;
- right: 0px;
- width: 170px;
- z-index: 102;
- background-color: white;
-}
-
-#MSearchBox .left
-{
- display:block;
- position:absolute;
- left:10px;
- width:20px;
- height:19px;
- background:url('search_l.png') no-repeat;
- background-position:right;
-}
-
-#MSearchSelect {
- display:block;
- position:absolute;
- width:20px;
- height:19px;
-}
-
-.left #MSearchSelect {
- left:4px;
-}
-
-.right #MSearchSelect {
- right:5px;
-}
-
-#MSearchField {
- display:block;
- position:absolute;
- height:19px;
- background:url('search_m.png') repeat-x;
- border:none;
- width:111px;
- margin-left:20px;
- padding-left:4px;
- color: #909090;
- outline: none;
- font: 9pt Arial, Verdana, sans-serif;
-}
-
-#FSearchBox #MSearchField {
- margin-left:15px;
-}
-
-#MSearchBox .right {
- display:block;
- position:absolute;
- right:10px;
- top:0px;
- width:20px;
- height:19px;
- background:url('search_r.png') no-repeat;
- background-position:left;
-}
-
-#MSearchClose {
- display: none;
- position: absolute;
- top: 4px;
- background : none;
- border: none;
- margin: 0px 4px 0px 0px;
- padding: 0px 0px;
- outline: none;
-}
-
-.left #MSearchClose {
- left: 6px;
-}
-
-.right #MSearchClose {
- right: 2px;
-}
-
-.MSearchBoxActive #MSearchField {
- color: #000000;
-}
-
-/*---------------- Search filter selection */
-
-#MSearchSelectWindow {
- display: none;
- position: absolute;
- left: 0; top: 0;
- border: 1px solid #AFAFAF;
- background-color: #FAFAFA;
- z-index: 1;
- padding-top: 4px;
- padding-bottom: 4px;
- -moz-border-radius: 4px;
- -webkit-border-top-left-radius: 4px;
- -webkit-border-top-right-radius: 4px;
- -webkit-border-bottom-left-radius: 4px;
- -webkit-border-bottom-right-radius: 4px;
- -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
-}
-
-.SelectItem {
- font: 8pt Arial, Verdana, sans-serif;
- padding-left: 2px;
- padding-right: 12px;
- border: 0px;
-}
-
-span.SelectionMark {
- margin-right: 4px;
- font-family: monospace;
- outline-style: none;
- text-decoration: none;
-}
-
-a.SelectItem {
- display: block;
- outline-style: none;
- color: #000000;
- text-decoration: none;
- padding-left: 6px;
- padding-right: 12px;
-}
-
-a.SelectItem:focus,
-a.SelectItem:active {
- color: #000000;
- outline-style: none;
- text-decoration: none;
-}
-
-a.SelectItem:hover {
- color: #FFFFFF;
- background-color: #646464;
- outline-style: none;
- text-decoration: none;
- cursor: pointer;
- display: block;
-}
-
-/*---------------- Search results window */
-
-iframe#MSearchResults {
- width: 60ex;
- height: 15em;
-}
-
-#MSearchResultsWindow {
- display: none;
- position: absolute;
- left: 0; top: 0;
- border: 1px solid #000;
- background-color: #F2F2F2;
-}
-
-/* ----------------------------------- */
-
-
-#SRIndex {
- clear:both;
- padding-bottom: 15px;
-}
-
-.SREntry {
- font-size: 10pt;
- padding-left: 1ex;
-}
-
-.SRPage .SREntry {
- font-size: 8pt;
- padding: 1px 5px;
-}
-
-body.SRPage {
- margin: 5px 2px;
-}
-
-.SRChildren {
- padding-left: 3ex; padding-bottom: .5em
-}
-
-.SRPage .SRChildren {
- display: none;
-}
-
-.SRSymbol {
- font-weight: bold;
- color: #6C6C6C;
- font-family: Arial, Verdana, sans-serif;
- text-decoration: none;
- outline: none;
-}
-
-a.SRScope {
- display: block;
- color: #6C6C6C;
- font-family: Arial, Verdana, sans-serif;
- text-decoration: none;
- outline: none;
-}
-
-a.SRSymbol:focus, a.SRSymbol:active,
-a.SRScope:focus, a.SRScope:active {
- text-decoration: underline;
-}
-
-span.SRScope {
- padding-left: 4px;
-}
-
-.SRPage .SRStatus {
- padding: 2px 5px;
- font-size: 8pt;
- font-style: italic;
-}
-
-.SRResult {
- display: none;
-}
-
-DIV.searchresults {
- margin-left: 10px;
- margin-right: 10px;
-}
-
-/*---------------- External search page results */
-
-.searchresult {
- background-color: #F4F4F4;
-}
-
-.pages b {
- color: white;
- padding: 5px 5px 3px 5px;
- background-image: url("../tab_a.png");
- background-repeat: repeat-x;
- text-shadow: 0 1px 1px #000000;
-}
-
-.pages {
- line-height: 17px;
- margin-left: 4px;
- text-decoration: none;
-}
-
-.hl {
- font-weight: bold;
-}
-
-#searchresults {
- margin-bottom: 20px;
-}
-
-.searchpages {
- margin-top: 10px;
-}
-
diff --git a/c/doc/api_reference/search/search.js b/c/doc/api_reference/search/search.js
deleted file mode 100644
index dedce3bf..00000000
--- a/c/doc/api_reference/search/search.js
+++ /dev/null
@@ -1,791 +0,0 @@
-function convertToId(search)
-{
- var result = '';
- for (i=0;i do a search
- {
- this.Search();
- }
- }
-
- this.OnSearchSelectKey = function(evt)
- {
- var e = (evt) ? evt : window.event; // for IE
- if (e.keyCode==40 && this.searchIndex0) // Up
- {
- this.searchIndex--;
- this.OnSelectItem(this.searchIndex);
- }
- else if (e.keyCode==13 || e.keyCode==27)
- {
- this.OnSelectItem(this.searchIndex);
- this.CloseSelectionWindow();
- this.DOMSearchField().focus();
- }
- return false;
- }
-
- // --------- Actions
-
- // Closes the results window.
- this.CloseResultsWindow = function()
- {
- this.DOMPopupSearchResultsWindow().style.display = 'none';
- this.DOMSearchClose().style.display = 'none';
- this.Activate(false);
- }
-
- this.CloseSelectionWindow = function()
- {
- this.DOMSearchSelectWindow().style.display = 'none';
- }
-
- // Performs a search.
- this.Search = function()
- {
- this.keyTimeout = 0;
-
- // strip leading whitespace
- var searchValue = this.DOMSearchField().value.replace(/^ +/, "");
-
- var code = searchValue.toLowerCase().charCodeAt(0);
- var idxChar = searchValue.substr(0, 1).toLowerCase();
- if ( 0xD800 <= code && code <= 0xDBFF && searchValue > 1) // surrogate pair
- {
- idxChar = searchValue.substr(0, 2);
- }
-
- var resultsPage;
- var resultsPageWithSearch;
- var hasResultsPage;
-
- var idx = indexSectionsWithContent[this.searchIndex].indexOf(idxChar);
- if (idx!=-1)
- {
- var hexCode=idx.toString(16);
- resultsPage = this.resultsPath + '/' + indexSectionNames[this.searchIndex] + '_' + hexCode + '.html';
- resultsPageWithSearch = resultsPage+'?'+escape(searchValue);
- hasResultsPage = true;
- }
- else // nothing available for this search term
- {
- resultsPage = this.resultsPath + '/nomatches.html';
- resultsPageWithSearch = resultsPage;
- hasResultsPage = false;
- }
-
- window.frames.MSearchResults.location = resultsPageWithSearch;
- var domPopupSearchResultsWindow = this.DOMPopupSearchResultsWindow();
-
- if (domPopupSearchResultsWindow.style.display!='block')
- {
- var domSearchBox = this.DOMSearchBox();
- this.DOMSearchClose().style.display = 'inline';
- if (this.insideFrame)
- {
- var domPopupSearchResults = this.DOMPopupSearchResults();
- domPopupSearchResultsWindow.style.position = 'relative';
- domPopupSearchResultsWindow.style.display = 'block';
- var width = document.body.clientWidth - 8; // the -8 is for IE :-(
- domPopupSearchResultsWindow.style.width = width + 'px';
- domPopupSearchResults.style.width = width + 'px';
- }
- else
- {
- var domPopupSearchResults = this.DOMPopupSearchResults();
- var left = getXPos(domSearchBox) + 150; // domSearchBox.offsetWidth;
- var top = getYPos(domSearchBox) + 20; // domSearchBox.offsetHeight + 1;
- domPopupSearchResultsWindow.style.display = 'block';
- left -= domPopupSearchResults.offsetWidth;
- domPopupSearchResultsWindow.style.top = top + 'px';
- domPopupSearchResultsWindow.style.left = left + 'px';
- }
- }
-
- this.lastSearchValue = searchValue;
- this.lastResultsPage = resultsPage;
- }
-
- // -------- Activation Functions
-
- // Activates or deactivates the search panel, resetting things to
- // their default values if necessary.
- this.Activate = function(isActive)
- {
- if (isActive || // open it
- this.DOMPopupSearchResultsWindow().style.display == 'block'
- )
- {
- this.DOMSearchBox().className = 'MSearchBoxActive';
-
- var searchField = this.DOMSearchField();
-
- if (searchField.value == this.searchLabel) // clear "Search" term upon entry
- {
- searchField.value = '';
- this.searchActive = true;
- }
- }
- else if (!isActive) // directly remove the panel
- {
- this.DOMSearchBox().className = 'MSearchBoxInactive';
- this.DOMSearchField().value = this.searchLabel;
- this.searchActive = false;
- this.lastSearchValue = ''
- this.lastResultsPage = '';
- }
- }
-}
-
-// -----------------------------------------------------------------------
-
-// The class that handles everything on the search results page.
-function SearchResults(name)
-{
- // The number of matches from the last run of .
- this.lastMatchCount = 0;
- this.lastKey = 0;
- this.repeatOn = false;
-
- // Toggles the visibility of the passed element ID.
- this.FindChildElement = function(id)
- {
- var parentElement = document.getElementById(id);
- var element = parentElement.firstChild;
-
- while (element && element!=parentElement)
- {
- if (element.nodeName == 'DIV' && element.className == 'SRChildren')
- {
- return element;
- }
-
- if (element.nodeName == 'DIV' && element.hasChildNodes())
- {
- element = element.firstChild;
- }
- else if (element.nextSibling)
- {
- element = element.nextSibling;
- }
- else
- {
- do
- {
- element = element.parentNode;
- }
- while (element && element!=parentElement && !element.nextSibling);
-
- if (element && element!=parentElement)
- {
- element = element.nextSibling;
- }
- }
- }
- }
-
- this.Toggle = function(id)
- {
- var element = this.FindChildElement(id);
- if (element)
- {
- if (element.style.display == 'block')
- {
- element.style.display = 'none';
- }
- else
- {
- element.style.display = 'block';
- }
- }
- }
-
- // Searches for the passed string. If there is no parameter,
- // it takes it from the URL query.
- //
- // Always returns true, since other documents may try to call it
- // and that may or may not be possible.
- this.Search = function(search)
- {
- if (!search) // get search word from URL
- {
- search = window.location.search;
- search = search.substring(1); // Remove the leading '?'
- search = unescape(search);
- }
-
- search = search.replace(/^ +/, ""); // strip leading spaces
- search = search.replace(/ +$/, ""); // strip trailing spaces
- search = search.toLowerCase();
- search = convertToId(search);
-
- var resultRows = document.getElementsByTagName("div");
- var matches = 0;
-
- var i = 0;
- while (i < resultRows.length)
- {
- var row = resultRows.item(i);
- if (row.className == "SRResult")
- {
- var rowMatchName = row.id.toLowerCase();
- rowMatchName = rowMatchName.replace(/^sr\d*_/, ''); // strip 'sr123_'
-
- if (search.length<=rowMatchName.length &&
- rowMatchName.substr(0, search.length)==search)
- {
- row.style.display = 'block';
- matches++;
- }
- else
- {
- row.style.display = 'none';
- }
- }
- i++;
- }
- document.getElementById("Searching").style.display='none';
- if (matches == 0) // no results
- {
- document.getElementById("NoMatches").style.display='block';
- }
- else // at least one result
- {
- document.getElementById("NoMatches").style.display='none';
- }
- this.lastMatchCount = matches;
- return true;
- }
-
- // return the first item with index index or higher that is visible
- this.NavNext = function(index)
- {
- var focusItem;
- while (1)
- {
- var focusName = 'Item'+index;
- focusItem = document.getElementById(focusName);
- if (focusItem && focusItem.parentNode.parentNode.style.display=='block')
- {
- break;
- }
- else if (!focusItem) // last element
- {
- break;
- }
- focusItem=null;
- index++;
- }
- return focusItem;
- }
-
- this.NavPrev = function(index)
- {
- var focusItem;
- while (1)
- {
- var focusName = 'Item'+index;
- focusItem = document.getElementById(focusName);
- if (focusItem && focusItem.parentNode.parentNode.style.display=='block')
- {
- break;
- }
- else if (!focusItem) // last element
- {
- break;
- }
- focusItem=null;
- index--;
- }
- return focusItem;
- }
-
- this.ProcessKeys = function(e)
- {
- if (e.type == "keydown")
- {
- this.repeatOn = false;
- this.lastKey = e.keyCode;
- }
- else if (e.type == "keypress")
- {
- if (!this.repeatOn)
- {
- if (this.lastKey) this.repeatOn = true;
- return false; // ignore first keypress after keydown
- }
- }
- else if (e.type == "keyup")
- {
- this.lastKey = 0;
- this.repeatOn = false;
- }
- return this.lastKey!=0;
- }
-
- this.Nav = function(evt,itemIndex)
- {
- var e = (evt) ? evt : window.event; // for IE
- if (e.keyCode==13) return true;
- if (!this.ProcessKeys(e)) return false;
-
- if (this.lastKey==38) // Up
- {
- var newIndex = itemIndex-1;
- var focusItem = this.NavPrev(newIndex);
- if (focusItem)
- {
- var child = this.FindChildElement(focusItem.parentNode.parentNode.id);
- if (child && child.style.display == 'block') // children visible
- {
- var n=0;
- var tmpElem;
- while (1) // search for last child
- {
- tmpElem = document.getElementById('Item'+newIndex+'_c'+n);
- if (tmpElem)
- {
- focusItem = tmpElem;
- }
- else // found it!
- {
- break;
- }
- n++;
- }
- }
- }
- if (focusItem)
- {
- focusItem.focus();
- }
- else // return focus to search field
- {
- parent.document.getElementById("MSearchField").focus();
- }
- }
- else if (this.lastKey==40) // Down
- {
- var newIndex = itemIndex+1;
- var focusItem;
- var item = document.getElementById('Item'+itemIndex);
- var elem = this.FindChildElement(item.parentNode.parentNode.id);
- if (elem && elem.style.display == 'block') // children visible
- {
- focusItem = document.getElementById('Item'+itemIndex+'_c0');
- }
- if (!focusItem) focusItem = this.NavNext(newIndex);
- if (focusItem) focusItem.focus();
- }
- else if (this.lastKey==39) // Right
- {
- var item = document.getElementById('Item'+itemIndex);
- var elem = this.FindChildElement(item.parentNode.parentNode.id);
- if (elem) elem.style.display = 'block';
- }
- else if (this.lastKey==37) // Left
- {
- var item = document.getElementById('Item'+itemIndex);
- var elem = this.FindChildElement(item.parentNode.parentNode.id);
- if (elem) elem.style.display = 'none';
- }
- else if (this.lastKey==27) // Escape
- {
- parent.searchBox.CloseResultsWindow();
- parent.document.getElementById("MSearchField").focus();
- }
- else if (this.lastKey==13) // Enter
- {
- return true;
- }
- return false;
- }
-
- this.NavChild = function(evt,itemIndex,childIndex)
- {
- var e = (evt) ? evt : window.event; // for IE
- if (e.keyCode==13) return true;
- if (!this.ProcessKeys(e)) return false;
-
- if (this.lastKey==38) // Up
- {
- if (childIndex>0)
- {
- var newIndex = childIndex-1;
- document.getElementById('Item'+itemIndex+'_c'+newIndex).focus();
- }
- else // already at first child, jump to parent
- {
- document.getElementById('Item'+itemIndex).focus();
- }
- }
- else if (this.lastKey==40) // Down
- {
- var newIndex = childIndex+1;
- var elem = document.getElementById('Item'+itemIndex+'_c'+newIndex);
- if (!elem) // last child, jump to parent next parent
- {
- elem = this.NavNext(itemIndex+1);
- }
- if (elem)
- {
- elem.focus();
- }
- }
- else if (this.lastKey==27) // Escape
- {
- parent.searchBox.CloseResultsWindow();
- parent.document.getElementById("MSearchField").focus();
- }
- else if (this.lastKey==13) // Enter
- {
- return true;
- }
- return false;
- }
-}
-
-function setKeyActions(elem,action)
-{
- elem.setAttribute('onkeydown',action);
- elem.setAttribute('onkeypress',action);
- elem.setAttribute('onkeyup',action);
-}
-
-function setClassAttr(elem,attr)
-{
- elem.setAttribute('class',attr);
- elem.setAttribute('className',attr);
-}
-
-function createResults()
-{
- var results = document.getElementById("SRResults");
- for (var e=0; ek7RCwB~R6VQOP#AvB$vH7i{6H{96zot$7cZT<7246EF5Np6N}+$IbiG6W
zg#87A+NFaX+=_^xM1#gCtshC=E{%9^uQX_%?YwXvo{#q&MnpJ8uh(O?ZRc&~_1%^SsPxG@rfElJg-?U
zm!Cz-IOn(qJP3kDp-^~qt+FGbl=5jNli^Wj_xIBG{Rc0en{!oFvyoNC7{V~T8}b>|
z=jL2WIReZzX(YN(_9fV;BBD$VXQIxNasAL8ATvEu822WQ%mvv4FO#qs`
BFGc_W
diff --git a/c/doc/api_reference/search/search_r.png b/c/doc/api_reference/search/search_r.png
deleted file mode 100644
index 97ee8b439687084201b79c6f776a41f495c6392a..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 612
zcmV-q0-ODbP)PbXFRCwB?)W514K@j&X?z2*SxFI6-@HT2E2K=9X9%Pb
zEK*!TBw&g(DMC;|A)uGlRkOS9vd-?zNs%bR4d$w+ox_iFnE8fvIvv7^5<(>Te12Li
z7C)9srCzmK{ZcNM{YIl9j{DePFgOWiS%xG@5CnnnJa4nvY<^glbz7^|-ZY!dUkAwd
z{gaTC@_>b5h~;ug#R0wRL0>o5!hxm*s0VW?8dr}O#zXTRTnrQm_Z7z1Mrnx>&p
zD4qifUjzLvbVVWi?l?rUzwt^sdb~d!f_LEhsRVIXZtQ=qSxuxqm
zEX#tf>$?M_Y1-LSDT)HqG?`%-%ZpY!#{N!rcNIiL;G7F0`l?)mNGTD9;f9F5Up3Kg
zw}a<-JylhG&;=!>B+fZaCX+?C+kHYrP%c?X2!Zu_olK|GcS4A70HEy;vn)I0>0kLH
z`jc(WIaaHc7!HS@f*^R^Znx8W=_jIl2oWJoQ*h1^$FX!>*PqR1J8k|fw}w_y}TpE>7m8DqDO<3z`OzXt$ccSejbEZCg@0000
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/typedefs_0.js b/c/doc/api_reference/search/typedefs_0.js
deleted file mode 100644
index cf27dcaf..00000000
--- a/c/doc/api_reference/search/typedefs_0.js
+++ /dev/null
@@ -1,7 +0,0 @@
-var searchData=
-[
- ['http_5fheaders_5fresult',['HTTP_HEADERS_RESULT',['../httpheaders_8h.html#a0e2b8a3247e013bfcd5a2c5c09ffeb46',1,'httpheaders.h']]],
- ['httpapi_5frequest_5ftype',['HTTPAPI_REQUEST_TYPE',['../httpapi_8h.html#ad3df2a926e7d91868324660f83dcd66d',1,'httpapi.h']]],
- ['httpapi_5fresult',['HTTPAPI_RESULT',['../httpapi_8h.html#accb5e25e6c8d9765e5abe53132708480',1,'httpapi.h']]],
- ['httpapiex_5fresult',['HTTPAPIEX_RESULT',['../httpapiex_8h.html#a5d80096f8913d8f1b021446bb21a4ba8',1,'httpapiex.h']]]
-];
diff --git a/c/doc/api_reference/search/typedefs_1.html b/c/doc/api_reference/search/typedefs_1.html
deleted file mode 100644
index c44c36f9..00000000
--- a/c/doc/api_reference/search/typedefs_1.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/typedefs_1.js b/c/doc/api_reference/search/typedefs_1.js
deleted file mode 100644
index bf817d34..00000000
--- a/c/doc/api_reference/search/typedefs_1.js
+++ /dev/null
@@ -1,8 +0,0 @@
-var searchData=
-[
- ['iothub_5fclient_5fconfig',['IOTHUB_CLIENT_CONFIG',['../iothub__client__ll_8h.html#ac14a59dcc227623976d044d1805b5e22',1,'iothub_client_ll.h']]],
- ['iothub_5fclient_5fconfirmation_5fresult',['IOTHUB_CLIENT_CONFIRMATION_RESULT',['../iothub__client__ll_8h.html#a4577382ad30d162f2b9cf461ead5639b',1,'iothub_client_ll.h']]],
- ['iothub_5fclient_5fresult',['IOTHUB_CLIENT_RESULT',['../iothub__client__ll_8h.html#acab188935ec8a12092ab518112268bfd',1,'iothub_client_ll.h']]],
- ['iothub_5fclient_5fstatus',['IOTHUB_CLIENT_STATUS',['../iothub__client__ll_8h.html#a06bec2310f92a54329a1f39b0804ee88',1,'iothub_client_ll.h']]],
- ['iothubmessage_5fdisposition_5fresult',['IOTHUBMESSAGE_DISPOSITION_RESULT',['../iothub__client__ll_8h.html#a988b1c83b28d268c642d72dcab8228a4',1,'iothub_client_ll.h']]]
-];
diff --git a/c/doc/api_reference/search/typedefs_2.html b/c/doc/api_reference/search/typedefs_2.html
deleted file mode 100644
index d64bac3c..00000000
--- a/c/doc/api_reference/search/typedefs_2.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/typedefs_2.js b/c/doc/api_reference/search/typedefs_2.js
deleted file mode 100644
index 80915d49..00000000
--- a/c/doc/api_reference/search/typedefs_2.js
+++ /dev/null
@@ -1,4 +0,0 @@
-var searchData=
-[
- ['lock_5fresult',['LOCK_RESULT',['../lock_8h.html#a306e7b44e0dda20d53ed79ff6650b4b9',1,'lock.h']]]
-];
diff --git a/c/doc/api_reference/search/typedefs_3.html b/c/doc/api_reference/search/typedefs_3.html
deleted file mode 100644
index 10b9917f..00000000
--- a/c/doc/api_reference/search/typedefs_3.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/typedefs_3.js b/c/doc/api_reference/search/typedefs_3.js
deleted file mode 100644
index 11dcc0fe..00000000
--- a/c/doc/api_reference/search/typedefs_3.js
+++ /dev/null
@@ -1,5 +0,0 @@
-var searchData=
-[
- ['serializer_5fconfig',['SERIALIZER_CONFIG',['../schemalib_8h.html#af53bee224fe8926ea9e23f0e09ab7910',1,'schemalib.h']]],
- ['serializer_5fresult',['SERIALIZER_RESULT',['../schemalib_8h.html#ad17b49367136d353b37ac80b2fd0e920',1,'schemalib.h']]]
-];
diff --git a/c/doc/api_reference/search/typedefs_4.html b/c/doc/api_reference/search/typedefs_4.html
deleted file mode 100644
index c1ff64d1..00000000
--- a/c/doc/api_reference/search/typedefs_4.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/typedefs_4.js b/c/doc/api_reference/search/typedefs_4.js
deleted file mode 100644
index ff22491a..00000000
--- a/c/doc/api_reference/search/typedefs_4.js
+++ /dev/null
@@ -1,4 +0,0 @@
-var searchData=
-[
- ['threadapi_5fresult',['THREADAPI_RESULT',['../threadapi_8h.html#aa3ec4389c15a7208ff9dfe12533781cd',1,'threadapi.h']]]
-];
diff --git a/c/doc/api_reference/search/variables_0.html b/c/doc/api_reference/search/variables_0.html
deleted file mode 100644
index c98c0467..00000000
--- a/c/doc/api_reference/search/variables_0.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/variables_0.js b/c/doc/api_reference/search/variables_0.js
deleted file mode 100644
index 8f0865b6..00000000
--- a/c/doc/api_reference/search/variables_0.js
+++ /dev/null
@@ -1,5 +0,0 @@
-var searchData=
-[
- ['deviceid',['deviceId',['../struct_i_o_t_h_u_b___c_l_i_e_n_t___c_o_n_f_i_g___t_a_g.html#af33000861e1bb43af8e339dee3e689a0',1,'IOTHUB_CLIENT_CONFIG_TAG']]],
- ['devicekey',['deviceKey',['../struct_i_o_t_h_u_b___c_l_i_e_n_t___c_o_n_f_i_g___t_a_g.html#ad030712a97d1d08abb7d38841417fc2d',1,'IOTHUB_CLIENT_CONFIG_TAG']]]
-];
diff --git a/c/doc/api_reference/search/variables_1.html b/c/doc/api_reference/search/variables_1.html
deleted file mode 100644
index 3eab7eaf..00000000
--- a/c/doc/api_reference/search/variables_1.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/variables_1.js b/c/doc/api_reference/search/variables_1.js
deleted file mode 100644
index 327314f1..00000000
--- a/c/doc/api_reference/search/variables_1.js
+++ /dev/null
@@ -1,5 +0,0 @@
-var searchData=
-[
- ['iothubname',['iotHubName',['../struct_i_o_t_h_u_b___c_l_i_e_n_t___c_o_n_f_i_g___t_a_g.html#a6b559edc71ff3b0e8d9f9840cb36b27c',1,'IOTHUB_CLIENT_CONFIG_TAG']]],
- ['iothubsuffix',['iotHubSuffix',['../struct_i_o_t_h_u_b___c_l_i_e_n_t___c_o_n_f_i_g___t_a_g.html#ae54e74d8db92b20f796df76f01d5dd68',1,'IOTHUB_CLIENT_CONFIG_TAG']]]
-];
diff --git a/c/doc/api_reference/search/variables_2.html b/c/doc/api_reference/search/variables_2.html
deleted file mode 100644
index 282f35b3..00000000
--- a/c/doc/api_reference/search/variables_2.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
Loading...
-
-
-
Searching...
-
No Matches
-
-
-
-
diff --git a/c/doc/api_reference/search/variables_2.js b/c/doc/api_reference/search/variables_2.js
deleted file mode 100644
index 966da3ae..00000000
--- a/c/doc/api_reference/search/variables_2.js
+++ /dev/null
@@ -1,4 +0,0 @@
-var searchData=
-[
- ['protocol',['protocol',['../struct_i_o_t_h_u_b___c_l_i_e_n_t___c_o_n_f_i_g___t_a_g.html#aa7753cf96255b57c65c56d8fedd3d7ca',1,'IOTHUB_CLIENT_CONFIG_TAG']]]
-];
diff --git a/c/doc/api_reference/serializer_8h.html b/c/doc/api_reference/serializer_8h.html
deleted file mode 100644
index 0805ffdd..00000000
--- a/c/doc/api_reference/serializer_8h.html
+++ /dev/null
@@ -1,455 +0,0 @@
-
-
-
-
-
-
-Microsoft Azure IoT Device SDK for C: c/serializer/inc/serializer.h File Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Microsoft Azure IoT Device SDK for C
- 1.0.0-preview.1.0.0
-
- The Microsoft Azure IoT device libraries for C contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
The IoT Hub Serializer APIs allows developers to define models for their devices.
-More...
-
#include <stdlib.h>
-
#include <stdarg.h>
-
#include "gballoc.h"
-
#include "macro_utils.h"
-
#include "iotdevice.h"
-
#include "crt_abstractions.h"
-
#include "iot_logging.h"
-
#include "schemalib.h "
-
#include "codefirst.h"
-
#include "agenttypesystem.h"
-
#include "schema.h"
-
-
Go to the source code of this file.
-
-
-
The IoT Hub Serializer APIs allows developers to define models for their devices.
-
The IoT Hub Serializer APIs allows developers to quickly and easily define models for their devices directly as code, while supporting the required features for modeling devices (including multiple models and multiple devices within the same application). For example:
-
- BEGIN_NAMESPACE(Contoso) ; DECLARE_STRUCT(SystemProperties,
- ascii_char_ptr, DeviceID,
- _Bool, Enabled
- ); DECLARE_MODEL(VendingMachine, WITH_DATA(int, SensorValue) , WITH_DATA(ascii_char_ptr, ObjectName) ,
- WITH_DATA(ascii_char_ptr, ObjectType) ,
- WITH_DATA(ascii_char_ptr, Version) ,
- WITH_DATA(SystemProperties, SystemProperties) ,
- WITH_DATA(ascii_char_ptr_no_quotes, Commands) , WITH_ACTION(SetItemPrice, ascii_char_ptr, itemId, ascii_char_ptr, price)
- ); END_NAMESPACE(Contoso) ;
-
-
-
-
-
-
- #define BEGIN_NAMESPACE
- (
-
- schemaNamespace )
-
-
-
-
-
This macro marks the start of a section that declares IOT model elements (like complex types, etc.). Declarations are typically placed in header files, so that they can be shared between translation units.
-
-
-
-
-
-
-
-
- #define DECLARE_MODEL
- (
-
- name,
-
-
-
-
-
- ...
-
-
-
- )
-
-
-
-
-
This macro allows declaring a model that can be later used to instantiate a device.
-
Parameters
-
- name Specifies the model name
- element1,element2... Specifies a model element which can be a property or an action.
-A property is described in a model by using the WITH_DATA
-An action is described in a model by using the WITH_ACTION macro.
-
-
-
-
-
-
-
-
-
-
-
-
-
- #define DECLARE_STRUCT
- (
-
- name,
-
-
-
-
-
- ...
-
-
-
- )
-
-
-
-
-
This macro allows the definition of a struct type that can then be used as part of a model definition.
-
Parameters
-
- name Name of the struct
- element1,element2... Specifies a list of struct members
-
-
-
-
-
-
-
-
-
-
-
- #define END_NAMESPACE
- (
-
- schemaNamespace )
-
-
-
-
-
This macro marks the end of a section that declares IOT model elements.
-
-
-
-
-
-
-
-
- #define EXECUTE_COMMAND
- (
-
- device,
-
-
-
-
-
- command
-
-
-
- )
-
-
-
-
-
Any action that is declared in a model must also have an implementation as a C function.
-
Parameters
-
- device Pointer to device data.
- command Values that match the arguments declared in the model action.
-
-
-
-
-
-
-
-
-
-
-
- #define GET_MODEL_HANDLE
- (
-
- schemaNamespace,
-
-
-
-
-
- modelName
-
-
-
- )
-
-
-
-
-
The GET_MODEL_HANDLE macro returns a model handle that can be used in subsequent operations like generating the CSDL schema for the model, uploading the schema, creating a device, etc.
-
Parameters
-
- schemaNamespace The namespace to which the model belongs.
- modelName The name of the model.
-
-
-
-
-
-
-
-
-
-
-
- #define SERIALIZE
- (
-
- destination,
-
-
-
-
-
- destinationSize,
-
-
-
-
-
- ...
-
-
-
- )
-
-
-
-
-
This macro produces JSON serialized representation of the properties.
-
Parameters
-
- destination Pointer to an unsigned
char*
that will receive the serialized data.
- destinationSize Pointer to a size_t
that gets written with the size in bytes of the serialized data
- property1,property2... A list of property values to send. The order in which the properties appear in the list does not matter, all values will be sent together.
-
-
-
-
-
-
-
-
-
-
-
- #define WITH_ACTION
- (
-
- name,
-
-
-
-
-
- ...
-
-
-
- )
-
-
-
-
-
The WITH_ACTION macro allows declaring a model action.
-
Parameters
-
- name Specifies the action name.
- argXtype,argXName... Defines the type and name for the Xth argument of the action. The type can be any of the primitive types or a struct type.
-
-
-
-
-
-
-
-
-
-
-
- #define WITH_DATA
- (
-
- type,
-
-
-
-
-
- name
-
-
-
- )
-
-
-
-
-
The WITH_DATA macro allows declaring a model property in a model. A property can be published by using the SERIALIZE macro.
-
Parameters
-
- type Specifies the property type. Can be any of the following types:
-int
-double
-float
-long
-int8_t
-uint8_t
-int16_t
-int32_t
-int64_t
-bool
-ascii_char_ptr
-EDM_DATE_TIME_OFFSET
-EDM_GUID
-EDM_BINARY
-Any struct type previously introduced by another DECLARE_STRUCT .
-
-
- name Specifies the property name
-
-
-
-
-
-
-
-
-
-
-
diff --git a/c/doc/api_reference/serializer_8h_source.html b/c/doc/api_reference/serializer_8h_source.html
deleted file mode 100644
index a51fccc5..00000000
--- a/c/doc/api_reference/serializer_8h_source.html
+++ /dev/null
@@ -1,1077 +0,0 @@
-
-
-
-
-
-
-Microsoft Azure IoT Device SDK for C: c/serializer/inc/serializer.h Source File
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Microsoft Azure IoT Device SDK for C
- 1.0.0-preview.1.0.0
-
- The Microsoft Azure IoT device libraries for C contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the documentation of this file.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
50 #ifdef _CRTDBG_MAP_ALLOC
-
-
-
-
-
55 #include "macro_utils.h"
-
56 #include "iotdevice.h"
-
57 #include "crt_abstractions.h"
-
58 #include "iot_logging.h"
-
-
60 #include "codefirst.h"
-
61 #include "agenttypesystem.h"
-
-
-
-
-
-
-
-
-
70 #define IOT_AGENT_RESULT_ENUM_VALUES \
-
-
72 IOT_AGENT_AGENT_DATA_TYPES_ERROR, \
-
73 IOT_AGENT_COMMAND_EXECUTION_ERROR, \
-
-
75 IOT_AGENT_SERIALIZE_FAILED, \
-
-
-
78 DEFINE_ENUM(IOT_AGENT_RESULT, IOT_AGENT_RESULT_ENUM_VALUES);
-
-
-
-
-
-
91 #define BEGIN_NAMESPACE(schemaNamespace) \
-
-
-
99 #define END_NAMESPACE(schemaNamespace) \
-
100 REFLECTED_LIST_HEAD(schemaNamespace)
-
-
-
111 #define DECLARE_STRUCT(name, ...) \
-
-
113 typedef struct name##_TAG { \
-
114 FOR_EACH_2(INSERT_FIELD_INTO_STRUCT, __VA_ARGS__) \
-
-
-
117 REFLECTED_STRUCT(name) \
-
-
119 FOR_EACH_2_KEEP_1(REFLECTED_FIELD, name, __VA_ARGS__) \
-
120 TO_AGENT_DATA_TYPE(name, __VA_ARGS__) \
-
-
122 static AGENT_DATA_TYPES_RESULT FromAGENT_DATA_TYPE_##name(const AGENT_DATA_TYPE* source, name* destination) \
-
-
124 AGENT_DATA_TYPES_RESULT result; \
-
125 if(source->type != EDM_COMPLEX_TYPE_TYPE) \
-
-
127 result = AGENT_DATA_TYPES_INVALID_ARG; \
-
-
129 else if(DIV2(COUNT_ARG(__VA_ARGS__)) != source->value.edmComplexType.nMembers) \
-
-
-
132 result = AGENT_DATA_TYPES_INVALID_ARG; \
-
-
-
-
136 result = AGENT_DATA_TYPES_OK; \
-
137 FOR_EACH_2(BUILD_DESTINATION_FIELD, __VA_ARGS__); \
-
-
-
-
141 static void C2(destroyLocalParameter, name)(name * value) \
-
-
143 FOR_EACH_2_KEEP_1(UNBUILD_DESTINATION_FIELD, value, __VA_ARGS__); \
-
-
-
-
-
163 #define DECLARE_MODEL(name, ...) \
-
164 REFLECTED_MODEL(name) \
-
165 typedef struct name { int :1; FOR_EACH_1(BUILD_MODEL_STRUCT, __VA_ARGS__) } name; \
-
166 FOR_EACH_1_KEEP_1(CREATE_MODEL_ELEMENT, name, __VA_ARGS__) \
-
167 TO_AGENT_DATA_TYPE(name, DROP_FIRST_COMMA_FROM_ARGS(EXPAND_MODEL_ARGS(__VA_ARGS__)))
-
-
194 #define WITH_DATA(type, name) MODEL_PROPERTY(type, name)
-
-
-
206 #define WITH_ACTION(name, ...) MODEL_ACTION(name, __VA_ARGS__)
-
-
-
-
-
220 #define GET_MODEL_HANDLE(schemaNamespace, modelName) \
-
221 Schema_GetModelByName(CodeFirst_RegisterSchema(TOSTRING(schemaNamespace), &ALL_REFLECTED(schemaNamespace)), #modelName)
-
-
-
224 #define CREATE_DEVICE_WITH_INCLUDE_PROPERTY_PATH(schemaNamespace, modelName, serializerIncludePropertyPath) \
-
225 (modelName*)CodeFirst_CreateDevice(GET_MODEL_HANDLE(schemaNamespace, modelName), &ALL_REFLECTED(schemaNamespace), sizeof(modelName), serializerIncludePropertyPath)
-
-
-
228 #define CREATE_DEVICE_WITHOUT_INCLUDE_PROPERTY_PATH(schemaNamespace, modelName) \
-
229 (modelName*)CodeFirst_CreateDevice(GET_MODEL_HANDLE(schemaNamespace, modelName), &ALL_REFLECTED(schemaNamespace), sizeof(modelName), false)
-
-
-
-
-
-
235 #define CREATE_MODEL_INSTANCE(schemaNamespace, ...) \
-
236 IF(DIV2(COUNT_ARG(__VA_ARGS__)), CREATE_DEVICE_WITH_INCLUDE_PROPERTY_PATH, CREATE_DEVICE_WITHOUT_INCLUDE_PROPERTY_PATH) (schemaNamespace, __VA_ARGS__)
-
-
-
239 #define DESTROY_MODEL_INSTANCE(deviceData) \
-
240 CodeFirst_DestroyDevice(deviceData)
-
-
-
-
-
260 #define SERIALIZE(destination, destinationSize,...) ((CodeFirst_SendAsync(destination, destinationSize, COUNT_ARG(__VA_ARGS__) FOR_EACH_1(ADDRESS_MACRO, __VA_ARGS__)) == CODEFIRST_OK) ? IOT_AGENT_OK : IOT_AGENT_SERIALIZE_FAILED)
-
-
-
272 #define EXECUTE_COMMAND(device, command) (CodeFirst_ExecuteCommand(device, command))
-
-
-
-
-
-
-
-
280 #define DROP_FIRST_COMMA(N, x) \
-
-
-
283 #define DROP_IF_EMPTY(N, x) \
-
284 IF(COUNT_ARG(x),DROP_FIRST_COMMA(N,x),x)
-
-
286 #define DROP_FIRST_COMMA_FROM_ARGS(...) \
-
287 FOR_EACH_1_COUNTED(DROP_IF_EMPTY, C1(__VA_ARGS__))
-
-
-
-
291 #define DROP_FIRST_COMMA_0(N, x) \
-
-
-
294 #define DROP_FIRST_COMMA_1(N, x) \
-
-
-
297 #define DROP_FIRST_COMMA(empty, N, x) \
-
298 C2(DROP_FIRST_COMMA_,empty)(N,x)
-
-
300 #define DROP_IF_EMPTY(N, x) \
-
301 DROP_FIRST_COMMA(ISEMPTY(x),N,x)
-
-
303 #define DROP_FIRST_COMMA_FROM_ARGS(...) \
-
304 FOR_EACH_1_COUNTED(DROP_IF_EMPTY, __VA_ARGS__)
-
-
-
-
-
-
-
-
312 #define TO_AGENT_DT_EXPAND_MODEL_PROPERTY(x, y) ,x,y
-
313 #define TO_AGENT_DT_EXPAND_MODEL_ACTION(...)
-
-
315 #define TO_AGENT_DT_EXPAND_ELEMENT_ARGS(N, ...) TO_AGENT_DT_EXPAND_##__VA_ARGS__
-
-
317 #define EXPAND_MODEL_ARGS(...) \
-
318 FOR_EACH_1_COUNTED(TO_AGENT_DT_EXPAND_ELEMENT_ARGS, __VA_ARGS__)
-
-
320 #define TO_AGENT_DATA_TYPE(name, ...) \
-
321 static AGENT_DATA_TYPES_RESULT ToAGENT_DATA_TYPE_##name(AGENT_DATA_TYPE *destination, const name value) \
-
-
323 AGENT_DATA_TYPES_RESULT result = AGENT_DATA_TYPES_OK; \
-
324 size_t iMember = 0; \
-
325 DEFINITION_THAT_CAN_SUSTAIN_A_COMMA_STEAL(phantomName, 1); \
-
326 const char* memberNames[IF(DIV2(C1(COUNT_ARG(__VA_ARGS__))), DIV2(C1(COUNT_ARG(__VA_ARGS__))), 1)] = { 0 }; \
-
327 size_t memberCount = sizeof(memberNames) / sizeof(memberNames[0]); \
-
-
329 if (memberCount == 0) \
-
-
331 result = AGENT_DATA_TYPES_OK; \
-
-
-
-
335 AGENT_DATA_TYPE members[sizeof(memberNames) / sizeof(memberNames[0])]; \
-
336 DEFINITION_THAT_CAN_SUSTAIN_A_COMMA_STEAL(phantomName, 2); \
-
337 FOR_EACH_2(FIELD_AS_STRING, EXPAND_TWICE(__VA_ARGS__)) \
-
-
339 INSTRUCTION_THAT_CAN_SUSTAIN_A_COMMA_STEAL; \
-
340 FOR_EACH_2(CREATE_AGENT_DATA_TYPE, EXPAND_TWICE(__VA_ARGS__)) \
-
341 INSTRUCTION_THAT_CAN_SUSTAIN_A_COMMA_STEAL; \
-
342 result = ((result == AGENT_DATA_TYPES_OK) && (Create_AGENT_DATA_TYPE_from_Members(destination, #name, sizeof(memberNames) / sizeof(memberNames[0]), memberNames, members) == AGENT_DATA_TYPES_OK)) \
-
343 ? AGENT_DATA_TYPES_OK \
-
344 : AGENT_DATA_TYPES_ERROR; \
-
-
-
347 for (jMember = 0; jMember < iMember; jMember++) \
-
-
349 Destroy_AGENT_DATA_TYPE(&members[jMember]); \
-
-
-
-
-
-
-
356 #define FIELD_AS_STRING(x,y) memberNames[iMember++] = #y;
-
-
358 #define REFLECTED_LIST_HEAD(name) \
-
359 static const REFLECTED_DATA_FROM_DATAPROVIDER ALL_REFLECTED(name) = { &C2(REFLECTED_, C1(DEC(__COUNTER__))) };
-
360 #define REFLECTED_STRUCT(name) \
-
361 static const REFLECTED_SOMETHING C2(REFLECTED_, C1(INC(__COUNTER__))) = { REFLECTION_STRUCT_TYPE, &C2(REFLECTED_, C1(DEC(DEC(__COUNTER__)))), { {TOSTRING(name)}, {0}, {0}, {0}, {0}} };
-
362 #define REFLECTED_FIELD(XstructName, XfieldType, XfieldName) \
-
363 static const REFLECTED_SOMETHING C2(REFLECTED_, C1(INC(__COUNTER__))) = { REFLECTION_FIELD_TYPE, &C2(REFLECTED_, C1(DEC(DEC(__COUNTER__)))), { {0}, {TOSTRING(XfieldName), TOSTRING(XfieldType), TOSTRING(XstructName)}, {0}, {0}, {0} } };
-
364 #define REFLECTED_MODEL(name) \
-
365 static const REFLECTED_SOMETHING C2(REFLECTED_, C1(INC(__COUNTER__))) = { REFLECTION_MODEL_TYPE, &C2(REFLECTED_, C1(DEC(DEC(__COUNTER__)))), { {0}, {0}, {0}, {0}, {TOSTRING(name)} } };
-
366 #define REFLECTED_PROPERTY(type, name, modelName) \
-
367 static const REFLECTED_SOMETHING C2(REFLECTED_, C1(INC(__COUNTER__))) = { REFLECTION_PROPERTY_TYPE, &C2(REFLECTED_, C1(DEC(DEC(__COUNTER__)))), { {0}, {0}, {TOSTRING(name), TOSTRING(type), Create_AGENT_DATA_TYPE_From_Ptr_##name, offsetof(modelName, name), sizeof(type), TOSTRING(modelName)}, {0}, {0}} };
-
368 #define REFLECTED_ACTION(name, argc, argv, fn, modelName) \
-
369 static const REFLECTED_SOMETHING C2(REFLECTED_, C1(INC(__COUNTER__))) = { REFLECTION_ACTION_TYPE, &C2(REFLECTED_, C1(DEC(DEC(__COUNTER__)))), { {0}, {0}, {0}, {TOSTRING(name), (0 ? (uintptr_t)("", "") : argc), argv, fn, TOSTRING(modelName)}, {0}} };
-
370 #define REFLECTED_END_OF_LIST \
-
371 static const REFLECTED_SOMETHING C2(REFLECTED_, __COUNTER__) = { REFLECTION_NOTHING, NULL, { {0}, {0}, {0}, {0}, {0}} };
-
-
373 #define EXPAND_MODEL_PROPERTY(type, name) EXPAND_ARGS(MODEL_PROPERTY, type, name)
-
374 #define EXPAND_MODEL_ACTION(...) EXPAND_ARGS(MODEL_ACTION, __VA_ARGS__)
-
-
376 #define BUILD_MODEL_STRUCT(elem) INSERT_FIELD_FOR_##elem
-
-
378 #define CREATE_MODEL_ENTITY(modelName, callType, ...) EXPAND_ARGS(CREATE_##callType(modelName, __VA_ARGS__))
-
379 #define CREATE_SOMETHING(modelName, ...) EXPAND_ARGS(CREATE_MODEL_ENTITY(modelName, __VA_ARGS__))
-
380 #define CREATE_ELEMENT(modelName, elem) EXPAND_ARGS(CREATE_SOMETHING(modelName, EXPAND_ARGS(EXPAND_##elem)))
-
-
382 #define CREATE_MODEL_ELEMENT(modelName, elem) EXPAND_ARGS(CREATE_ELEMENT(modelName, elem))
-
-
384 #define INSERT_FIELD_INTO_STRUCT(x, y) x y;
-
385 #define INSERT_FIELD_FOR_MODEL_PROPERTY(type, name) INSERT_FIELD_INTO_STRUCT(type, name)
-
386 #define INSERT_FIELD_FOR_MODEL_ACTION(name, ...)
-
-
388 #define CREATE_MODEL_PROPERTY(modelName, type, name) \
-
389 IMPL_PROPERTY(type, name, modelName)
-
-
391 #define IMPL_PROPERTY(propertyType, propertyName, modelName) \
-
392 static int Create_AGENT_DATA_TYPE_From_Ptr_##propertyName(void* param, AGENT_DATA_TYPE* dest) \
-
-
394 return C1(ToAGENT_DATA_TYPE_##propertyType)(dest, *(propertyType*)param); \
-
-
396 REFLECTED_PROPERTY(propertyType, propertyName, modelName)
-
-
398 #define CREATE_MODEL_ACTION(modelName, actionName, ...) \
-
399 DEFINITION_THAT_CAN_SUSTAIN_A_COMMA_STEAL(modelName##actionName, 1); \
-
400 EXECUTE_COMMAND_RESULT actionName (modelName* device FOR_EACH_2(DEFINE_FUNCTION_PARAMETER, __VA_ARGS__)); \
-
401 static EXECUTE_COMMAND_RESULT C2(actionName, WRAPPER)(void* device, size_t ParameterCount, const AGENT_DATA_TYPE* values); \
-
-
-
404 DEFINITION_THAT_CAN_SUSTAIN_A_COMMA_STEAL(actionName, 1); \
-
405 static const WRAPPER_ARGUMENT C2(actionName, WRAPPERARGUMENTS)[DIV2(INC(INC(COUNT_ARG(__VA_ARGS__))))] = { FOR_EACH_2_COUNTED(MAKE_WRAPPER_ARGUMENT, __VA_ARGS__) IFCOMMA(INC(INC(COUNT_ARG(__VA_ARGS__)))) {0} }; \
-
406 REFLECTED_ACTION(actionName, DIV2(COUNT_ARG(__VA_ARGS__)), C2(actionName, WRAPPERARGUMENTS), C2(actionName, WRAPPER), modelName) \
-
-
-
409 static EXECUTE_COMMAND_RESULT C2(actionName, WRAPPER)(void* device, size_t ParameterCount, const AGENT_DATA_TYPE* values) \
-
-
411 EXECUTE_COMMAND_RESULT result; \
-
412 DEFINITION_THAT_CAN_SUSTAIN_A_COMMA_STEAL(actionName, 2); \
-
-
414 if(ParameterCount != DIV2(COUNT_ARG(__VA_ARGS__))) \
-
-
416 result = EXECUTE_COMMAND_ERROR; \
-
-
-
-
-
421 DEFINITION_THAT_CAN_SUSTAIN_A_COMMA_STEAL(actionName, 3); \
-
422 IF(DIV2(COUNT_ARG(__VA_ARGS__)), size_t iParameter = 0;, ) \
-
423 DEFINITION_THAT_CAN_SUSTAIN_A_COMMA_STEAL(actionName, 4); \
-
-
425 DEFINITION_THAT_CAN_SUSTAIN_A_COMMA_STEAL(actionName, 5); \
-
426 FOR_EACH_2(DEFINE_LOCAL_PARAMETER, __VA_ARGS__) \
-
427 DEFINITION_THAT_CAN_SUSTAIN_A_COMMA_STEAL(actionName, 6); \
-
428 IF(DIV2(COUNT_ARG(__VA_ARGS__)), , (void)values;) \
-
429 INSTRUCTION_THAT_CAN_SUSTAIN_A_COMMA_STEAL; \
-
430 FOR_EACH_2(START_BUILD_LOCAL_PARAMETER, __VA_ARGS__) \
-
431 INSTRUCTION_THAT_CAN_SUSTAIN_A_COMMA_STEAL; \
-
432 result = actionName((modelName*)device FOR_EACH_2(PUSH_LOCAL_PARAMETER, __VA_ARGS__)); \
-
433 FOR_EACH_2(END_BUILD_LOCAL_PARAMETER, __VA_ARGS__) \
-
-
-
-
-
438 #define CREATE_AGENT_DATA_TYPE(type, name) \
-
439 result = (( result==AGENT_DATA_TYPES_OK) && (ToAGENT_DATA_TYPE_##type( &(members[iMember]), value.name) == AGENT_DATA_TYPES_OK))?AGENT_DATA_TYPES_OK:AGENT_DATA_TYPES_ERROR; \
-
440 iMember+= ((result==AGENT_DATA_TYPES_OK)?1:0);
-
-
442 #define BUILD_DESTINATION_FIELD(type, name) \
-
443 if(result == AGENT_DATA_TYPES_OK) \
-
-
-
446 bool wasFieldConverted = false; \
-
447 for (i = 0; i < source->value.edmComplexType.nMembers; i++) \
-
-
-
450 if (strcmp(source->value.edmComplexType.fields[i].fieldName, TOSTRING(name)) == 0) \
-
-
452 wasFieldConverted = (C2(FromAGENT_DATA_TYPE_, type)(source->value.edmComplexType.fields[i].value, &(destination->name)) == AGENT_DATA_TYPES_OK); \
-
-
-
-
456 result = (wasFieldConverted == true)? AGENT_DATA_TYPES_OK: AGENT_DATA_TYPES_INVALID_ARG; \
-
-
-
-
-
-
-
463 #define UNBUILD_DESTINATION_FIELD(value, type, name) \
-
464 C2(destroyLocalParameter, type)(&(value->name));
-
-
-
467 #define ADDRESS_MACRO(x) ,&x
-
-
469 #define KEEP_FIRST_(X, ...) X
-
-
471 #define KEEP_FIRST(X) KEEP_FIRST_ LPAREN X)
-
-
473 #define KEEP_FIRST(X) KEEP_FIRST_(X)
-
-
-
476 #define PROMOTIONMAP_float double, double
-
477 #define PROMOTIONMAP_int8_t int, int
-
478 #define PROMOTIONMAP_uint8_t int, int
-
479 #define PROMOTIONMAP_int16_t int, int
-
480 #define PROMOTIONMAP__Bool int, int
-
481 #define PROMOTIONMAP_bool int, int
-
-
483 #define CASTMAP_float (float), (float)
-
484 #define CASTMAP_int8_t (int8_t), (int8_t)
-
485 #define CASTMAP_uint8_t (uint8_t), (uint8_t)
-
486 #define CASTMAP_int16_t (int16_t), (int16_t)
-
487 #define CASTMAP__Bool 0!=, 0!=
-
488 #define CASTMAP_bool 0!=, 0!=
-
-
-
-
492 #define ANOTHERIF(x) C2(ANOTHERIF,x)
-
493 #define ANOTHERIF0(a,b) a
-
494 #define ANOTHERIF1(a,b) b
-
495 #define ANOTHERIF2(a,b) b
-
496 #define ANOTHERIF3(a,b) b
-
497 #define ANOTHERIF4(a,b) b
-
498 #define ANOTHERIF5(a,b) b
-
499 #define ANOTHERIF6(a,b) b
-
500 #define ANOTHERIF7(a,b) b
-
501 #define ANOTHERIF8(a,b) b
-
502 #define ANOTHERIF9(a,b) b
-
503 #define ANOTHERIF10(a,b) b
-
504 #define ANOTHERIF11(a,b) b
-
505 #define ANOTHERIF12(a,b) b
-
-
507 #define MAP_PROMOTED_TYPE(X) ANOTHERIF(DEC(COUNT_ARG(PROMOTIONMAP_##X))) (X, KEEP_FIRST(PROMOTIONMAP_##X))
-
508 #define MAP_CAST_TYPE(X) ANOTHERIF(DEC(COUNT_ARG(CASTMAP_##X))) (EMPTY_TOKEN, KEEP_FIRST(CASTMAP_##X) )
-
-
510 #define IFCOMMA(N) C2(IFCOMMA_, N)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
561 #define IFCOMMA_100 ,
-
562 #define IFCOMMA_102 ,
-
563 #define IFCOMMA_104 ,
-
564 #define IFCOMMA_106 ,
-
565 #define IFCOMMA_108 ,
-
566 #define IFCOMMA_110 ,
-
567 #define IFCOMMA_112 ,
-
568 #define IFCOMMA_114 ,
-
569 #define IFCOMMA_116 ,
-
570 #define IFCOMMA_118 ,
-
571 #define IFCOMMA_120 ,
-
572 #define IFCOMMA_122 ,
-
573 #define IFCOMMA_124 ,
-
574 #define IFCOMMA_126 ,
-
575 #define IFCOMMA_128 ,
-
-
577 #define DEFINE_LOCAL_PARAMETER(type, name) type C2(name,_local);
-
-
579 #define START_BUILD_LOCAL_PARAMETER(type, name) \
-
580 if (C2(FromAGENT_DATA_TYPE_, type)(&values[iParameter], &C2(name, _local)) != AGENT_DATA_TYPES_OK) \
-
-
-
583 result = EXECUTE_COMMAND_ERROR; \
-
-
-
-
-
-
589 #define END_BUILD_LOCAL_PARAMETER(type, name) \
-
590 (void)C2(destroyLocalParameter, type)(&C2(name, _local)); \
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
606 #define LOTS_OF_COMMA_TO_BE_EATEN \
-
607 "0", "1", "2", "3", "4", "5", "6", "7", "8", "9"
-
608 #define DEFINITION_THAT_CAN_SUSTAIN_A_COMMA_STEAL(name, instance) static const char* eatThese_COMMA_##name##instance[] = {LOTS_OF_COMMA_TO_BE_EATEN}
-
609 #define INSTRUCTION_THAT_CAN_SUSTAIN_A_COMMA_STEAL 0?LOTS_OF_COMMA_TO_BE_EATEN:LOTS_OF_COMMA_TO_BE_EATEN
-
-
611 #define PUSH_LOCAL_PARAMETER(type, name) , C2(name, _local)
-
612 #define DEFINE_FUNCTION_PARAMETER(type, name) , type name
-
613 #define MAKE_WRAPPER_ARGUMENT(N, type, name) {TOSTRING(type), TOSTRING(name)} IFCOMMA(N)
-
-
-
-
617 static AGENT_DATA_TYPES_RESULT C2(ToAGENT_DATA_TYPE_,
double )(AGENT_DATA_TYPE* dest,
double source)
-
-
619 return Create_AGENT_DATA_TYPE_from_DOUBLE(dest, source);
-
-
-
622 static AGENT_DATA_TYPES_RESULT C2(FromAGENT_DATA_TYPE_,
double )(
const AGENT_DATA_TYPE* agentData,
double * dest)
-
-
624 AGENT_DATA_TYPES_RESULT result;
-
625 if (agentData->type != EDM_DOUBLE_TYPE)
-
-
627 result = AGENT_DATA_TYPES_INVALID_ARG;
-
-
-
-
631 *dest = agentData->value.edmDouble.value;
-
632 result = AGENT_DATA_TYPES_OK;
-
-
-
-
-
-
-
639 static AGENT_DATA_TYPES_RESULT C2(ToAGENT_DATA_TYPE_,
float )(AGENT_DATA_TYPE* dest,
float source)
-
-
641 return Create_AGENT_DATA_TYPE_from_FLOAT(dest, source);
-
-
-
644 static AGENT_DATA_TYPES_RESULT C2(FromAGENT_DATA_TYPE_,
float )(
const AGENT_DATA_TYPE* agentData,
float * dest)
-
-
646 AGENT_DATA_TYPES_RESULT result;
-
647 if (agentData->type != EDM_SINGLE_TYPE)
-
-
649 result = AGENT_DATA_TYPES_INVALID_ARG;
-
-
-
-
653 *dest = agentData->value.edmSingle.value;
-
654 result = AGENT_DATA_TYPES_OK;
-
-
-
-
-
-
-
-
662 static AGENT_DATA_TYPES_RESULT C2(ToAGENT_DATA_TYPE_,
int )(AGENT_DATA_TYPE* dest,
int source)
-
-
664 return Create_AGENT_DATA_TYPE_from_SINT32(dest, source);
-
-
-
667 static AGENT_DATA_TYPES_RESULT C2(FromAGENT_DATA_TYPE_,
int )(
const AGENT_DATA_TYPE* agentData,
int * dest)
-
-
669 AGENT_DATA_TYPES_RESULT result;
-
670 if (agentData->type != EDM_INT32_TYPE)
-
-
672 result = AGENT_DATA_TYPES_INVALID_ARG;
-
-
-
-
676 *dest = agentData->value.edmInt32.value;
-
677 result = AGENT_DATA_TYPES_OK;
-
-
-
-
-
-
-
684 static AGENT_DATA_TYPES_RESULT C2(ToAGENT_DATA_TYPE_,
long )(AGENT_DATA_TYPE* dest,
long source)
-
-
686 return Create_AGENT_DATA_TYPE_from_SINT64(dest, source);
-
-
-
689 static AGENT_DATA_TYPES_RESULT C2(FromAGENT_DATA_TYPE_,
long )(
const AGENT_DATA_TYPE* agentData,
long * dest)
-
-
691 AGENT_DATA_TYPES_RESULT result;
-
692 if (agentData->type != EDM_INT64_TYPE)
-
-
694 result = AGENT_DATA_TYPES_INVALID_ARG;
-
-
-
-
698 *dest = (long)agentData->value.edmInt64.value;
-
699 result = AGENT_DATA_TYPES_OK;
-
-
-
-
-
-
-
706 static AGENT_DATA_TYPES_RESULT C2(ToAGENT_DATA_TYPE_, int8_t)(AGENT_DATA_TYPE* dest, int8_t source)
-
-
708 return Create_AGENT_DATA_TYPE_from_SINT8(dest, source);
-
-
-
711 static AGENT_DATA_TYPES_RESULT C2(FromAGENT_DATA_TYPE_, int8_t)(
const AGENT_DATA_TYPE* agentData, int8_t* dest)
-
-
713 AGENT_DATA_TYPES_RESULT result;
-
714 if (agentData->type != EDM_SBYTE_TYPE)
-
-
716 result = AGENT_DATA_TYPES_INVALID_ARG;
-
-
-
-
720 *dest = agentData->value.edmSbyte.value;
-
721 result = AGENT_DATA_TYPES_OK;
-
-
-
-
-
-
-
728 static AGENT_DATA_TYPES_RESULT C2(ToAGENT_DATA_TYPE_, uint8_t)(AGENT_DATA_TYPE* dest, uint8_t source)
-
-
730 return Create_AGENT_DATA_TYPE_from_UINT8(dest, source);
-
-
-
733 static AGENT_DATA_TYPES_RESULT C2(FromAGENT_DATA_TYPE_, uint8_t)(
const AGENT_DATA_TYPE* agentData, uint8_t* dest)
-
-
735 AGENT_DATA_TYPES_RESULT result;
-
736 if (agentData->type != EDM_BYTE_TYPE)
-
-
738 result = AGENT_DATA_TYPES_INVALID_ARG;
-
-
-
-
742 *dest = agentData->value.edmByte.value;
-
743 result = AGENT_DATA_TYPES_OK;
-
-
-
-
-
-
-
750 static AGENT_DATA_TYPES_RESULT C2(ToAGENT_DATA_TYPE_, int16_t)(AGENT_DATA_TYPE* dest, int16_t source)
-
-
752 return Create_AGENT_DATA_TYPE_from_SINT16(dest, source);
-
-
-
755 static AGENT_DATA_TYPES_RESULT C2(FromAGENT_DATA_TYPE_, int16_t)(
const AGENT_DATA_TYPE* agentData, int16_t* dest)
-
-
757 AGENT_DATA_TYPES_RESULT result;
-
758 if (agentData->type != EDM_INT16_TYPE)
-
-
760 result = AGENT_DATA_TYPES_INVALID_ARG;
-
-
-
-
764 *dest = agentData->value.edmInt16.value;
-
765 result = AGENT_DATA_TYPES_OK;
-
-
-
-
-
-
-
772 static AGENT_DATA_TYPES_RESULT C2(ToAGENT_DATA_TYPE_, int32_t)(AGENT_DATA_TYPE* dest, int32_t source)
-
-
774 return Create_AGENT_DATA_TYPE_from_SINT32(dest, source);
-
-
-
777 static AGENT_DATA_TYPES_RESULT C2(FromAGENT_DATA_TYPE_, int32_t)(
const AGENT_DATA_TYPE* agentData, int32_t* dest)
-
-
779 AGENT_DATA_TYPES_RESULT result;
-
780 if (agentData->type != EDM_INT32_TYPE)
-
-
782 result = AGENT_DATA_TYPES_INVALID_ARG;
-
-
-
-
786 *dest = agentData->value.edmInt32.value;
-
787 result = AGENT_DATA_TYPES_OK;
-
-
-
-
-
-
-
794 static AGENT_DATA_TYPES_RESULT C2(ToAGENT_DATA_TYPE_, int64_t)(AGENT_DATA_TYPE* dest, int64_t source)
-
-
796 return Create_AGENT_DATA_TYPE_from_SINT64(dest, source);
-
-
-
799 static AGENT_DATA_TYPES_RESULT C2(FromAGENT_DATA_TYPE_, int64_t)(
const AGENT_DATA_TYPE* agentData, int64_t* dest)
-
-
801 AGENT_DATA_TYPES_RESULT result;
-
802 if (agentData->type != EDM_INT64_TYPE)
-
-
804 result = AGENT_DATA_TYPES_INVALID_ARG;
-
-
-
-
808 *dest = agentData->value.edmInt64.value;
-
809 result = AGENT_DATA_TYPES_OK;
-
-
-
-
-
-
815 static AGENT_DATA_TYPES_RESULT C2(ToAGENT_DATA_TYPE_,
bool )(AGENT_DATA_TYPE* dest,
bool source)
-
-
817 return Create_EDM_BOOLEAN_from_int(dest, source ==
true );
-
-
-
820 static AGENT_DATA_TYPES_RESULT C2(FromAGENT_DATA_TYPE_,
bool )(
const AGENT_DATA_TYPE* agentData,
bool * dest)
-
-
822 AGENT_DATA_TYPES_RESULT result;
-
823 if (agentData->type != EDM_BOOLEAN_TYPE)
-
-
825 result = AGENT_DATA_TYPES_INVALID_ARG;
-
-
-
-
829 *dest = (agentData->value.edmBoolean.value == EDM_TRUE) ?
true :
false ;
-
830 result = AGENT_DATA_TYPES_OK;
-
-
-
-
-
-
836 static AGENT_DATA_TYPES_RESULT C2(ToAGENT_DATA_TYPE_, ascii_char_ptr)(AGENT_DATA_TYPE* dest, ascii_char_ptr source)
-
-
838 return Create_AGENT_DATA_TYPE_from_charz(dest, source);
-
-
-
841 static AGENT_DATA_TYPES_RESULT C2(FromAGENT_DATA_TYPE_, ascii_char_ptr)(
const AGENT_DATA_TYPE* agentData, ascii_char_ptr* dest)
-
-
843 AGENT_DATA_TYPES_RESULT result;
-
844 if (agentData->type != EDM_STRING_TYPE)
-
-
846 result = AGENT_DATA_TYPES_INVALID_ARG;
-
-
-
-
850 *dest = agentData->value.edmString.chars;
-
851 result = AGENT_DATA_TYPES_OK;
-
-
-
-
-
856 static AGENT_DATA_TYPES_RESULT C2(ToAGENT_DATA_TYPE_, ascii_char_ptr_no_quotes)(AGENT_DATA_TYPE* dest, ascii_char_ptr_no_quotes source)
-
-
858 return Create_AGENT_DATA_TYPE_from_charz_no_quotes(dest, source);
-
-
-
861 static AGENT_DATA_TYPES_RESULT C2(FromAGENT_DATA_TYPE_, ascii_char_ptr_no_quotes)(
const AGENT_DATA_TYPE* agentData, ascii_char_ptr_no_quotes* dest)
-
-
863 AGENT_DATA_TYPES_RESULT result;
-
864 if (agentData->type != EDM_STRING_NO_QUOTES_TYPE)
-
-
866 result = AGENT_DATA_TYPES_INVALID_ARG;
-
-
-
-
870 *dest = agentData->value.edmStringNoQuotes.chars;
-
871 result = AGENT_DATA_TYPES_OK;
-
-
-
-
-
-
-
878 static AGENT_DATA_TYPES_RESULT C2(ToAGENT_DATA_TYPE_, EDM_DATE_TIME_OFFSET)(AGENT_DATA_TYPE* dest, EDM_DATE_TIME_OFFSET source)
-
-
880 return Create_AGENT_DATA_TYPE_from_EDM_DATE_TIME_OFFSET(dest, source);
-
-
-
883 static AGENT_DATA_TYPES_RESULT C2(FromAGENT_DATA_TYPE_, EDM_DATE_TIME_OFFSET)(
const AGENT_DATA_TYPE* agentData, EDM_DATE_TIME_OFFSET* dest)
-
-
885 AGENT_DATA_TYPES_RESULT result;
-
886 if (agentData->type != EDM_DATE_TIME_OFFSET_TYPE)
-
-
888 result = AGENT_DATA_TYPES_INVALID_ARG;
-
-
-
-
892 *dest = agentData->value.edmDateTimeOffset;
-
893 result = AGENT_DATA_TYPES_OK;
-
-
-
-
-
-
-
900 static AGENT_DATA_TYPES_RESULT C2(ToAGENT_DATA_TYPE_, EDM_GUID)(AGENT_DATA_TYPE* dest, EDM_GUID guid)
-
-
902 return Create_AGENT_DATA_TYPE_from_EDM_GUID(dest, guid);
-
-
-
905 static AGENT_DATA_TYPES_RESULT C2(FromAGENT_DATA_TYPE_, EDM_GUID)(
const AGENT_DATA_TYPE* agentData, EDM_GUID* dest)
-
-
907 AGENT_DATA_TYPES_RESULT result;
-
908 if (agentData->type != EDM_GUID_TYPE)
-
-
910 result = AGENT_DATA_TYPES_INVALID_ARG;
-
-
-
-
914 memcpy(dest->GUID, agentData->value.edmGuid.GUID, 16);
-
915 result = AGENT_DATA_TYPES_OK;
-
-
-
-
-
-
-
922 static AGENT_DATA_TYPES_RESULT C2(ToAGENT_DATA_TYPE_, EDM_BINARY)(AGENT_DATA_TYPE* dest, EDM_BINARY edmBinary)
-
-
924 return Create_AGENT_DATA_TYPE_from_EDM_BINARY(dest, edmBinary);
-
-
-
927 static AGENT_DATA_TYPES_RESULT C2(FromAGENT_DATA_TYPE_, EDM_BINARY)(
const AGENT_DATA_TYPE* agentData, EDM_BINARY* dest)
-
-
929 AGENT_DATA_TYPES_RESULT result;
-
930 if (agentData->type != EDM_BINARY_TYPE)
-
-
932 result = AGENT_DATA_TYPES_INVALID_ARG;
-
-
-
-
936 if ((dest->data = (
unsigned char *)malloc(agentData->value.edmBinary.size)) == NULL)
-
-
938 result = AGENT_DATA_TYPES_ERROR;
-
-
-
-
942 memcpy(dest->data, agentData->value.edmBinary.data, agentData->value.edmBinary.size);
-
943 dest->size = agentData->value.edmBinary.size;
-
944 result = AGENT_DATA_TYPES_OK;
-
-
-
-
-
-
950 static void C2(destroyLocalParameter, EDM_BINARY)(EDM_BINARY* value)
-
-
-
-
-
-
-
-
-
-
960 static void C2(destroyLocalParameter, EDM_BOOLEAN)(EDM_BOOLEAN* value)
-
-
-
-
-
965 static void C2(destroyLocalParameter, EDM_BYTE)(EDM_BYTE* value)
-
-
-
-
-
970 static void C2(destroyLocalParameter, EDM_DATE)(EDM_DATE* value)
-
-
-
-
-
975 static void C2(destroyLocalParameter, EDM_DATE_TIME_OFFSET)(EDM_DATE_TIME_OFFSET* value)
-
-
-
-
-
980 static void C2(destroyLocalParameter, EDM_DECIMAL)(EDM_DECIMAL* value)
-
-
-
-
984 STRING_delete(value->value);
-
-
-
-
-
989 static void C2(destroyLocalParameter, EDM_DOUBLE)(EDM_DOUBLE* value)
-
-
-
-
-
994 static void C2(destroyLocalParameter, EDM_DURATION)(EDM_DURATION* value)
-
-
-
-
-
999 value->digits = NULL;
-
-
-
-
-
1004 static void C2(destroyLocalParameter, EDM_GUID)(EDM_GUID* value)
-
-
-
-
-
1009 static void C2(destroyLocalParameter, EDM_INT16)(EDM_INT16* value)
-
-
-
-
-
1014 static void C2(destroyLocalParameter, EDM_INT32)(EDM_INT32* value)
-
-
-
-
-
1019 static void C2(destroyLocalParameter, EDM_INT64)(EDM_INT64* value)
-
-
-
-
-
1024 static void C2(destroyLocalParameter, EDM_SBYTE)(EDM_SBYTE* value)
-
-
-
-
-
1029 static void C2(destroyLocalParameter, EDM_SINGLE)(EDM_SINGLE* value)
-
-
-
-
-
1034 static void C2(destroyLocalParameter, EDM_STRING)(EDM_STRING* value)
-
-
-
-
-
-
1040 static void C2(destroyLocalParameter, EDM_TIME_OF_DAY)(EDM_TIME_OF_DAY* value)
-
-
-
-
-
1045 static void C2(destroyLocalParameter,
int )(
int * value)
-
-
-
-
-
1050 static void C2(destroyLocalParameter,
float )(
float * value)
-
-
-
-
-
1055 static void C2(destroyLocalParameter,
double )(
double * value)
-
-
-
-
-
1060 static void C2(destroyLocalParameter,
long )(
long * value)
-
-
-
-
-
1065 static void C2(destroyLocalParameter, int8_t)(int8_t* value)
-
-
-
-
-
1070 static void C2(destroyLocalParameter, uint8_t)(uint8_t* value)
-
-
-
-
-
1075 static void C2(destroyLocalParameter, int16_t)(int16_t* value)
-
-
-
-
-
1080 static void C2(destroyLocalParameter, int32_t)(int32_t* value)
-
-
-
-
-
1085 static void C2(destroyLocalParameter, int64_t)(int64_t* value)
-
-
-
-
-
1090 static void C2(destroyLocalParameter,
bool )(
bool * value)
-
-
-
-
-
1095 static void C2(destroyLocalParameter, ascii_char_ptr)(ascii_char_ptr* value)
-
-
-
-
-
1100 static void C2(destroyLocalParameter, ascii_char_ptr_no_quotes)(ascii_char_ptr_no_quotes* value)
-
-
-
-
-
-
-
-
-
-
-
-
The IoT Hub Serializer APIs allows developers to define models for their devices. ...
-
-
-
-
-
diff --git a/c/doc/api_reference/splitbar.png b/c/doc/api_reference/splitbar.png
deleted file mode 100644
index 343046b612b0bef5191e66080ff3bff2338a121e..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 282
zcmeAS@N?(olHy`uVBq!ia0vp^Yzz!63>-{AmhX=Jf@Vh3v=57WL!Tw
zYfCnYCNSG5Pk3-a=ZFUXdA1Eq$_q4ov(~NreaG|M?nl#~|KqNi9(1iVc3SGZ=b5vP
z75-s5q3-FRLMp1A(D%6F`@Z+~t5&Ugy=zs@kf3$>Phsonp+`m)LO(%OI5^=;38
qepfl~ectV77gZD{k%9g#loz>Y`|5vS(>$PO89ZJ6T-G@yGywqTerZbp
diff --git a/c/doc/api_reference/struct_i_o_t_h_u_b___c_l_i_e_n_t___c_o_n_f_i_g___t_a_g.html b/c/doc/api_reference/struct_i_o_t_h_u_b___c_l_i_e_n_t___c_o_n_f_i_g___t_a_g.html
deleted file mode 100644
index 990027d3..00000000
--- a/c/doc/api_reference/struct_i_o_t_h_u_b___c_l_i_e_n_t___c_o_n_f_i_g___t_a_g.html
+++ /dev/null
@@ -1,134 +0,0 @@
-
-
-
-
-
-
-Microsoft Azure IoT Device SDK for C: IOTHUB_CLIENT_CONFIG_TAG Struct Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Microsoft Azure IoT Device SDK for C
- 1.0.0-preview.1.0.0
-
- The Microsoft Azure IoT device libraries for C contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
This struct captures IoTHub client configuration.
- More...
-
-
#include <iothub_client_ll.h >
-
-
-
-IOTHUB_CLIENT_TRANSPORT_PROVIDER protocol
- A function pointer that is passed into the IoTHubClientCreate
. A function definition for AMQP, DeviceClientProvideAmqpResources
, is defined in the include iothubtransportamqp.h
. A function definition for HTTP, DeviceClientProvideHttpResources
, is defined in the include iothubtransporthttp.h
.
-
-
-const char * deviceId
- A string that identifies the device.
-
-
-const char * deviceKey
- The device key used to authenticate the device.
-
-
-const char * iotHubName
- The IoT Hub name to which the device is connecting.
-
-
-const char * iotHubSuffix
- IoT Hub suffix goes here, e.g., private.azure-devices-int.net.
-
-
-
-
This struct captures IoTHub client configuration.
-
The documentation for this struct was generated from the following file:
-
-
-
-
-
diff --git a/c/doc/api_reference/sync_off.png b/c/doc/api_reference/sync_off.png
deleted file mode 100644
index b85662482b4bed01e9507971963f9c6b71b36e54..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 815
zcmV+~1JL}5P)k&sW_1@dU27*sGi1(Rd+`(5Tb_g-g2#qH&Mm~-zP&hMUce&?L6YjkuJ
zAf1z=7cuoZoFCh`8e_(wbx{{yy?DnOTb
zB2EG9!4Yv&To8A}3+u}az*??|SNmw(db!1OaW`Fnka)JsumSAFBXP|cK%+lBgvQP5
zZxOHt_*3`+oC*pG08+}%&IU;3sCXb;8sLPu3fPLv4_0rSRLrzW(
zfKym|p#i$ZG3Qqg3=9wm1Tr=^Hvv+L#bQ)dRWUR)L~(I3fYXQuXth2mEiEM+4pUZE
z2Cyd{kH-j7US1B^O1B1RFz<9Y1_uWzDk|FkM`dLtEiEmywY3?{tF^V2`uciXulxG?
zXlU4O&PW~&;L%!pdpjK+9XlpYdsJ6fM@>zQ@ulWfTU%=cx8;0B2F=aQ^!N9FGbdXE
zxU^PSSO~DIv9U4Z*V+>Rr~LfUCMG7>*w_GY3TgnY=q9(lL0Pjx(l0J^kg^*(
z2U}ZP#N%-Qr?+}onE`ZF{U?$O0N~($CKm8}bF=#-ZUG#U``WnkM0=@;k=V}x4oZjQ
zuXHEcV{t=70QN~2*FACD`Y^M%w->M#O?o{xb$ir9!}$>aPOrsvp=%0AmUKzJBrc1y
t;-csh#}fyM28@a?;$5OqW4r;Jegpgiqt?P@;@1EG002ovPDHLkV1oT3Z1w;E
diff --git a/c/doc/api_reference/sync_on.png b/c/doc/api_reference/sync_on.png
deleted file mode 100644
index e5044af075745db2ffb725f2611bcfacac939c95..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 809
zcmV+^1J?YBP)M{tTizw(O2%@g+qN@ms
zX#at|NTh|G!HX5vbZ%lnA{N0Qf>FDebNhxFUWL*Tr+|hhD%MzllE%(7E;Ti)Z3Sz625RbdPBR*pCO|qBDVJfARx5
zH=jo$Y)x=mgaF)>mX-q86ciKy&hq|O%N~_t-rsYfq{W<7Enjj+S*EUbF-nPrNu~Ut9P%L?(S~J#>OZqDfwhB
zwkGhHUnnap1Nbh|x%QRbEfhKI-pb#TWWmDc>iZN@ZaWP_g-8D_(ASy=gu4Lg%(HlJO?-|os#?cZnTHu
zvPc0OkZ!J<;+nPb$jHbDU<)mHy*BlT)JwzpBLJLUiAzHF6p)L2H&{}f7pKLqVo+3N
nFA`0tCG}DKmF?7+ZvdyS;`pQy6Lk2K00000NkvXXu0mjfgGGNF
diff --git a/c/doc/api_reference/tab_a.png b/c/doc/api_reference/tab_a.png
deleted file mode 100644
index 170a784114dae128e94ed1f2f074bca70d1c92d2..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 124
zcmeAS@N?(olHy`uVBq!ia0vp^j6kfy!2~3aiye;!QqG<(jv*C{Z|5H5WN_qQPQEt%
z!D%O!-}-rhW&MwLh%p^*>9AEWe)+D4W0qv-R3)Pl2A;Y1{Nh8u=3I}j`*-a9@2@YV
YKQCkQ6e(m{2Q-es)78&qol`;+0GNgh%teF!%WXO?%BLs!-BjV
zy*Mq?k4OkQHGH3E@jPK|tKqZ7Tib%Tg1o9)1?12Dl)v;vc{1yyl@oy0F?hQAxvX
-
-
-
-
-
-Microsoft Azure IoT Device SDK for C: c/common/inc/threadapi.h File Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Microsoft Azure IoT Device SDK for C
- 1.0.0-preview.1.0.0
-
- The Microsoft Azure IoT device libraries for C contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
This module implements support for creating new threads, terminating threads and sleeping threads.
-More...
-
#include "macro_utils.h"
-
-
Go to the source code of this file.
-
-
- enum THREADAPI_RESULT_TAG Enumeration specifying the possible return values for the APIs in this module.
-
-
-
-
-THREADAPI_RESULT ThreadAPI_Create (THREAD_HANDLE *threadHandle, THREAD_START_FUNC func, void *arg)
- Creates a thread with the entry point specified by the func
argument. More...
-
-THREADAPI_RESULT ThreadAPI_Join (THREAD_HANDLE threadHandle, int *res)
- Blocks the calling thread by waiting on the thread identified by the threadHandle
argument to complete. More...
-
-void ThreadAPI_Exit (int res)
- This function is called by a thread when the thread exits. More...
-
-void ThreadAPI_Sleep (unsigned int milliseconds)
- Sleeps the current thread for the given number of milliseconds. More...
-
-
-
-
This module implements support for creating new threads, terminating threads and sleeping threads.
-
-
-
-
-
-
- THREADAPI_RESULT ThreadAPI_Create
- (
- THREAD_HANDLE *
- threadHandle ,
-
-
-
-
- THREAD_START_FUNC
- func ,
-
-
-
-
- void *
- arg
-
-
-
- )
-
-
-
-
-
-
Creates a thread with the entry point specified by the func
argument.
-
Parameters
-
- threadHandle The handle to the new thread is returned in this pointer.
- func A function pointer that indicates the entry point to the new thread.
- arg A void pointer that must be passed to the function pointed to by func
.
-
-
-
-
Returns THREADAPI_OK
if the API call is successful or an error code in case it fails.
-
-
-
-
-
-
-
-
- void ThreadAPI_Exit
- (
- int
- res )
-
-
-
-
-
-
This function is called by a thread when the thread exits.
-
Parameters
-
- res An integer that represents the exit status of the thread.
-
-
-
-
This function is called by a thread when the thread exits in order to return a result value to the caller of the ThreadAPI_Join function. The res
value must be copied into the res
out argument passed to the ThreadAPI_Join function.
-
-
-
-
-
-
-
-
- THREADAPI_RESULT ThreadAPI_Join
- (
- THREAD_HANDLE
- threadHandle ,
-
-
-
-
- int *
- res
-
-
-
- )
-
-
-
-
-
-
Blocks the calling thread by waiting on the thread identified by the threadHandle
argument to complete.
-
Parameters
-
- threadHandle The handle of the thread to wait for completion.
- res The result returned by the thread which is passed to the ThreadAPI_Exit function.
-
-
-
-
When the threadHandle
thread completes, all resources associated with the thread must be released and the thread handle will no longer be valid.
-
Returns THREADAPI_OK
if the API call is successful or an error code in case it fails.
-
-
-
-
-
-
-
-
- void ThreadAPI_Sleep
- (
- unsigned int
- milliseconds )
-
-
-
-
-
-
Sleeps the current thread for the given number of milliseconds.
-
Parameters
-
- milliseconds The number of milliseconds to sleep.
-
-
-
-
-
-
-
-
-
-
-
diff --git a/c/doc/api_reference/threadapi_8h_source.html b/c/doc/api_reference/threadapi_8h_source.html
deleted file mode 100644
index 3d86d055..00000000
--- a/c/doc/api_reference/threadapi_8h_source.html
+++ /dev/null
@@ -1,143 +0,0 @@
-
-
-
-
-
-
-Microsoft Azure IoT Device SDK for C: c/common/inc/threadapi.h Source File
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Microsoft Azure IoT Device SDK for C
- 1.0.0-preview.1.0.0
-
- The Microsoft Azure IoT device libraries for C contain code that facilitates building devices and applications that connect to and are managed by Azure IoT Hub services.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the documentation of this file.
-
-
-
-
-
-
-
-
-
-
16 #include "macro_utils.h"
-
-
18 typedef int(*THREAD_START_FUNC)(
void *);
-
-
20 #define THREADAPI_RESULT_VALUES \
-
-
22 THREADAPI_INVALID_ARG, \
-
23 THREADAPI_NO_MEMORY, \
-
-
-
-
-
31 typedef void * THREAD_HANDLE;
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
THREADAPI_RESULT ThreadAPI_Create(THREAD_HANDLE *threadHandle, THREAD_START_FUNC func, void *arg)
Creates a thread with the entry point specified by the func argument.
-
void ThreadAPI_Exit(int res)
This function is called by a thread when the thread exits.
-
THREADAPI_RESULT ThreadAPI_Join(THREAD_HANDLE threadHandle, int *res)
Blocks the calling thread by waiting on the thread identified by the threadHandle argument to complet...
-
void ThreadAPI_Sleep(unsigned int milliseconds)
Sleeps the current thread for the given number of milliseconds.
-
enum THREADAPI_RESULT_TAG THREADAPI_RESULT
Enumeration specifying the possible return values for the APIs in this module.
-
-
-
-
-
diff --git a/c/iothub_client/inc/iothub_message.h b/c/iothub_client/inc/iothub_message.h
index 4c413f66..cb26a72f 100644
--- a/c/iothub_client/inc/iothub_message.h
+++ b/c/iothub_client/inc/iothub_message.h
@@ -1,6 +1,11 @@
// Copyright (c) Microsoft. All rights reserved.
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
+/** @file iothub_message.h
+* @brief The @c IoTHub_Message component encapsulates one message that
+* can be transferred by an IoT hub client.
+*/
+
#ifndef IOTHUB_MESSAGE_H
#define IOTHUB_MESSAGE_H
@@ -21,6 +26,9 @@ extern "C"
IOTHUB_MESSAGE_INVALID_TYPE, \
IOTHUB_MESSAGE_ERROR \
+/** @brief Enumeration specifying the status of calls to various
+ * APIs in this module.
+ */
DEFINE_ENUM(IOTHUB_MESSAGE_RESULT, IOTHUB_MESSAGE_RESULT_VALUES);
#define IOTHUBMESSAGE_CONTENT_TYPE_VALUES \
@@ -28,20 +36,101 @@ IOTHUBMESSAGE_BYTEARRAY, \
IOTHUBMESSAGE_STRING, \
IOTHUBMESSAGE_UNKNOWN \
+/** @brief Enumeration specifying the content type of the a given
+ * message.
+ */
DEFINE_ENUM(IOTHUBMESSAGE_CONTENT_TYPE, IOTHUBMESSAGE_CONTENT_TYPE_VALUES);
typedef void* IOTHUB_MESSAGE_HANDLE;
+/**
+ * @brief Creates a new IoT hub message from a byte array. The type of the
+ * message will be set to @c IOTHUBMESSAGE_BYTEARRAY.
+ *
+ * @param byteArray The byte array from which the message is to be created.
+ * @param size The size of the byte array.
+ *
+ * @return A valid @c IOTHUB_MESSAGE_HANDLE if the message was successfully
+ * created or @c NULL in case an error occurs.
+ */
extern IOTHUB_MESSAGE_HANDLE IoTHubMessage_CreateFromByteArray(const unsigned char* byteArray, size_t size);
+
+/**
+ * @brief Creates a new IoT hub message from a null terminated string. The
+ * type of the message will be set to @c IOTHUBMESSAGE_STRING.
+ *
+ * @param source The null terminated string from which the message is to be
+ * created.
+ *
+ * @return A valid @c IOTHUB_MESSAGE_HANDLE if the message was successfully
+ * created or @c NULL in case an error occurs.
+ */
extern IOTHUB_MESSAGE_HANDLE IoTHubMessage_CreateFromString(const char* source);
+/**
+ * @brief Creates a new IoT hub message with the content identical to that
+ * of the @p iotHubMessageHandle parameter.
+ *
+ * @param iotHubMessageHandle Handle to the message that is to be cloned.
+ *
+ * @return A valid @c IOTHUB_MESSAGE_HANDLE if the message was successfully
+ * cloned or @c NULL in case an error occurs.
+ */
extern IOTHUB_MESSAGE_HANDLE IoTHubMessage_Clone(IOTHUB_MESSAGE_HANDLE iotHubMessageHandle);
+/**
+ * @brief Fetches a pointer and size for the data associated with the IoT
+ * hub message handle. If the content type of the message is not
+ * @c IOTHUBMESSAGE_BYTEARRAY then the function returns
+ * @c IOTHUB_MESSAGE_INVALID_ARG.
+ *
+ * @param iotHubMessageHandle Handle to the message.
+ * @param buffer Pointer to the memory location where the
+ * pointer to the buffer will be written.
+ * @param size The size of the buffer will be written to
+ * this address.
+ *
+ * @return Returns IOTHUB_MESSAGE_OK if the byte array was fetched successfully
+ * or an error code otherwise.
+ */
extern IOTHUB_MESSAGE_RESULT IoTHubMessage_GetByteArray(IOTHUB_MESSAGE_HANDLE iotHubMessageHandle, const unsigned char** buffer, size_t* size);
+
+/**
+ * @brief Returns the null terminated string stored in the message.
+ * If the content type of the message is not @c IOTHUBMESSAGE_STRING
+ * then the function returns @c NULL.
+ *
+ * @param iotHubMessageHandle Handle to the message.
+ *
+ * @return @c NULL if an error occurs or a pointer to the stored null
+ * terminated string otherwise.
+ */
extern const char* IoTHubMessage_GetString(IOTHUB_MESSAGE_HANDLE iotHubMessageHandle);
+
+/**
+ * @brief Returns the content type of the message given by parameter
+ * @c iotHubMessageHandle.
+ *
+ * @param iotHubMessageHandle Handle to the message.
+ *
+ * @return An @c IOTHUBMESSAGE_CONTENT_TYPE value.
+ */
extern IOTHUBMESSAGE_CONTENT_TYPE IoTHubMessage_GetContentType(IOTHUB_MESSAGE_HANDLE iotHubMessageHandle);
+
+/**
+ * @brief Gets a handle to the message's properties map.
+ *
+ * @param iotHubMessageHandle Handle to the message.
+ *
+ * @return A @c MAP_HANDLE pointing to the properties map for this message.
+ */
extern MAP_HANDLE IoTHubMessage_Properties(IOTHUB_MESSAGE_HANDLE iotHubMessageHandle);
+/**
+ * @brief Frees all resources associated with the given message handle.
+ *
+ * @param iotHubMessageHandle Handle to the message.
+ */
extern void IoTHubMessage_Destroy(IOTHUB_MESSAGE_HANDLE iotHubMessageHandle);
#ifdef __cplusplus