rtm-api
Version:
Remember the Milk API Interface
173 lines (136 loc) • 8.06 kB
HTML
<html lang="en">
<head>
<meta charset="utf-8">
<title>response/error.js - Documentation</title>
<script src="scripts/prettify/prettify.js"></script>
<script src="scripts/prettify/lang-css.js"></script>
<!--[if lt IE 9]>
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<link type="text/css" rel="stylesheet" href="styles/prettify.css">
<link type="text/css" rel="stylesheet" href="styles/jsdoc.css">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
<input type="checkbox" id="nav-trigger" class="nav-trigger" />
<label for="nav-trigger" class="navicon-button x">
<div class="navicon"></div>
</label>
<label for="nav-trigger" class="overlay"></label>
<nav>
<h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="RTMClient.html">RTMClient</a><ul class='methods'><li data-type='method'><a href="RTMClient.html#get">get</a></li><li data-type='method'><a href="RTMClient.html#~auth/getAuthToken">auth/getAuthToken</a></li><li data-type='method'><a href="RTMClient.html#~auth/getAuthUrl">auth/getAuthUrl</a></li><li data-type='method'><a href="RTMClient.html#~auth/verifyAuthToken">auth/verifyAuthToken</a></li><li data-type='method'><a href="RTMClient.html#~user/create">user/create</a></li><li data-type='method'><a href="RTMClient.html#~user/export">user/export</a></li><li data-type='method'><a href="RTMClient.html#~user/exportToString">user/exportToString</a></li><li data-type='method'><a href="RTMClient.html#~user/import">user/import</a></li><li data-type='method'><a href="RTMClient.html#~user/importFromString">user/importFromString</a></li></ul></li><li><a href="RTMError.html">RTMError</a><ul class='methods'><li data-type='method'><a href="RTMError.html#.networkError">networkError</a></li><li data-type='method'><a href="RTMError.html#.rateLimitError">rateLimitError</a></li><li data-type='method'><a href="RTMError.html#.referenceError">referenceError</a></li><li data-type='method'><a href="RTMError.html#.responseError">responseError</a></li><li data-type='method'><a href="RTMError.html#.serverError">serverError</a></li><li data-type='method'><a href="RTMError.html#toString">toString</a></li></ul></li><li><a href="RTMList.html">RTMList</a></li><li><a href="RTMResponse.html">RTMResponse</a><ul class='methods'><li data-type='method'><a href="RTMResponse.html#has">has</a></li><li data-type='method'><a href="RTMResponse.html#toString">toString</a></li></ul></li><li><a href="RTMSuccess.html">RTMSuccess</a><ul class='methods'><li data-type='method'><a href="RTMSuccess.html#toString">toString</a></li></ul></li><li><a href="RTMTask.html">RTMTask</a></li><li><a href="RTMUser.html">RTMUser</a><ul class='methods'><li data-type='method'><a href="RTMUser.html#clearTaskIndexCache">clearTaskIndexCache</a></li><li data-type='method'><a href="RTMUser.html#get">get</a></li><li data-type='method'><a href="RTMUser.html#verifyAuthToken">verifyAuthToken</a></li><li data-type='method'><a href="RTMUser.html#~lists/add">lists/add</a></li><li data-type='method'><a href="RTMUser.html#~lists/archive">lists/archive</a></li><li data-type='method'><a href="RTMUser.html#~lists/get">lists/get</a></li><li data-type='method'><a href="RTMUser.html#~lists/remove">lists/remove</a></li><li data-type='method'><a href="RTMUser.html#~lists/rename">lists/rename</a></li><li data-type='method'><a href="RTMUser.html#~tasks/add">tasks/add</a></li><li data-type='method'><a href="RTMUser.html#~tasks/addTags">tasks/addTags</a></li><li data-type='method'><a href="RTMUser.html#~tasks/complete">tasks/complete</a></li><li data-type='method'><a href="RTMUser.html#~tasks/decreasePriority">tasks/decreasePriority</a></li><li data-type='method'><a href="RTMUser.html#~tasks/get">tasks/get</a></li><li data-type='method'><a href="RTMUser.html#~tasks/getTask">tasks/getTask</a></li><li data-type='method'><a href="RTMUser.html#~tasks/increasePriority">tasks/increasePriority</a></li><li data-type='method'><a href="RTMUser.html#~tasks/move">tasks/move</a></li><li data-type='method'><a href="RTMUser.html#~tasks/postpone">tasks/postpone</a></li><li data-type='method'><a href="RTMUser.html#~tasks/priority">tasks/priority</a></li><li data-type='method'><a href="RTMUser.html#~tasks/remove">tasks/remove</a></li><li data-type='method'><a href="RTMUser.html#~tasks/removeTags">tasks/removeTags</a></li><li data-type='method'><a href="RTMUser.html#~tasks/setDueDate">tasks/setDueDate</a></li><li data-type='method'><a href="RTMUser.html#~tasks/setName">tasks/setName</a></li><li data-type='method'><a href="RTMUser.html#~tasks/setURL">tasks/setURL</a></li><li data-type='method'><a href="RTMUser.html#~tasks/uncomplete">tasks/uncomplete</a></li></ul></li></ul>
</nav>
<div id="main">
<h1 class="page-title">response/error.js</h1>
<section>
<article>
<pre class="prettyprint source linenums"><code>'use strict';
const RTMResponse = require('./response.js');
/**
* ### RTM Error Response
*
* This Class represents a failed request to the RTM API Server: the
* RTM API Server returned a response with a status of 'fail'. This
* Class will include the error code and error message from the
* response.
*
* `RTMError` extends {@link RTMResponse}
* @class
* @alias RTMError
*/
class RTMError extends RTMResponse{
/**
* Create a new RTM Error Response
* @param {number} code Error Code
* @param {string} msg Error Message
* @constructor
*/
constructor(code, msg) {
super(RTMResponse.STATUS_FAIL);
this._code = parseInt(code);
this._msg = msg;
}
/**
* The RTM Error Code
* @type {number}
*/
get code() {
return this._code;
}
/**
* The RTM Error Message
* @type {string}
*/
get msg() {
return this._msg;
}
/**
* Get a String representation of the Error
* @returns {string}
*/
toString() {
return super.toString() + " ERROR " + this._code + ": " + this._msg;
}
}
// === CUSTOM ERRORS ==== //
/**
* Create a new `RTMError` that represents a network error.
*
* Error Code: `-1`
* @returns {RTMError}
*/
RTMError.networkError = function() {
return new RTMError(-1, "Network Error: Could not make request to RTM API Server");
};
/**
* Create a new `RTMError` that represents an API response error.
*
* Error Code: `-2`
* @returns {RTMError}
*/
RTMError.responseError = function() {
return new RTMError(-2, "Response Error: Could not parse the response from the RTM API Server");
};
/**
* Create a new `RTMError` that represents an index error (ie, task index is out
* of range).
*
* Error Code: `-3`
* @returns {RTMError}
*/
RTMError.referenceError = function() {
return new RTMError(-3, "Reference Error: Could not find item by reference index number or name");
};
/**
* Create a new `RTMError` that represents an RTM API Rate Limit (the RTM API
* returned a HTTP Status code of `503`).
*
* Error Code: `-4`
* @returns {RTMError}
*/
RTMError.rateLimitError = function() {
return new RTMError(-4, "Rate Limit Error: Your Account has temporarily reached the RTM API Rate Limit. Please wait a minute and try the request again later.");
};
/**
* Create a new `RTMError` that represents an RTM API Server Error (the RTM API
* returned a HTTP Status code of `5xx` - excluding `503`).
*
* Error Code: `-5`
* @returns {RTMError}
*/
RTMError.serverError = function() {
return new RTMError(-5, "RTM API Server Error: The RTM API Server is not responding. Please try the request again later.");
};
module.exports = RTMError;</code></pre>
</article>
</section>
</div>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.5.5</a> on Wed Jan 09 2019 17:57:03 GMT-0500 (EST) using the <a href="https://github.com/dwaring87/docdash">@dwaring87/docdash</a> theme.
</footer>
<script>prettyPrint();</script>
<script src="scripts/linenumber.js"></script>
</body>
</html>