/** * @private */Ext.define('Ext.device.media.Cordova', { alternateClassName: 'Ext.device.media.PhoneGap', extend: 'Ext.device.media.Abstract', config: { /** * A URI containing the audio content. * @type {String} */ src: null, /** * @private */ media: null }, updateSrc: function(newSrc, oldSrc) { this.setMedia(new Media(newSrc)); }, play: function() { var media = this.getMedia(); if (media) { media.play(); } }, pause: function() { var media = this.getMedia(); if (media) { media.pause(); } }, stop: function() { var media = this.getMedia(); if (media) { media.stop(); } }, release: function() { var media = this.getMedia(); if (media) { media.release(); } }, seekTo: function(miliseconds) { var media = this.getMedia(); if (media) { media.seekTo(miliseconds); } }, getDuration: function() { var media = this.getMedia(); if (media) { media.getDuration(); } }, startRecord: function() { var media = this.getMedia(); if (!media) { this.setSrc(null); } media.startRecord(); }, stopRecord: function() { var media = this.getMedia(); if (media) { media.stopRecord(); } }});