Code Duplication    Length = 23-28 lines in 7 locations

src/Magestead/Command/VM/DestroyCommand.php 1 location

@@ 12-34 (lines=23) @@
9
 * Class DestroyCommand
10
 * @package Magestead\Command\VM
11
 */
12
class DestroyCommand extends Command
13
{
14
    /**
15
     * @var
16
     */
17
    protected $_projectPath;
18
19
    protected function configure()
20
    {
21
        $this->_projectPath = getcwd();
22
23
        $this->setName("vm:destroy");
24
        $this->setDescription("Destroy your development machine");
25
    }
26
27
    /**
28
     * @param InputInterface $input
29
     * @param OutputInterface $output
30
     * @return ProcessCommand
31
     */
32
    protected function execute(InputInterface $input, OutputInterface $output)
33
    {
34
        $output->writeln('<info>Destroying your development environment</info>');
35
        return new ProcessCommand('vagrant destroy --force', $this->_projectPath, $output);
36
    }
37
}

src/Magestead/Command/VM/HaltCommand.php 1 location

@@ 12-34 (lines=23) @@
9
 * Class HaltCommand
10
 * @package Magestead\Command\VM
11
 */
12
class HaltCommand extends Command
13
{
14
    protected $_projectPath;
15
16
    protected function configure()
17
    {
18
        $this->_projectPath = getcwd();
19
20
        $this->setName("vm:halt");
21
        $this->setDescription("Halt your development machine");
22
    }
23
24
    /**
25
     * @param InputInterface $input
26
     * @param OutputInterface $output
27
     * @return ProcessCommand
28
     */
29
    protected function execute(InputInterface $input, OutputInterface $output)
30
    {
31
        $output->writeln('<info>Halting your development environment</info>');
32
        return new ProcessCommand('vagrant halt', $this->_projectPath, $output);
33
    }
34
}
35

src/Magestead/Command/VM/ResumeCommand.php 1 location

@@ 12-34 (lines=23) @@
9
 * Class ResumeCommand
10
 * @package Magestead\Command\VM
11
 */
12
class ResumeCommand extends Command
13
{
14
    protected $_projectPath;
15
16
    protected function configure()
17
    {
18
        $this->_projectPath = getcwd();
19
20
        $this->setName("vm:resume");
21
        $this->setDescription("Resume your suspended development machine");
22
    }
23
24
    /**
25
     * @param InputInterface $input
26
     * @param OutputInterface $output
27
     * @return ProcessCommand
28
     */
29
    protected function execute(InputInterface $input, OutputInterface $output)
30
    {
31
        $output->writeln('<info>Resuming your development environment</info>');
32
        return new ProcessCommand('vagrant resume', $this->_projectPath, $output);
33
    }
34
}
35

src/Magestead/Command/VM/StatusCommand.php 1 location

@@ 12-34 (lines=23) @@
9
 * Class StatusCommand
10
 * @package Magestead\Command\VM
11
 */
12
class StatusCommand extends Command
13
{
14
    protected $_projectPath;
15
16
    protected function configure()
17
    {
18
        $this->_projectPath = getcwd();
19
20
        $this->setName("vm:status");
21
        $this->setDescription("Get the status of your development machine");
22
    }
23
24
    /**
25
     * @param InputInterface $input
26
     * @param OutputInterface $output
27
     * @return ProcessCommand
28
     */
29
    protected function execute(InputInterface $input, OutputInterface $output)
30
    {
31
        $output->writeln('<info>Getting machine status</info>');
32
        return new ProcessCommand('vagrant status', $this->_projectPath, $output);
33
    }
34
}
35

src/Magestead/Command/VM/SuspendCommand.php 1 location

@@ 12-34 (lines=23) @@
9
 * Class SuspendCommand
10
 * @package Magestead\Command\VM
11
 */
12
class SuspendCommand extends Command
13
{
14
    protected $_projectPath;
15
16
    protected function configure()
17
    {
18
        $this->_projectPath = getcwd();
19
20
        $this->setName("vm:suspend");
21
        $this->setDescription("Suspend your development machine");
22
    }
23
24
    /**
25
     * @param InputInterface $input
26
     * @param OutputInterface $output
27
     * @return ProcessCommand
28
     */
29
    protected function execute(InputInterface $input, OutputInterface $output)
30
    {
31
        $output->writeln('<info>Suspending your development machine</info>');
32
        return new ProcessCommand('vagrant suspend', $this->_projectPath, $output);
33
    }
34
}
35

src/Magestead/Command/VM/UpCommand.php 1 location

@@ 12-34 (lines=23) @@
9
 * Class UpCommand
10
 * @package Magestead\Command\VM
11
 */
12
class UpCommand extends Command
13
{
14
    protected $_projectPath;
15
16
    protected function configure()
17
    {
18
        $this->_projectPath = getcwd();
19
20
        $this->setName("vm:up");
21
        $this->setDescription("Spin up your development machine");
22
    }
23
24
    /**
25
     * @param InputInterface $input
26
     * @param OutputInterface $output
27
     * @return ProcessCommand
28
     */
29
    protected function execute(InputInterface $input, OutputInterface $output)
30
    {
31
        $output->writeln('<info>Spinning up your development machine</info>');
32
        return new ProcessCommand('vagrant up', $this->_projectPath, $output);
33
    }
34
}
35

src/Magestead/Command/UpdateCommand.php 1 location

@@ 12-39 (lines=28) @@
9
 * Class UpdateCommand
10
 * @package Magestead\Command
11
 */
12
class UpdateCommand extends Command
13
{
14
    private $projectPath;
15
16
    /**
17
     * Configure the command and description
18
     */
19
    public function configure()
20
    {
21
        $this->projectPath = getcwd();
22
23
        $this->setName("self-update");
24
        $this->setDescription("Check for new updates for Magestead CLI");
25
    }
26
27
    /**
28
     * Execute a global composer update for the package
29
     *
30
     * @param InputInterface $input
31
     * @param OutputInterface $output
32
     * @return ProcessCommand
33
     */
34
    protected function execute(InputInterface $input, OutputInterface $output)
35
    {
36
        $output->writeln('<info>Checking for Updates</info>');
37
        return new ProcessCommand('composer global update richdynamix/magestead', $this->projectPath, $output);
38
    }
39
}