1 <html><head><title>Roo/data/DataReader.js</title><link rel="stylesheet" type="text/css" href="../../css/highlight-js.css"/></head><body class="highlightpage"><code class="jsdoc-pretty"><span class="jsdoc-comment">/*
4 * Copyright(c) 2006-2007, Ext JS, LLC.
6 * Originally Released Under LGPL - original licence link has changed is not relivant.
9 * <script type="text/javascript">
12 // Base class for reading structured data from a data source. This class is intended to be
13 // extended (see ArrayReader, JsonReader and XmlReader) and should not be created directly.
16 * @class Roo.data.DataReader
17 * Base class for reading structured data from a data source. This class is intended to be
18 * extended (see {Roo.data.ArrayReader}, {Roo.data.JsonReader} and {Roo.data.XmlReader}) and should not be created directly.
21 </span><span class="jsdoc-var">Roo.data.DataReader </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">meta</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">recordType</span><span class="jsdoc-syntax">){
23 </span><span class="jsdoc-var">this.meta </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">meta</span><span class="jsdoc-syntax">;
25 </span><span class="jsdoc-var">this.recordType </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">recordType </span><span class="jsdoc-keyword">instanceof </span><span class="jsdoc-var">Array </span><span class="jsdoc-syntax">?
26 </span><span class="jsdoc-var">Roo.data.Record.create</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">recordType</span><span class="jsdoc-syntax">) : </span><span class="jsdoc-var">recordType</span><span class="jsdoc-syntax">;
29 </span><span class="jsdoc-var">Roo.data.DataReader.prototype </span><span class="jsdoc-syntax">= {
30 </span><span class="jsdoc-comment">/**
31 * Create an empty record
32 * @param {Object} data (optional) - overlay some values
33 * @return {Roo.data.Record} record created.
35 </span><span class="jsdoc-var">newRow </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">d</span><span class="jsdoc-syntax">) {
36 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">da </span><span class="jsdoc-syntax">= {};
37 </span><span class="jsdoc-var">this.recordType.prototype.fields.each</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">c</span><span class="jsdoc-syntax">) {
38 </span><span class="jsdoc-keyword">switch</span><span class="jsdoc-syntax">( </span><span class="jsdoc-var">c.type</span><span class="jsdoc-syntax">) {
39 </span><span class="jsdoc-keyword">case </span><span class="jsdoc-string">'int' </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">da</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">c.name</span><span class="jsdoc-syntax">] = 0; </span><span class="jsdoc-keyword">break</span><span class="jsdoc-syntax">;
40 </span><span class="jsdoc-keyword">case </span><span class="jsdoc-string">'date' </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">da</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">c.name</span><span class="jsdoc-syntax">] = </span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Date</span><span class="jsdoc-syntax">(); </span><span class="jsdoc-keyword">break</span><span class="jsdoc-syntax">;
41 </span><span class="jsdoc-keyword">case </span><span class="jsdoc-string">'float' </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">da</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">c.name</span><span class="jsdoc-syntax">] = 0.0; </span><span class="jsdoc-keyword">break</span><span class="jsdoc-syntax">;
42 </span><span class="jsdoc-keyword">case </span><span class="jsdoc-string">'boolean' </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">da</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">c.name</span><span class="jsdoc-syntax">] = </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">; </span><span class="jsdoc-keyword">break</span><span class="jsdoc-syntax">;
43 </span><span class="jsdoc-keyword">default </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">da</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">c.name</span><span class="jsdoc-syntax">] = </span><span class="jsdoc-string">""</span><span class="jsdoc-syntax">; </span><span class="jsdoc-keyword">break</span><span class="jsdoc-syntax">;
47 </span><span class="jsdoc-keyword">return new </span><span class="jsdoc-var">this.recordType</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.apply</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">da</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">d</span><span class="jsdoc-syntax">));
50 };</span></code></body></html>