jive-sdk
Version:
Node.js SDK for Jive Software to assist with the development of add-ons
2,732 lines (977 loc) • 36.9 kB
HTML
<html lang="en">
<head>
<meta charset="utf-8">
<title>Jive SDK Module: abstractInstances</title>
<!--[if lt IE 9]>
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<link type="text/css" rel="stylesheet" href="styles/sunlight.default.css">
<link type="text/css" rel="stylesheet" href="styles/site.spacelab.css">
</head>
<body>
<div class="container-fluid">
<div class="navbar navbar-fixed-top navbar-inverse">
<div class="navbar-inner">
<a class="brand" href="index.html">Jive SDK</a>
<ul class="nav">
<li class="dropdown">
<a href="modules.list.html" class="dropdown-toggle" data-toggle="dropdown">Modules<b
class="caret"></b></a>
<ul class="dropdown-menu ">
<li>
<a href="module-abstractDefinitions.html">abstractDefinitions</a>
</li>
<li>
<a href="module-abstractInstances.html">abstractInstances</a>
</li>
<li>
<a href="module-addOnRoutes.html">addOnRoutes</a>
</li>
<li>
<a href="module-api.html">api</a>
</li>
<li>
<a href="module-community.html">community</a>
</li>
<li>
<a href="module-constants.html">constants</a>
</li>
<li>
<a href="module-devRoutes.html">devRoutes</a>
</li>
<li>
<a href="module-events.html">events</a>
</li>
<li>
<a href="module-extensions.html">extensions</a>
</li>
<li>
<a href="module-extstreamsInstances.html">extstreamsInstances</a>
</li>
<li>
<a href="module-jiveutil.html">jiveutil</a>
</li>
<li>
<a href="module-oauthRoutes.html">oauthRoutes</a>
</li>
<li>
<a href="module-request.html">request</a>
</li>
<li>
<a href="module-security.html">security</a>
</li>
<li>
<a href="module-service.html">service</a>
</li>
<li>
<a href="module-tasks.html">tasks</a>
</li>
<li>
<a href="module-tileInstances.html">tileInstances</a>
</li>
<li>
<a href="module-tileRoutes.html">tileRoutes</a>
</li>
<li>
<a href="module-tilesDefinitions.html">tilesDefinitions</a>
</li>
<li>
<a href="module-webhooks.html">webhooks</a>
</li>
</ul>
</li>
<li class="dropdown">
<a href="classes.list.html" class="dropdown-toggle" data-toggle="dropdown">Classes<b
class="caret"></b></a>
<ul class="dropdown-menu ">
<li>
<a href="extstreamsDefinitions.html">extstreamsDefinitions</a>
</li>
<li>
<a href="filePersistence.html">filePersistence</a>
</li>
<li>
<a href="memoryPersistence.html">memoryPersistence</a>
</li>
<li>
<a href="memoryScheduler.html">memoryScheduler</a>
</li>
<li>
<a href="oauthHandler.html">oauthHandler</a>
</li>
</ul>
</li>
</ul>
</div>
</div>
<div class="row-fluid">
<div class="span8">
<div id="main">
<h1 class="page-title">Module: abstractInstances</h1>
<section>
<header>
<h2>
abstractInstances
</h2>
</header>
<article>
<div class="container-overview">
<div class="description"><p>Library of common methods for manipulating instances (tiles and extstreams).</p></div>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="instances.js.html">jive-sdk-api/lib/tile/instances.js</a>, <a href="instances.js.html#sunlight-1-line-17">line 17</a>
</li></ul></dd>
</dl>
</div>
<h3 class="subsection-title">Methods</h3>
<dl>
<dt>
<h4 class="name" id="deleteExternalProps"><span class="type-signature"><static> </span>deleteExternalProps<span class="signature">(instance)</span><span class="type-signature"> → {Promise}</span></h4>
</dt>
<dd>
<div class="description">
<p>Removes the map of extended properties on the instance, in the remote community.</p>
</div>
<h5>Parameters:</h5>
<table class="params table table-striped">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>instance</code></td>
<td class="type">
<span class="param-type">Object</span>
</td>
<td class="description last"></td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="instances.js.html">jive-sdk-api/lib/tile/instances.js</a>, <a href="instances.js.html#sunlight-1-line-356">line 356</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
<p>Promise</p>
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Promise</span>
</dd>
</dl>
</dd>
<dt>
<h4 class="name" id="find"><span class="type-signature"><static> </span>find<span class="signature">(keyValues, expectOne, cursor)</span><span class="type-signature"> → {Promise}</span></h4>
</dt>
<dd>
<div class="description">
<p>Find instances in persistence using the provided key-value criteria map. For example:</p>
<p><pre>
{
'name': 'samplelist',
'config.number' : 25
}
</pre>
<br>
On success, the returned promise will be resolved with an array of the located objects (which may be
empty if none is found matching the criteria). If failure,
the promise will be rejected with an error.</p>
</div>
<h5>Parameters:</h5>
<table class="params table table-striped">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>keyValues</code></td>
<td class="type">
<span class="param-type">Object</span>
</td>
<td class="description last"></td>
</tr>
<tr>
<td class="name"><code>expectOne</code></td>
<td class="type">
<span class="param-type">Boolean</span>
</td>
<td class="description last"><p>If true, the promise will be resolved with at most 1 found item, or null (if none are found).</p></td>
</tr>
<tr>
<td class="name"><code>cursor</code></td>
<td class="type">
<span class="param-type">Boolean</span>
</td>
<td class="description last"><p>If true, the promise will be resolved with a collection cursor object.</p></td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="instances.js.html">jive-sdk-api/lib/tile/instances.js</a>, <a href="instances.js.html#sunlight-1-line-83">line 83</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
<p>Promise</p>
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Promise</span>
</dd>
</dl>
</dd>
<dt>
<h4 class="name" id="findAll"><span class="type-signature"><static> </span>findAll<span class="signature">(cursor)</span><span class="type-signature"> → {Promise}</span></h4>
</dt>
<dd>
<div class="description">
<p>Searches persistence for instances.
The collection that is searched is defined in subclasses of this class (@see abstractInstances:getCollection).
The promise will resolve with an empty array, or populated array, depending on whether any instances exist.</p>
</div>
<h5>Parameters:</h5>
<table class="params table table-striped">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>cursor</code></td>
<td class="type">
<span class="param-type">Boolean</span>
</td>
<td class="description last"><p>If true, the promise will be resolved with a collection cursor object.</p></td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="instances.js.html">jive-sdk-api/lib/tile/instances.js</a>, <a href="instances.js.html#sunlight-1-line-163">line 163</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
<p>Promise</p>
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Promise</span>
</dd>
</dl>
</dd>
<dt>
<h4 class="name" id="findByCommunity"><span class="type-signature"><static> </span>findByCommunity<span class="signature">(communityName)</span><span class="type-signature"> → {Promise}</span></h4>
</dt>
<dd>
<div class="description">
<p>Searches persistence for an instance that matches the given community name (the 'community' attribute).
The collection that is searched is defined in subclasses of this class (@see abstractInstances:getCollection).
If one is not found, the promise will resolve a null (undefined) value.</p>
</div>
<h5>Parameters:</h5>
<table class="params table table-striped">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>communityName</code></td>
<td class="type">
<span class="param-type">String</span>
</td>
<td class="description last"></td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="instances.js.html">jive-sdk-api/lib/tile/instances.js</a>, <a href="instances.js.html#sunlight-1-line-152">line 152</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
<p>Promise</p>
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Promise</span>
</dd>
</dl>
</dd>
<dt>
<h4 class="name" id="findByDefinitionName"><span class="type-signature"><static> </span>findByDefinitionName<span class="signature">(definitionName, cursor)</span><span class="type-signature"> → {Promise}</span></h4>
</dt>
<dd>
<div class="description">
<p>Searches persistence for instances that matches the given definition name (the 'name' attribute).
The collection that is searched is defined in subclasses of this class (@see abstractInstances:getCollection).
The promise will resolve with an empty array, or populated array, depending on whether any instances matched the search criteria.</p>
</div>
<h5>Parameters:</h5>
<table class="params table table-striped">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>definitionName</code></td>
<td class="type">
<span class="param-type">String</span>
</td>
<td class="description last"></td>
</tr>
<tr>
<td class="name"><code>cursor</code></td>
<td class="type">
<span class="param-type">Boolean</span>
</td>
<td class="description last"><p>If true, the promise will be resolved with a collection cursor object.</p></td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="instances.js.html">jive-sdk-api/lib/tile/instances.js</a>, <a href="instances.js.html#sunlight-1-line-108">line 108</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
<p>Promise</p>
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Promise</span>
</dd>
</dl>
</dd>
<dt>
<h4 class="name" id="findByGuid"><span class="type-signature"><static> </span>findByGuid<span class="signature">(guid)</span><span class="type-signature"> → {Promise}</span></h4>
</dt>
<dd>
<div class="description">
<p>Searches persistence for an instance that matches the given guid (the 'guid' attribute).
The collection that is searched is defined in subclasses of this class (@see abstractInstances:getCollection).
If one is not found, the promise will resolve a null (undefined) value.</p>
</div>
<h5>Parameters:</h5>
<table class="params table table-striped">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>guid</code></td>
<td class="type">
<span class="param-type">String</span>
</td>
<td class="description last"></td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="instances.js.html">jive-sdk-api/lib/tile/instances.js</a>, <a href="instances.js.html#sunlight-1-line-130">line 130</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
<p>Promise</p>
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Promise</span>
</dd>
</dl>
</dd>
<dt>
<h4 class="name" id="findByID"><span class="type-signature"><static> </span>findByID<span class="signature">(instanceID)</span><span class="type-signature"> → {Promise}</span></h4>
</dt>
<dd>
<div class="description">
<p>Searches persistence for an instance that matches the given ID (the 'id' attribute).
The collection that is searched is defined in subclasses of this class (@see abstractInstances:getCollection).
If one is not found, the promise will resolve a null (undefined) value.</p>
</div>
<h5>Parameters:</h5>
<table class="params table table-striped">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>instanceID</code></td>
<td class="type">
<span class="param-type">String</span>
</td>
<td class="description last"><p>Id of the instance to be retrieved.</p></td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="instances.js.html">jive-sdk-api/lib/tile/instances.js</a>, <a href="instances.js.html#sunlight-1-line-96">line 96</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
<p>Promise</p>
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Promise</span>
</dd>
</dl>
</dd>
<dt>
<h4 class="name" id="findByScope"><span class="type-signature"><static> </span>findByScope<span class="signature">(scope)</span><span class="type-signature"> → {Promise}</span></h4>
</dt>
<dd>
<div class="description">
<p>Searches persistence for an instance that matches the given scope (the 'scope' attribute).
The collection that is searched is defined in subclasses of this class (@see abstractInstances:getCollection).
If one is not found, the promise will resolve a null (undefined) value.</p>
</div>
<h5>Parameters:</h5>
<table class="params table table-striped">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>scope</code></td>
<td class="type">
<span class="param-type">String</span>
</td>
<td class="description last"></td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="instances.js.html">jive-sdk-api/lib/tile/instances.js</a>, <a href="instances.js.html#sunlight-1-line-119">line 119</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
<p>Promise</p>
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Promise</span>
</dd>
</dl>
</dd>
<dt>
<h4 class="name" id="findByURL"><span class="type-signature"><static> </span>findByURL<span class="signature">(url)</span><span class="type-signature"> → {Promise}</span></h4>
</dt>
<dd>
<div class="description">
<p>Searches persistence for an instance that matches the given push URL (the 'url' attribute).
The collection that is searched is defined in subclasses of this class (@see abstractInstances:getCollection).
If one is not found, the promise will resolve a null (undefined) value.</p>
</div>
<h5>Parameters:</h5>
<table class="params table table-striped">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>url</code></td>
<td class="type">
<span class="param-type">String</span>
</td>
<td class="description last"></td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="instances.js.html">jive-sdk-api/lib/tile/instances.js</a>, <a href="instances.js.html#sunlight-1-line-141">line 141</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
<p>Promise</p>
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Promise</span>
</dd>
</dl>
</dd>
<dt>
<h4 class="name" id="getExternalProps"><span class="type-signature"><static> </span>getExternalProps<span class="signature">(instance)</span><span class="type-signature"> → {Promise}</span></h4>
</dt>
<dd>
<div class="description">
<p>Retrieves a map of extended properties set on the instance, in the remote jive community.</p>
</div>
<h5>Parameters:</h5>
<table class="params table table-striped">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>instance</code></td>
<td class="type">
<span class="param-type">Object</span>
</td>
<td class="description last"></td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="instances.js.html">jive-sdk-api/lib/tile/instances.js</a>, <a href="instances.js.html#sunlight-1-line-332">line 332</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
<p>Promise</p>
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Promise</span>
</dd>
</dl>
</dd>
<dt>
<h4 class="name" id="refreshAccessToken"><span class="type-signature"><static> </span>refreshAccessToken<span class="signature">(instance)</span><span class="type-signature"> → {Promise}</span></h4>
</dt>
<dd>
<div class="description">
<p>Performs an OAuth2 access token refresh with the jive community associated with the passed in instance.
If successful, the promise is resolved with the instance object containing the new access token (accessToken). Note
that the changes to the instance is not actually saved into persistence at this point.</p>
</div>
<h5>Parameters:</h5>
<table class="params table table-striped">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>instance</code></td>
<td class="type">
<span class="param-type">Object</span>
</td>
<td class="description last"><p>Must contain the following fields:</p>
<h6>Properties</h6>
<table class="params table table-striped">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>jiveCommunity</code></td>
<td class="type">
<span class="param-type">String</span>
</td>
<td class="description last"><p>Points to an existing community</p></td>
</tr>
<tr>
<td class="name"><code>refreshToken</code></td>
<td class="type">
<span class="param-type">String</span>
</td>
<td class="description last"><p>Refresh token used for acquiring a new access token</p></td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="instances.js.html">jive-sdk-api/lib/tile/instances.js</a>, <a href="instances.js.html#sunlight-1-line-304">line 304</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
<p>Promise</p>
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Promise</span>
</dd>
</dl>
</dd>
<dt>
<h4 class="name" id="register"><span class="type-signature"><static> </span>register<span class="signature">(jiveUrl, pushUrl, config, name, code, guid)</span><span class="type-signature"> → {Promise}</span></h4>
</dt>
<dd>
<div class="description">
<p>Registers a new tile or extstream instance:</p>
<ol>
<li>Try to locate a community based on the jiveUrl</li>
<li>If no community is located matching the jiveUrl, the returned promise is rejected with an error.</li>
<li>If a community is located, do an OAuth2 access token exchange with that server using the authorization code ('code') provided.</li>
<li>A tile or extstream instance is created (or updated, if it already exists) using the oauth credentials and register parameters,
and resolved on the returned promise.</li>
</ol>
</div>
<h5>Parameters:</h5>
<table class="params table table-striped">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>jiveUrl</code></td>
<td class="type">
<span class="param-type">String</span>
</td>
<td class="description last"></td>
</tr>
<tr>
<td class="name"><code>pushUrl</code></td>
<td class="type">
<span class="param-type">String</span>
</td>
<td class="description last"></td>
</tr>
<tr>
<td class="name"><code>config</code></td>
<td class="type">
<span class="param-type">Object</span>
</td>
<td class="description last"></td>
</tr>
<tr>
<td class="name"><code>name</code></td>
<td class="type">
<span class="param-type">String</span>
</td>
<td class="description last"></td>
</tr>
<tr>
<td class="name"><code>code</code></td>
<td class="type">
<span class="param-type">String</span>
</td>
<td class="description last"></td>
</tr>
<tr>
<td class="name"><code>guid</code></td>
<td class="type">
<span class="param-type">String</span>
</td>
<td class="description last"></td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="instances.js.html">jive-sdk-api/lib/tile/instances.js</a>, <a href="instances.js.html#sunlight-1-line-249">line 249</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
<p>Promise</p>
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Promise</span>
</dd>
</dl>
</dd>
<dt>
<h4 class="name" id="remove"><span class="type-signature"><static> </span>remove<span class="signature">(instanceID)</span><span class="type-signature"> → {Promise}</span></h4>
</dt>
<dd>
<div class="description">
<p>Removes an instance from persistence with the specified id (attribute 'id').
The collection that is searched is defined in subclasses of this class (@see abstractInstances:getCollection).</p>
</div>
<h5>Parameters:</h5>
<table class="params table table-striped">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>instanceID</code></td>
<td class="type">
<span class="param-type">String</span>
</td>
<td class="description last"></td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="instances.js.html">jive-sdk-api/lib/tile/instances.js</a>, <a href="instances.js.html#sunlight-1-line-173">line 173</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
<p>Promise</p>
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Promise</span>
</dd>
</dl>
</dd>
<dt>
<h4 class="name" id="save"><span class="type-signature"><static> </span>save<span class="signature">(instance)</span><span class="type-signature"> → {Promise}</span></h4>
</dt>
<dd>
<div class="description">
<p>Save an instance to persistence. If the object does not have an id attribute, a random String is assigned.
If the object is already present in persistence, it will be updated; otherwise it will be inserted.
On success, the returned promise will be resolved with the inserted or updated object; if failure,
the promise will be rejected with an error.</p>
</div>
<h5>Parameters:</h5>
<table class="params table table-striped">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>instance</code></td>
<td class="type">
<span class="param-type">Object</span>
</td>
<td class="description last"></td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="instances.js.html">jive-sdk-api/lib/tile/instances.js</a>, <a href="instances.js.html#sunlight-1-line-58">line 58</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
<p>Promise</p>
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Promise</span>
</dd>
</dl>
</dd>
<dt>
<h4 class="name" id="setExternalProps"><span class="type-signature"><static> </span>setExternalProps<span class="signature">(instance, props)</span><span class="type-signature"> → {Promise}</span></h4>
</dt>
<dd>
<div class="description">
<p>Sets a map of extended properties on the instance, in the remote jive community.</p>
</div>
<h5>Parameters:</h5>
<table class="params table table-striped">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>instance</code></td>
<td class="type">
<span class="param-type">Object</span>
</td>
<td class="description last"></td>
</tr>
<tr>
<td class="name"><code>props</code></td>
<td class="type">
<span class="param-type">Object</span>
</td>
<td class="description last"></td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="instances.js.html">jive-sdk-api/lib/tile/instances.js</a>, <a href="instances.js.html#sunlight-1-line-344">line 344</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
<p>Promise</p>
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Promise</span>
</dd>
</dl>
</dd>
</dl>
</article>
</section>
</div>
<div class="clearfix"></div>
<footer>
<span class="copyright">
Jive Software, Inc
</span>
<br />
<span class="jsdoc-message">
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.3.0-dev</a>
on Wed Jan 22 2014 12:29:38 GMT-0800 (PST) using the <a href="https://github.com/terryweiss/docstrap">DocStrap template</a>.
</span>
</footer>
</div>
<div class="span3">
<div id="toc"></div>
</div>
<br clear="both">
</div>
</div>
<script src="scripts/sunlight.js"></script>
<script src="scripts/sunlight.javascript.js"></script>
<script src="scripts/sunlight-plugin.doclinks.js"></script>
<script src="scripts/sunlight-plugin.linenumbers.js"></script>
<script src="scripts/sunlight-plugin.menu.js"></script>
<script src="scripts/jquery.min.js"></script>
<script src="scripts/jquery.scrollTo.js"></script>
<script src="scripts/jquery.localScroll.js"></script>
<script src="scripts/bootstrap-dropdown.js"></script>
<script src="scripts/toc.js"></script>
<script> Sunlight.highlightAll({lineNumbers:true, showMenu: true, enableDoclinks :true}); </script>
<script>
$( function () {
$( "#toc" ).toc( {
selectors : "h1,h2,h3,h4",
showAndHide : false,
scrollTo : 60
} );
$( "#toc>ul" ).addClass( "nav nav-pills nav-stacked" );
$( "#main span[id^='toc']" ).addClass( "toc-shim" );
} );
</script>
</body>
</html>