src/cm/media/js/lib/yui/yui3-3.15.0/build/datasource-textschema/datasource-textschema-debug.js
author Yves-Marie Haussonne <ymh.work+github@gmail.com>
Fri, 09 May 2014 18:35:26 +0200
changeset 656 a84519031134
parent 602 e16a97fb364a
permissions -rw-r--r--
add link to "privacy policy" in the header test
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
602
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
     1
YUI.add('datasource-textschema', function (Y, NAME) {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
     2
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
     3
/**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
     4
 * Extends DataSource with schema-parsing on text data.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
     5
 *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
     6
 * @module datasource
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
     7
 * @submodule datasource-textschema
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
     8
 */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
     9
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    10
/**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    11
 * Adds schema-parsing to the DataSource Utility.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    12
 * @class DataSourceTextSchema
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    13
 * @extends Plugin.Base
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    14
 */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    15
var DataSourceTextSchema = function() {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    16
    DataSourceTextSchema.superclass.constructor.apply(this, arguments);
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    17
};
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    18
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    19
Y.mix(DataSourceTextSchema, {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    20
    /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    21
     * The namespace for the plugin. This will be the property on the host which
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    22
     * references the plugin instance.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    23
     *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    24
     * @property NS
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    25
     * @type String
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    26
     * @static
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    27
     * @final
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    28
     * @value "schema"
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    29
     */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    30
    NS: "schema",
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    31
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    32
    /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    33
     * Class name.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    34
     *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    35
     * @property NAME
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    36
     * @type String
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    37
     * @static
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    38
     * @final
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    39
     * @value "dataSourceTextSchema"
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    40
     */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    41
    NAME: "dataSourceTextSchema",
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    42
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    43
    /////////////////////////////////////////////////////////////////////////////
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    44
    //
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    45
    // DataSourceTextSchema Attributes
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    46
    //
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    47
    /////////////////////////////////////////////////////////////////////////////
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    48
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    49
    ATTRS: {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    50
        schema: {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    51
            //value: {}
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    52
        }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    53
    }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    54
});
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    55
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    56
Y.extend(DataSourceTextSchema, Y.Plugin.Base, {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    57
    /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    58
    * Internal init() handler.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    59
    *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    60
    * @method initializer
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    61
    * @param config {Object} Config object.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    62
    * @private
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    63
    */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    64
    initializer: function(config) {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    65
        this.doBefore("_defDataFn", this._beforeDefDataFn);
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    66
    },
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    67
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    68
    /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    69
     * Parses raw data into a normalized response.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    70
     *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    71
     * @method _beforeDefDataFn
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    72
     * @param tId {Number} Unique transaction ID.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    73
     * @param request {Object} The request.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    74
     * @param callback {Object} The callback object with the following properties:
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    75
     *     <dl>
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    76
     *         <dt>success (Function)</dt> <dd>Success handler.</dd>
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    77
     *         <dt>failure (Function)</dt> <dd>Failure handler.</dd>
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    78
     *     </dl>
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    79
     * @param data {Object} Raw data.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    80
     * @protected
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    81
     */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    82
    _beforeDefDataFn: function(e) {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    83
        var schema = this.get('schema'),
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    84
            payload = e.details[0],
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    85
            // TODO: Do I need to sniff for DS.IO + isString(responseText)?
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    86
            data = e.data.responseText || e.data;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    87
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    88
        payload.response = Y.DataSchema.Text.apply.call(this, schema, data) || {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    89
            meta: {},
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    90
            results: data
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    91
        };
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    92
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    93
        this.get("host").fire("response", payload);
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    94
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    95
        return new Y.Do.Halt("DataSourceTextSchema plugin halted _defDataFn");
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    96
    }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    97
});
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    98
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    99
Y.namespace('Plugin').DataSourceTextSchema = DataSourceTextSchema;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   100
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   101
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   102
}, '@VERSION@', {"requires": ["datasource-local", "plugin", "dataschema-text"]});