/ext-4.0.7/jsbuilder/src/generators/app/files/lib/JSBuilder/bin/Dispatch.js

https://bitbucket.org/srogerf/javascript · JavaScript · 37 lines · 22 code · 8 blank · 7 comment · 0 complexity · 8af4994969de9d2f173d90783f5e4955 MD5 · raw file

  1. var JSBuilderPath = system.cwd + '/lib/JSBuilder/';
  2. load(JSBuilderPath + 'src/Loader.js');
  3. Loader.setBasePath(JSBuilderPath + 'src');
  4. Loader.require([
  5. 'Ext', 'Cmd', 'Filesystem', 'Platform', 'Cli', 'Logger', 'Project', 'Target', 'Package', 'Build'
  6. ]);
  7. /**
  8. * @class Ext.CommandDispatcher
  9. * @extends Object
  10. * Dispaches to the relevant Cli subclass from the command line 'sencha' command. e.g.
  11. * sencha generate xyz is dispatched to whichever Ext.Cli subclass registered itself to
  12. * handler the 'generate' command (Ext.generator.Factory in this case).
  13. */
  14. Ext.CommandDispatcher = {
  15. types: {},
  16. dispatch: function(module, args) {
  17. new this.types[module]({args: args});
  18. }
  19. };
  20. Ext.regDispatchable = function(name, constructor) {
  21. Ext.CommandDispatcher.types[name] = constructor;
  22. };
  23. load('src/Generator.js');
  24. load('src/generators/app/Application.js');
  25. load('src/generators/controller/Controller.js');
  26. load('src/generators/model/Model.js');
  27. var args = system.arguments,
  28. module = args[0];
  29. Ext.CommandDispatcher.dispatch(module, args.slice(1));