    /**
     * @author Don Griffin
     *
     * This class is a sequential id generator. A simple use of this class would be like so:
     *
     *     Ext.define('MyApp.data.MyModel', {
     *         extend: 'Ext.data.Model',
     *         idgen: 'sequential'
     *     });
     *     // assign id's of 1, 2, 3, etc.
     *
     * An example of a configured generator would be:
     *
     *     Ext.define('MyApp.data.MyModel', {
     *         extend: 'Ext.data.Model',
     *         idgen: {
     *             type: 'sequential',
     *             prefix: 'ID_',
     *             seed: 1000
     *         }
     *     });
     *     // assign id's of ID_1000, ID_1001, ID_1002, etc.
     *
     */
    Ext.define('Ext.data.SequentialIdGenerator', {
        extend: 'Ext.data.IdGenerator',
        alias: 'idgen.sequential',

        constructor: function() {
            var me = this;

            me.callParent(arguments);

            me.parts = [ me.prefix, ''];
        },

        /**
         * @cfg {String} prefix
         * The string to place in front of the sequential number for each generated id. The
         * default is blank.
         */
        prefix: '',

        /**
         * @cfg {Number} seed
         * The number at which to start generating sequential id's. The default is 1.
         */
        seed: 1,

        /**
         * Generates and returns the next id.
         * @return {String} The next id.
         */
        generate: function () {
            var me = this,
                parts = me.parts;

            parts[1] = me.seed++;
            return parts.join('');
        }
    });