base-domain
Version:
simple module to help build Domain-Driven Design
1,222 lines (744 loc) • 34.4 kB
HTML
<html lang="en">
<head>
<meta charset="utf-8">
<title>BaseList</title>
<link rel="stylesheet" href="http://yui.yahooapis.com/3.9.1/build/cssgrids/cssgrids-min.css">
<link rel="stylesheet" href="../assets/vendor/prettify/prettify-min.css">
<link rel="stylesheet" href="../assets/css/main.css" id="site_styles">
<link rel="icon" href="../assets/favicon.ico">
<script src="http://yui.yahooapis.com/combo?3.9.1/build/yui/yui-min.js"></script>
</head>
<body class="yui3-skin-sam">
<div id="doc">
<div id="hd" class="yui3-g header">
<div class="yui3-u-3-4">
<h1><img src="../assets/css/logo.png" title="" width="117" height="52"></h1>
</div>
<div class="yui3-u-1-4 version">
<em>API Docs for: </em>
</div>
</div>
<div id="bd" class="yui3-g">
<div class="yui3-u-1-4">
<div id="docs-sidebar" class="sidebar apidocs">
<div id="api-list">
<h2 class="off-left">APIs</h2>
<div id="api-tabview" class="tabview">
<ul class="tabs">
<li><a href="#api-classes">Classes</a></li>
<li><a href="#api-modules">Modules</a></li>
</ul>
<div id="api-tabview-filter">
<input type="search" id="api-filter" placeholder="Type to filter APIs">
</div>
<div id="api-tabview-panel">
<ul id="api-classes" class="apis classes">
<li><a href="../classes/Base.html">Base</a></li>
<li><a href="../classes/BaseDict.html">BaseDict</a></li>
<li><a href="../classes/BaseFactory.html">BaseFactory</a></li>
<li><a href="../classes/BaseList.html">BaseList</a></li>
<li><a href="../classes/BaseModel.html">BaseModel</a></li>
<li><a href="../classes/BaseRepository.html">BaseRepository</a></li>
<li><a href="../classes/DictFactory.html">DictFactory</a></li>
<li><a href="../classes/DomainError.html">DomainError</a></li>
<li><a href="../classes/Entity.html">Entity</a></li>
<li><a href="../classes/Facade.html">Facade</a></li>
<li><a href="../classes/Fixture.html">Fixture</a></li>
<li><a href="../classes/FixtureModel.html">FixtureModel</a></li>
<li><a href="../classes/Includer.html">Includer</a></li>
<li><a href="../classes/ListFactory.html">ListFactory</a></li>
<li><a href="../classes/MasterRepository.html">MasterRepository</a></li>
<li><a href="../classes/PropInfo.html">PropInfo</a></li>
<li><a href="../classes/ResourceClientInterface.html">ResourceClientInterface</a></li>
<li><a href="../classes/TypeInfo.html">TypeInfo</a></li>
<li><a href="../classes/Util.html">Util</a></li>
</ul>
<ul id="api-modules" class="apis modules">
<li><a href="../modules/base-domain.html">base-domain</a></li>
</ul>
</div>
</div>
</div>
</div>
</div>
<div class="yui3-u-3-4">
<div id="api-options">
Show:
<label for="api-show-inherited">
<input type="checkbox" id="api-show-inherited" checked>
Inherited
</label>
<label for="api-show-protected">
<input type="checkbox" id="api-show-protected">
Protected
</label>
<label for="api-show-private">
<input type="checkbox" id="api-show-private">
Private
</label>
<label for="api-show-deprecated">
<input type="checkbox" id="api-show-deprecated">
Deprecated
</label>
</div>
<div class="apidocs">
<div id="docs-main">
<div class="content">
<h1>BaseList Class</h1>
<div class="box meta">
<div class="extends">
Extends <a href="../classes/BaseModel.html" class="crosslink">BaseModel</a>
</div>
<div class="foundat">
Defined in: <a href="../files/src_lib_base-list.coffee.html#l4"><code>src/lib/base-list.coffee:4</code></a>
</div>
Module: <a href="../modules/base-domain.html">base-domain</a>
</div>
<div class="box intro">
<p>list class of DDD pattern.</p>
</div>
<div id="classdocs" class="tabview">
<ul class="api-class-tabs">
<li class="api-class-tab index"><a href="#index">Index</a></li>
<li class="api-class-tab methods"><a href="#methods">Methods</a></li>
<li class="api-class-tab properties"><a href="#properties">Properties</a></li>
</ul>
<div>
<div id="index" class="api-class-tabpanel index">
<h2 class="off-left">Item Index</h2>
<div class="index-section methods">
<h3>Methods</h3>
<ul class="index-list methods extends">
<li class="index-item method public">
<a href="#method_containsEntity">containsEntity</a>
<span class="flag static">static</span>
</li>
<li class="index-item method private">
<a href="#method_emitLoaded">emitLoaded</a>
</li>
<li class="index-item method public">
<a href="#method_first">first</a>
</li>
<li class="index-item method">
<a href="#method_getAnonymousClass">getAnonymousClass</a>
</li>
<li class="index-item method inherited">
<a href="#method_getFacade">getFacade</a>
</li>
<li class="index-item method public inherited">
<a href="#method_getPropInfo">getPropInfo</a>
</li>
<li class="index-item method inherited">
<a href="#method_include">include</a>
</li>
<li class="index-item method inherited">
<a href="#method_inherit">inherit</a>
</li>
<li class="index-item method public">
<a href="#method_last">last</a>
</li>
<li class="index-item method public">
<a href="#method_on">on</a>
</li>
<li class="index-item method inherited">
<a href="#method_setEntityProp">setEntityProp</a>
</li>
<li class="index-item method">
<a href="#method_setIds">setIds</a>
</li>
<li class="index-item method">
<a href="#method_setItems">setItems</a>
</li>
<li class="index-item method protected">
<a href="#method_sort">sort</a>
</li>
<li class="index-item method public">
<a href="#method_toArray">toArray</a>
</li>
<li class="index-item method inherited">
<a href="#method_toPlainObject">toPlainObject</a>
</li>
<li class="index-item method inherited">
<a href="#method_unsetEntityProp">unsetEntityProp</a>
</li>
</ul>
</div>
<div class="index-section properties">
<h3>Properties</h3>
<ul class="index-list properties extends">
<li class="index-item property public">
<a href="#property_ids">ids</a>
</li>
<li class="index-item property">
<a href="#property_itemFactory">itemFactory</a>
</li>
<li class="index-item property protected">
<a href="#property_itemModelName">itemModelName</a>
<span class="flag static">static</span>
</li>
<li class="index-item property">
<a href="#property_items">items</a>
</li>
<li class="index-item property">
<a href="#property_loaded">loaded</a>
</li>
</ul>
</div>
</div>
<div id="methods" class="api-class-tabpanel">
<h2 class="off-left">Methods</h2>
<div id="method_containsEntity" class="method item public">
<h3 class="name"><code>containsEntity</code></h3>
<span class="paren">()</span>
<span class="returns-inline">
<span class="type">Boolean</span>
</span>
<span class="flag public">public</span>
<span class="flag static">static</span>
<div class="meta">
<p>
Defined in
<a href="../files/src_lib_base-list.coffee.html#l141"><code>src/lib/base-list.coffee:141</code></a>
</p>
</div>
<div class="description">
<p>returns item is Entity</p>
</div>
<div class="returns">
<h4>Returns:</h4>
<div class="returns-description">
<span class="type">Boolean</span>:
</div>
</div>
</div>
<div id="method_emitLoaded" class="method item private">
<h3 class="name"><code>emitLoaded</code></h3>
<span class="paren">()</span>
<span class="flag private">private</span>
<div class="meta">
<p>
Defined in
<a href="../files/src_lib_base-list.coffee.html#l244"><code>src/lib/base-list.coffee:244</code></a>
</p>
</div>
<div class="description">
<p>tell listeners emit loaded</p>
</div>
</div>
<div id="method_first" class="method item public">
<h3 class="name"><code>first</code></h3>
<span class="paren">()</span>
<span class="flag public">public</span>
<div class="meta">
<p>
Defined in
<a href="../files/src_lib_base-list.coffee.html#l163"><code>src/lib/base-list.coffee:163</code></a>
</p>
</div>
<div class="description">
<p>first item</p>
</div>
</div>
<div id="method_getAnonymousClass" class="method item">
<h3 class="name"><code>getAnonymousClass</code></h3>
<div class="args">
<span class="paren">(</span><ul class="args-list inline commas">
<li class="arg">
<code>itemModelName</code>
</li>
</ul><span class="paren">)</span>
</div>
<span class="returns-inline">
<span class="type">Function</span>
</span>
<div class="meta">
<p>
Defined in
<a href="../files/src_lib_base-list.coffee.html#l24"><code>src/lib/base-list.coffee:24</code></a>
</p>
</div>
<div class="description">
<p>creates child class of BaseList</p>
</div>
<div class="params">
<h4>Parameters:</h4>
<ul class="params-list">
<li class="param">
<code class="param-name">itemModelName</code>
<span class="type">String</span>
<div class="param-description">
</div>
</li>
</ul>
</div>
<div class="returns">
<h4>Returns:</h4>
<div class="returns-description">
<span class="type">Function</span>:
<p>child class of BaseList</p>
</div>
</div>
</div>
<div id="method_getFacade" class="method item inherited">
<h3 class="name"><code>getFacade</code></h3>
<span class="paren">()</span>
<span class="returns-inline">
<span class="type"><a href="../classes/Facade.html" class="crosslink">Facade</a></span>
</span>
<div class="meta">
<p>Inherited from
<a href="../classes/Base.html#method_getFacade">Base</a>:
<a href="../files/src_lib_base.coffee.html#l32"><code>src/lib/base.coffee:32</code></a>
</p>
</div>
<div class="description">
<p>get facade</p>
<p>the implementation is in Facade#requre()</p>
</div>
<div class="returns">
<h4>Returns:</h4>
<div class="returns-description">
<span class="type"><a href="../classes/Facade.html" class="crosslink">Facade</a></span>:
</div>
</div>
</div>
<div id="method_getPropInfo" class="method item public inherited">
<h3 class="name"><code>getPropInfo</code></h3>
<span class="paren">()</span>
<span class="returns-inline">
<span class="type"><a href="../classes/PropInfo.html" class="crosslink">PropInfo</a></span>
</span>
<span class="flag public">public</span>
<div class="meta">
<p>Inherited from
<a href="../classes/BaseModel.html#method_getPropInfo">BaseModel</a>:
<a href="../files/src_lib_base-model.coffee.html#l58"><code>src/lib/base-model.coffee:58</code></a>
</p>
</div>
<div class="description">
<p>get an instance of PropInfo, which summarizes properties of this class</p>
</div>
<div class="returns">
<h4>Returns:</h4>
<div class="returns-description">
<span class="type"><a href="../classes/PropInfo.html" class="crosslink">PropInfo</a></span>:
</div>
</div>
</div>
<div id="method_include" class="method item inherited">
<h3 class="name"><code>include</code></h3>
<div class="args">
<span class="paren">(</span><ul class="args-list inline commas">
<li class="arg">
<code class="optional">[options]</code>
</li>
</ul><span class="paren">)</span>
</div>
<span class="returns-inline">
<span class="type">Promise(BaseModel)</span>
</span>
<div class="meta">
<p>Inherited from
<a href="../classes/BaseModel.html#method_include">BaseModel</a>:
<a href="../files/src_lib_base-model.coffee.html#l258"><code>src/lib/base-model.coffee:258</code></a>
</p>
</div>
<div class="description">
<p>include all relational models if not set</p>
</div>
<div class="params">
<h4>Parameters:</h4>
<ul class="params-list">
<li class="param">
<code class="param-name optional">[options]</code>
<span class="type">Object</span>
<span class="flag optional" title="This parameter is optional.">optional</span>
<div class="param-description">
</div>
<ul class="params-list">
<li class="param">
<code class="param-name optional">[recursive]</code>
<span class="type">Boolean</span>
<span class="flag optional" title="This parameter is optional.">optional</span>
<div class="param-description">
<p>recursively include models or not</p>
</div>
</li>
</ul>
</li>
</ul>
</div>
<div class="returns">
<h4>Returns:</h4>
<div class="returns-description">
<span class="type">Promise(BaseModel)</span>:
<p>self</p>
</div>
</div>
</div>
<div id="method_inherit" class="method item inherited">
<h3 class="name"><code>inherit</code></h3>
<div class="args">
<span class="paren">(</span><ul class="args-list inline commas">
<li class="arg">
<code>anotherModel</code>
</li>
</ul><span class="paren">)</span>
</div>
<span class="returns-inline">
<span class="type"><a href="../classes/BaseModel.html" class="crosslink">BaseModel</a></span>
</span>
<div class="meta">
<p>Inherited from
<a href="../classes/BaseModel.html#method_inherit">BaseModel</a>:
<a href="../files/src_lib_base-model.coffee.html#l205"><code>src/lib/base-model.coffee:205</code></a>
</p>
</div>
<div class="description">
<p>inherit value of anotherModel</p>
</div>
<div class="params">
<h4>Parameters:</h4>
<ul class="params-list">
<li class="param">
<code class="param-name">anotherModel</code>
<span class="type"><a href="../classes/BaseModel.html" class="crosslink">BaseModel</a></span>
<div class="param-description">
</div>
</li>
</ul>
</div>
<div class="returns">
<h4>Returns:</h4>
<div class="returns-description">
<span class="type"><a href="../classes/BaseModel.html" class="crosslink">BaseModel</a></span>:
<p>this</p>
</div>
</div>
</div>
<div id="method_last" class="method item public">
<h3 class="name"><code>last</code></h3>
<span class="paren">()</span>
<span class="flag public">public</span>
<div class="meta">
<p>
Defined in
<a href="../files/src_lib_base-list.coffee.html#l176"><code>src/lib/base-list.coffee:176</code></a>
</p>
</div>
<div class="description">
<p>last item</p>
</div>
</div>
<div id="method_on" class="method item public">
<h3 class="name"><code>on</code></h3>
<span class="paren">()</span>
<span class="flag public">public</span>
<div class="meta">
<p>
Defined in
<a href="../files/src_lib_base-list.coffee.html#l228"><code>src/lib/base-list.coffee:228</code></a>
</p>
</div>
<div class="description">
<p>on addEventListeners for 'loaded'</p>
</div>
</div>
<div id="method_setEntityProp" class="method item inherited">
<h3 class="name"><code>setEntityProp</code></h3>
<div class="args">
<span class="paren">(</span><ul class="args-list inline commas">
<li class="arg">
<code>prop</code>
</li>
<li class="arg">
<code>submodel</code>
</li>
</ul><span class="paren">)</span>
</div>
<span class="returns-inline">
<span class="type"><a href="../classes/BaseModel.html" class="crosslink">BaseModel</a></span>
</span>
<div class="meta">
<p>Inherited from
<a href="../classes/BaseModel.html#method_setEntityProp">BaseModel</a>:
<a href="../files/src_lib_base-model.coffee.html#l167"><code>src/lib/base-model.coffee:167</code></a>
</p>
</div>
<div class="description">
<p>set related model(s)</p>
</div>
<div class="params">
<h4>Parameters:</h4>
<ul class="params-list">
<li class="param">
<code class="param-name">prop</code>
<span class="type">String</span>
<div class="param-description">
<p>property name of the related model</p>
</div>
</li>
<li class="param">
<code class="param-name">submodel</code>
<span class="type"><a href="../classes/Entity.html" class="crosslink">Entity</a> | Array<Entity></span>
<div class="param-description">
</div>
</li>
</ul>
</div>
<div class="returns">
<h4>Returns:</h4>
<div class="returns-description">
<span class="type"><a href="../classes/BaseModel.html" class="crosslink">BaseModel</a></span>:
<p>this</p>
</div>
</div>
</div>
<div id="method_setIds" class="method item">
<h3 class="name"><code>setIds</code></h3>
<div class="args">
<span class="paren">(</span><ul class="args-list inline commas">
<li class="arg">
<code>ids</code>
</li>
</ul><span class="paren">)</span>
</div>
<div class="meta">
<p>
Defined in
<a href="../files/src_lib_base-list.coffee.html#l97"><code>src/lib/base-list.coffee:97</code></a>
</p>
</div>
<div class="description">
<p>set ids.</p>
</div>
<div class="params">
<h4>Parameters:</h4>
<ul class="params-list">
<li class="param">
<code class="param-name">ids</code>
<span class="type">Array(String | Number)</span>
<div class="param-description">
</div>
</li>
</ul>
</div>
</div>
<div id="method_setItems" class="method item">
<h3 class="name"><code>setItems</code></h3>
<div class="args">
<span class="paren">(</span><ul class="args-list inline commas">
<li class="arg">
<code>models</code>
</li>
</ul><span class="paren">)</span>
</div>
<div class="meta">
<p>
Defined in
<a href="../files/src_lib_base-list.coffee.html#l124"><code>src/lib/base-list.coffee:124</code></a>
</p>
</div>
<div class="description">
<p>set items</p>
</div>
<div class="params">
<h4>Parameters:</h4>
<ul class="params-list">
<li class="param">
<code class="param-name">models</code>
<span class="type">Array</span>
<div class="param-description">
</div>
</li>
</ul>
</div>
</div>
<div id="method_sort" class="method item protected">
<h3 class="name"><code>sort</code></h3>
<span class="paren">()</span>
<span class="flag protected">protected</span>
<div class="meta">
<p>
Defined in
<a href="../files/src_lib_base-list.coffee.html#l153"><code>src/lib/base-list.coffee:153</code></a>
</p>
</div>
<div class="description">
<p>sort items in constructor</p>
</div>
</div>
<div id="method_toArray" class="method item public">
<h3 class="name"><code>toArray</code></h3>
<span class="paren">()</span>
<span class="flag public">public</span>
<div class="meta">
<p>
Defined in
<a href="../files/src_lib_base-list.coffee.html#l189"><code>src/lib/base-list.coffee:189</code></a>
</p>
</div>
<div class="description">
<p>export models to Array</p>
</div>
</div>
<div id="method_toPlainObject" class="method item">
<h3 class="name"><code>toPlainObject</code></h3>
<span class="paren">()</span>
<span class="returns-inline">
<span class="type">Object</span>
</span>
<div class="meta">
<p>Inherited from
<a href="../classes/BaseModel.html#method_toPlainObject">
BaseModel
</a>
but overwritten in
<a href="../files/src_lib_base-list.coffee.html#l199"><code>src/lib/base-list.coffee:199</code></a>
</p>
</div>
<div class="description">
<p>create plain list.
if this list contains entities, returns their ids
if this list contains non-entity models, returns their plain objects</p>
</div>
<div class="returns">
<h4>Returns:</h4>
<div class="returns-description">
<span class="type">Object</span>:
<p>plainObject</p>
</div>
</div>
</div>
<div id="method_unsetEntityProp" class="method item inherited">
<h3 class="name"><code>unsetEntityProp</code></h3>
<div class="args">
<span class="paren">(</span><ul class="args-list inline commas">
<li class="arg">
<code>prop</code>
</li>
</ul><span class="paren">)</span>
</div>
<span class="returns-inline">
<span class="type"><a href="../classes/BaseModel.html" class="crosslink">BaseModel</a></span>
</span>
<div class="meta">
<p>Inherited from
<a href="../classes/BaseModel.html#method_unsetEntityProp">BaseModel</a>:
<a href="../files/src_lib_base-model.coffee.html#l189"><code>src/lib/base-model.coffee:189</code></a>
</p>
</div>
<div class="description">
<p>unset related model(s)</p>
</div>
<div class="params">
<h4>Parameters:</h4>
<ul class="params-list">
<li class="param">
<code class="param-name">prop</code>
<span class="type">String</span>
<div class="param-description">
<p>property name of the related models</p>
</div>
</li>
</ul>
</div>
<div class="returns">
<h4>Returns:</h4>
<div class="returns-description">
<span class="type"><a href="../classes/BaseModel.html" class="crosslink">BaseModel</a></span>:
<p>this</p>
</div>
</div>
</div>
</div>
<div id="properties" class="api-class-tabpanel">
<h2 class="off-left">Properties</h2>
<div id="property_ids" class="property item public">
<h3 class="name"><code>ids</code></h3>
<span class="type">Array</span>
<span class="flag public">public</span>
<div class="meta">
<p>
Defined in
<a href="../files/src_lib_base-list.coffee.html#l41"><code>src/lib/base-list.coffee:41</code></a>
</p>
</div>
<div class="description">
<p>ids: get ids of items</p>
</div>
</div>
<div id="property_itemFactory" class="property item">
<h3 class="name"><code>itemFactory</code></h3>
<span class="type"><a href="../classes/BaseFactory.html" class="crosslink">BaseFactory</a></span>
<div class="meta">
<p>
Defined in
<a href="../files/src_lib_base-list.coffee.html#l67"><code>src/lib/base-list.coffee:67</code></a>
</p>
</div>
<div class="description">
<p>itemFactory: instance of factory which creates item models</p>
</div>
</div>
<div id="property_itemModelName" class="property item protected">
<h3 class="name"><code>itemModelName</code></h3>
<span class="type">String</span>
<span class="flag protected">protected</span>
<span class="flag static">static</span>
<div class="meta">
<p>
Defined in
<a href="../files/src_lib_base-list.coffee.html#l13"><code>src/lib/base-list.coffee:13</code></a>
</p>
</div>
<div class="description">
<p>model name of the item</p>
</div>
</div>
<div id="property_items" class="property item">
<h3 class="name"><code>items</code></h3>
<span class="type">Array</span>
<div class="meta">
<p>
Defined in
<a href="../files/src_lib_base-list.coffee.html#l53"><code>src/lib/base-list.coffee:53</code></a>
</p>
</div>
<div class="description">
<p>items: array of models</p>
</div>
</div>
<div id="property_loaded" class="property item">
<h3 class="name"><code>loaded</code></h3>
<span class="type">Boolean</span>
<div class="meta">
<p>
Defined in
<a href="../files/src_lib_base-list.coffee.html#l60"><code>src/lib/base-list.coffee:60</code></a>
</p>
</div>
<div class="description">
<p>loaded: is data loaded or not</p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<script src="../assets/vendor/prettify/prettify-min.js"></script>
<script>prettyPrint();</script>
<script src="../assets/js/yui-prettify.js"></script>
<script src="../assets/../api.js"></script>
<script src="../assets/js/api-filter.js"></script>
<script src="../assets/js/api-list.js"></script>
<script src="../assets/js/api-search.js"></script>
<script src="../assets/js/apidocs.js"></script>
</body>
</html>