12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- "use strict";
- /**
- * @fileOverview The chains define the primary composition elements (functions) that determine the order of execution.
- *
- * @module base/chains
- * @requires dcl
- */
- var dcl = require( "dcl" );
- /**
- * @classDesc Chains define the primary composition elements (functions) that determine the order of execution.
- * @exports base/chains
- * @constructor
- */
- var Chains = dcl( null, {declaredClass : "base/chains"} );
- /**
- * The `close` method asks an object to shut itself down in a way that will allow it to be reopened, unlike the
- * [end method]{@link base/chains#end} which will call the destroy method which should make the object unusable, but also
- * devoid of all resources whereas `close` may still keep some resources open.
- *
- * | Heading 1 | Heading 2 | Heading 3 |
- * |-----------|-----------|-----------------|
- * | Bar | Food | This is a table |
- *
- * This uses the `before` chain which means the last one defined in the first one destroyed
- * @memberOf base/chains#
- * @name close
- * @see base/chains#open
- */
- dcl.chainBefore( Chains, "close" );
- /**
- * The `end` method will call the destroy method which should make the object unusable and
- * devoid of all resources, unlike the
- * [close method]{@link base/chains#close} asks an object to shut itself down in a way that will allow it to be reopened.
- *
- * This uses the `before` chain which means the last one defined in the first one destroyed
- * @memberOf base/chains#
- * @name end
- *
- * @example <caption>Add *this* to your application.properties.</caption>
- * {@lang bash}
- * foo=bar
- *
- */
- dcl.chainBefore( Chains, "end" );
- /**
- * Destroy is called by the end method and it is here that you should clean up after yourself. The difference between
- * `destroy` and [end]{@link base/chains#end} is the `end` is the verb that you raise on an object to ask it to go away
- * and `destroy` is where you actually do the work to clean up. Think of this as the counterpart of `constructor` yet
- * not called automatically.
- *
- * This uses the `before` chain which means the last one defined is the first one destroyed
- * @private
- * @memberOf base/chains#
- * @name destroy
- */
- dcl.chainBefore( Chains, "destroy" );
- /**
- * If you are using the open/close paradigm for an object that can kind of go dormant on {@link base/chains#close} and can be "reopened"
- * again later, here is where the "open" code will go.
- *
- * This used the `after` chain which means that the first one defined is the first one destroyed.
- *
- * @memberOf base/chains#
- * @name open
- * @see base/chains#close
- */
- dcl.chainAfter( Chains, "open" );
- module.exports = Chains;
|