static/ext/src/data/proxy/Proxy.js
function(reader) {
        var me = this,
            needsCopy = true,
            current = me.reader;

        if (reader === undefined || typeof reader == 'string') {
            reader = {
                type: reader
            };
            needsCopy = false;
        }

        if (reader.isReader) {
            reader.setModel(me.model);
        } else {
            if (needsCopy) {
                reader = Ext.apply({}, reader);
            }
            Ext.applyIf(reader, {
                proxy: me,
                model: me.model,
                type : me.defaultReaderType
            });

            reader = Ext.createByAlias('reader.' + reader.type, reader);
        }

        if (reader !== current && reader.onMetaChange) {
            reader.onMetaChange = Ext.Function.createSequence(reader.onMetaChange, this.onMetaChange, this);
        }

        me.reader = reader;
        return me.reader;
    }
function(reader) {
        var me = this,
            needsCopy = true,
            current = me.reader;

        if (reader === undefined || typeof reader == 'string') {
            reader = {
                type: reader
            };
            needsCopy = false;
        }

        if (reader.isReader) {
            reader.setModel(me.model);
        } else {
            if (needsCopy) {
                reader = Ext.apply({}, reader);
            }
            Ext.applyIf(reader, {
                proxy: me,
                model: me.model,
                type : me.defaultReaderType
            });

            reader = Ext.createByAlias('reader.' + reader.type, reader);
        }

        if (reader !== current && reader.onMetaChange) {
            reader.onMetaChange = Ext.Function.createSequence(reader.onMetaChange, this.onMetaChange, this);
        }

        me.reader = reader;
        return me.reader;
    }
function ( reader ) { var me = this , needsCopy = true , current = me . reader ; if ( reader === undefined || typeof reader == 'string' ) { reader = { type : reader } ; needsCopy = false ; } if ( reader . isReader ) { reader . setModel ( me . model ) ; } else { if ( needsCopy ) { reader = Ext . apply ( { } , reader ) ; } Ext . applyIf ( reader , { proxy : me , model : me . model , type : me . defaultReaderType } ) ; reader = Ext . createByAlias ( 'reader.' + reader . type , reader ) ; } if ( reader !== current && reader . onMetaChange ) { reader . onMetaChange = Ext . Function . createSequence ( reader . onMetaChange , this . onMetaChange , this ) ; } me . reader = reader ; return me . reader ; }
Sets the Proxy's Reader by string, config object or Reader instance

@param {String/Object/Ext.data.reader.Reader} reader The new Reader, which can be either a type string,
a configuration object or an Ext.data.reader.Reader instance
@return {Ext.data.reader.Reader} The attached Reader object
Sets the Proxy s Reader by string config object or Reader instance