src/cm/media/js/lib/yui/yui_3.10.3/build/datasource-local/datasource-local-debug.js
author Yves-Marie Haussonne <ymh.work+github@gmail.com>
Fri, 09 May 2014 18:35:26 +0200
changeset 656 a84519031134
parent 525 89ef5ed3c48b
permissions -rw-r--r--
add link to "privacy policy" in the header test
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
525
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     1
/*
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     2
YUI 3.10.3 (build 2fb5187)
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     3
Copyright 2013 Yahoo! Inc. All rights reserved.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     4
Licensed under the BSD License.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     5
http://yuilibrary.com/license/
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     6
*/
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     7
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     8
YUI.add('datasource-local', function (Y, NAME) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     9
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    10
/**
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    11
 * The DataSource utility provides a common configurable interface for widgets to
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    12
 * access a variety of data, from JavaScript arrays to online database servers.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    13
 *
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    14
 * @module datasource
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    15
 * @main datasource
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    16
 */
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    17
    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    18
/**
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    19
 * Provides the base DataSource implementation, which can be extended to
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    20
 * create DataSources for specific data protocols, such as the IO Utility, the
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    21
 * Get Utility, or custom functions.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    22
 *
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    23
 * @module datasource
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    24
 * @submodule datasource-local
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    25
 */
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    26
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    27
/**
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    28
 * Base class for the DataSource Utility.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    29
 * @class DataSource.Local
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    30
 * @extends Base
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    31
 * @constructor
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    32
 */    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    33
var LANG = Y.Lang,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    34
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    35
DSLocal = function() {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    36
    DSLocal.superclass.constructor.apply(this, arguments);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    37
};
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    38
    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    39
    /////////////////////////////////////////////////////////////////////////////
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    40
    //
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    41
    // DataSource static properties
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    42
    //
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    43
    /////////////////////////////////////////////////////////////////////////////
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    44
Y.mix(DSLocal, {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    45
    /**
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    46
     * Class name.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    47
     *
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    48
     * @property NAME
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    49
     * @type String
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    50
     * @static     
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    51
     * @final
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    52
     * @value "dataSourceLocal"
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    53
     */
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    54
    NAME: "dataSourceLocal",
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    55
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    56
    /////////////////////////////////////////////////////////////////////////////
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    57
    //
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    58
    // DataSource Attributes
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    59
    //
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    60
    /////////////////////////////////////////////////////////////////////////////
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    61
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    62
    ATTRS: {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    63
        /**
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    64
        * @attribute source
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    65
        * @description Pointer to live data.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    66
        * @type MIXED
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    67
        * @default null        
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    68
        */
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    69
        source: {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    70
            value: null
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    71
        }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    72
    },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    73
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    74
    /**
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    75
     * Global transaction counter.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    76
     *
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    77
     * @property _tId
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    78
     * @type Number
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    79
     * @static
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    80
     * @private
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    81
     * @default 0
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    82
     */
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    83
    _tId: 0,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    84
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    85
    /**
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    86
     * Global in-progress transaction objects.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    87
     *
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    88
     * @property transactions
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    89
     * @type Object
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    90
     * @static
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    91
     */
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    92
    transactions: {},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    93
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    94
    /**
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    95
     * Returns data to callback.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    96
     *
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    97
     * @method issueCallback
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    98
     * @param e {EventFacade} Event Facade.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    99
     * @param caller {DataSource} Calling DataSource instance.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   100
     * @static
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   101
     */
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   102
    issueCallback: function (e, caller) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   103
        var callbacks = e.on || e.callback,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   104
            callback = callbacks && callbacks.success,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   105
            payload = e.details[0];
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   106
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   107
        payload.error = (e.error || e.response.error);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   108
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   109
        if (payload.error) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   110
            caller.fire("error", payload);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   111
            callback = callbacks && callbacks.failure;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   112
        }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   113
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   114
        if (callback) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   115
            //TODO: this should be executed from a specific context
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   116
            callback(payload);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   117
        }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   118
    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   119
});
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   120
    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   121
Y.extend(DSLocal, Y.Base, {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   122
    /**
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   123
    * Internal init() handler.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   124
    *
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   125
    * @method initializer
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   126
    * @param config {Object} Config object.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   127
    * @private        
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   128
    */
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   129
    initializer: function(config) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   130
        this._initEvents();
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   131
    },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   132
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   133
    /**
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   134
    * This method creates all the events for this module.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   135
    * @method _initEvents
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   136
    * @private        
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   137
    */
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   138
    _initEvents: function() {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   139
        /**
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   140
         * Fired when a data request is received.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   141
         *
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   142
         * @event request
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   143
         * @param e {Event.Facade} Event Facade with the following properties:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   144
         * <dl>                          
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   145
         * <dt>tId (Number)</dt> <dd>Unique transaction ID.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   146
         * <dt>request (Object)</dt> <dd>The request.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   147
         * <dt>callback (Object)</dt> <dd>The callback object
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   148
         *   (deprecated, refer to <strong>on</strong></dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   149
         * <dt>on (Object)</dt> <dd>The map of configured callback
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   150
         *   functions.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   151
         * <dt>cfg (Object)</dt> <dd>Configuration object.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   152
         * </dl>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   153
         * @preventable _defRequestFn
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   154
         */
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   155
        this.publish("request", {defaultFn: Y.bind("_defRequestFn", this), queuable:true});
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   156
         
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   157
        /**
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   158
         * Fired when raw data is received.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   159
         *
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   160
         * @event data
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   161
         * @param e {Event.Facade} Event Facade with the following properties:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   162
         * <dl>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   163
         * <dt>tId (Number)</dt> <dd>Unique transaction ID.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   164
         * <dt>request (Object)</dt> <dd>The request.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   165
         * <dt>callback (Object)</dt> <dd>Deprecated alias for the
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   166
         *   <strong>on</strong> property</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   167
         * <dt>on (Object)</dt> <dd>The map of configured transaction
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   168
         *   callbacks.  An object with the following properties:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   169
         *     <dl>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   170
         *         <dt>success (Function)</dt> <dd>Success handler.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   171
         *         <dt>failure (Function)</dt> <dd>Failure handler.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   172
         *     </dl>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   173
         * </dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   174
         * <dt>cfg (Object)</dt> <dd>Configuration object.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   175
         * <dt>data (Object)</dt> <dd>Raw data.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   176
         * </dl>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   177
         * @preventable _defDataFn
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   178
         */
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   179
        this.publish("data", {defaultFn: Y.bind("_defDataFn", this), queuable:true});
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   180
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   181
        /**
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   182
         * Fired when response is returned.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   183
         *
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   184
         * @event response
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   185
         * @param e {Event.Facade} Event Facade with the following properties:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   186
         * <dl>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   187
         * <dt>tId (Number)</dt> <dd>Unique transaction ID.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   188
         * <dt>request (Object)</dt> <dd>The request.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   189
         * <dt>callback (Object)</dt> <dd>Deprecated alias for the
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   190
         *   <strong>on</strong> property</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   191
         * <dt>on (Object)</dt> <dd>The map of configured transaction
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   192
         *   callbacks.  An object with the following properties:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   193
         *     <dl>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   194
         *         <dt>success (Function)</dt> <dd>Success handler.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   195
         *         <dt>failure (Function)</dt> <dd>Failure handler.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   196
         *     </dl>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   197
         * </dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   198
         * <dt>cfg (Object)</dt> <dd>Configuration object.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   199
         * <dt>data (Object)</dt> <dd>Raw data.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   200
         * <dt>response (Object)</dt>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   201
         *     <dd>Normalized response object with the following properties:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   202
         *         <dl>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   203
         *             <dt>results (Object)</dt> <dd>Parsed results.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   204
         *             <dt>meta (Object)</dt> <dd>Parsed meta data.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   205
         *             <dt>error (Boolean)</dt> <dd>Error flag.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   206
         *         </dl>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   207
         *     </dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   208
         * <dt>error</dt>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   209
         *     <dd>Any error that occurred along the transaction lifecycle.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   210
         * </dl>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   211
         * @preventable _defResponseFn
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   212
         */
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   213
         this.publish("response", {defaultFn: Y.bind("_defResponseFn", this), queuable:true});
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   214
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   215
        /**
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   216
         * Fired when an error is encountered.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   217
         *
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   218
         * @event error
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   219
         * @param e {Event.Facade} Event Facade with the following properties:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   220
         * <dl>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   221
         * <dt>tId (Number)</dt> <dd>Unique transaction ID.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   222
         * <dt>request (Object)</dt> <dd>The request.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   223
         * <dt>callback (Object)</dt> <dd>Deprecated alias for the
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   224
         *   <strong>on</strong> property</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   225
         * <dt>on (Object)</dt> <dd>The map of configured transaction
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   226
         *   callbacks.  An object with the following properties:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   227
         *     <dl>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   228
         *         <dt>success (Function)</dt> <dd>Success handler.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   229
         *         <dt>failure (Function)</dt> <dd>Failure handler.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   230
         *     </dl>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   231
         * </dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   232
         * <dt>cfg (Object)</dt> <dd>Configuration object.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   233
         * <dt>data (Object)</dt> <dd>Raw data.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   234
         * <dt>response (Object)</dt>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   235
         *     <dd>Normalized response object with the following properties:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   236
         *         <dl>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   237
         *             <dt>results (Object)</dt> <dd>Parsed results.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   238
         *             <dt>meta (Object)</dt> <dd>Parsed meta data.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   239
         *             <dt>error (Object)</dt> <dd>Error object.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   240
         *         </dl>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   241
         *     </dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   242
         * <dt>error</dt>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   243
         *     <dd>Any error that occurred along the transaction lifecycle.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   244
         * </dl>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   245
         */
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   246
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   247
    },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   248
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   249
    /**
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   250
     * Manages request/response transaction. Must fire <code>response</code>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   251
     * event when response is received. This method should be implemented by
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   252
     * subclasses to achieve more complex behavior such as accessing remote data.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   253
     *
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   254
     * @method _defRequestFn
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   255
     * @param e {Event.Facade} Event Facadewith the following properties:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   256
     * <dl>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   257
     * <dt>tId (Number)</dt> <dd>Unique transaction ID.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   258
     * <dt>request (Object)</dt> <dd>The request.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   259
     * <dt>callback (Object)</dt> <dd>Deprecated alias for the
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   260
     *   <strong>on</strong> property</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   261
     * <dt>on (Object)</dt> <dd>The map of configured transaction
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   262
     *   callbacks.  An object with the following properties:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   263
     *     <dl>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   264
     *         <dt>success (Function)</dt> <dd>Success handler.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   265
     *         <dt>failure (Function)</dt> <dd>Failure handler.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   266
     *     </dl>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   267
     * </dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   268
     * <dt>cfg (Object)</dt> <dd>Configuration object.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   269
     * </dl>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   270
     * @protected
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   271
     */
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   272
    _defRequestFn: function(e) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   273
        var data = this.get("source"),
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   274
            payload = e.details[0];
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   275
        
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   276
        // Problematic data
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   277
        if(LANG.isUndefined(data)) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   278
            payload.error = new Error("Local source undefined");
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   279
            Y.log("Local source undefined", "error", "datasource-local");
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   280
        }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   281
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   282
        payload.data = data;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   283
        this.fire("data", payload);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   284
        Y.log("Transaction " + e.tId + " complete. Request: " +
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   285
                Y.dump(e.request) + " . Response: " + Y.dump(e.response), "info", "datasource-local");
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   286
    },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   287
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   288
    /**
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   289
     * Normalizes raw data into a response that includes results and meta properties.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   290
     *
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   291
     * @method _defDataFn
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   292
     * @param e {Event.Facade} Event Facade with the following properties:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   293
     * <dl>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   294
     * <dt>tId (Number)</dt> <dd>Unique transaction ID.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   295
     * <dt>request (Object)</dt> <dd>The request.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   296
     * <dt>callback (Object)</dt> <dd>Deprecated alias for the
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   297
     *   <strong>on</strong> property</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   298
     * <dt>on (Object)</dt> <dd>The map of configured transaction
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   299
     *   callbacks.  An object with the following properties:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   300
     *     <dl>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   301
     *         <dt>success (Function)</dt> <dd>Success handler.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   302
     *         <dt>failure (Function)</dt> <dd>Failure handler.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   303
     *     </dl>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   304
     * </dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   305
     * <dt>cfg (Object)</dt> <dd>Configuration object.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   306
     * <dt>data (Object)</dt> <dd>Raw data.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   307
     * </dl>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   308
     * @protected
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   309
     */
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   310
    _defDataFn: function(e) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   311
        var data = e.data,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   312
            meta = e.meta,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   313
            response = {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   314
                results: (LANG.isArray(data)) ? data : [data],
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   315
                meta: (meta) ? meta : {}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   316
            },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   317
            payload = e.details[0];
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   318
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   319
        payload.response = response;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   320
        this.fire("response", payload);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   321
    },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   322
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   323
    /**
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   324
     * Sends data as a normalized response to callback.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   325
     *
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   326
     * @method _defResponseFn
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   327
     * @param e {Event.Facade} Event Facade with the following properties:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   328
     * <dl>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   329
     * <dt>tId (Number)</dt> <dd>Unique transaction ID.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   330
     * <dt>request (Object)</dt> <dd>The request.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   331
     * <dt>callback (Object)</dt> <dd>Deprecated alias for the
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   332
     *   <strong>on</strong> property</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   333
     * <dt>on (Object)</dt> <dd>The map of configured transaction
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   334
     *   callbacks.  An object with the following properties:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   335
     *     <dl>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   336
     *         <dt>success (Function)</dt> <dd>Success handler.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   337
     *         <dt>failure (Function)</dt> <dd>Failure handler.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   338
     *     </dl>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   339
     * </dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   340
     * <dt>cfg (Object)</dt> <dd>Configuration object.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   341
     * <dt>data (Object)</dt> <dd>Raw data.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   342
     * <dt>response (Object)</dt> <dd>Normalized response object with the following properties:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   343
     *     <dl>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   344
     *         <dt>results (Object)</dt> <dd>Parsed results.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   345
     *         <dt>meta (Object)</dt> <dd>Parsed meta data.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   346
     *         <dt>error (Boolean)</dt> <dd>Error flag.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   347
     *     </dl>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   348
     * </dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   349
     * </dl>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   350
     * @protected
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   351
     */
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   352
    _defResponseFn: function(e) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   353
        // Send the response back to the callback
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   354
        DSLocal.issueCallback(e, this);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   355
    },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   356
    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   357
    /**
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   358
     * Generates a unique transaction ID and fires <code>request</code> event.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   359
     * <strong>Note</strong>: the property <code>callback</code> is a
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   360
     * deprecated alias for the <code>on</code> transaction configuration
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   361
     * property described below.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   362
     *
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   363
     * @method sendRequest
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   364
     * @param [request] {Object} An object literal with the following properties:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   365
     *     <dl>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   366
     *     <dt><code>request</code></dt>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   367
     *     <dd>The request to send to the live data source, if any.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   368
     *     <dt><code>on</code></dt>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   369
     *     <dd>An object literal with the following properties:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   370
     *         <dl>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   371
     *         <dt><code>success</code></dt>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   372
     *         <dd>The function to call when the data is ready.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   373
     *         <dt><code>failure</code></dt>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   374
     *         <dd>The function to call upon a response failure condition.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   375
     *         <dt><code>argument</code></dt>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   376
     *         <dd>Arbitrary data payload that will be passed back to the success and failure handlers.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   377
     *         </dl>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   378
     *     </dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   379
     *     <dt><code>cfg</code></dt>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   380
     *     <dd>Configuration object, if any.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   381
     *     </dl>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   382
     * @return {Number} Transaction ID.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   383
     */
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   384
    sendRequest: function(request) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   385
        var tId = DSLocal._tId++,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   386
            callbacks;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   387
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   388
        request = request || {};
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   389
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   390
        callbacks = request.on || request.callback;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   391
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   392
        this.fire("request", {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   393
            tId: tId,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   394
            request: request.request,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   395
            on: callbacks,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   396
            callback: callbacks,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   397
            cfg: request.cfg || {}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   398
        });
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   399
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   400
        Y.log("Transaction " + tId + " sent request: " + Y.dump(request.request), "info", "datasource-local");
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   401
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   402
        return tId;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   403
    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   404
});
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   405
    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   406
Y.namespace("DataSource").Local = DSLocal;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   407
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   408
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   409
}, '3.10.3', {"requires": ["base"]});