1: <?php
2:
3: App::uses('ClassSearcher', 'Base.Lib');
4: App::uses('Scheduling', 'Scheduling.Lib');
5:
6: class InstallShell extends Shell {
7:
8: public function getOptionParser() {
9: return parent::getOptionParser()->addOption(
10: 'installer-class', array(
11: 'default' => '',
12: )
13: );
14: }
15:
16: public function main() {
17: $this->out('<info>Searching scheduling installer...</info>');
18: $manager = Scheduling::getInstaller($this->params['installer-class']);
19: $this->out('Installer found: '. get_class($manager));
20: $this->out('<info>Installing...</info>');
21: $manager->install();
22: $this->out('<info>Done</info>');
23: }
24:
25: public function uninstall() {
26: $this->out('<info>Searching scheduling installer...</info>');
27: $manager = Scheduling::getInstaller($this->params['installer-class']);
28: $this->out('Installer found: '. get_class($manager));
29: $this->out('<info>Uninstalling...</info>');
30: $manager->uninstall();
31: $this->out('<info>Done</info>');
32: }
33:
34: }
35: