mirror of
https://github.com/andres-montanez/Magallanes
synced 2024-05-29 11:52:23 +02:00
Remove Composer Lock. Tweak Commands and Tasks instantiation
This commit is contained in:
parent
3908c20d8e
commit
5d95b4d6cb
1
.gitignore
vendored
1
.gitignore
vendored
|
@ -1,2 +1,3 @@
|
||||||
/vendor/
|
/vendor/
|
||||||
/build
|
/build
|
||||||
|
composer.lock
|
||||||
|
|
|
@ -21,6 +21,7 @@ use Symfony\Component\Console\Event\ConsoleExceptionEvent;
|
||||||
use Symfony\Component\Console\ConsoleEvents;
|
use Symfony\Component\Console\ConsoleEvents;
|
||||||
use Symfony\Component\Console\Application;
|
use Symfony\Component\Console\Application;
|
||||||
use Symfony\Component\Yaml\Yaml;
|
use Symfony\Component\Yaml\Yaml;
|
||||||
|
use ReflectionClass;
|
||||||
use Mage\Runtime\Exception\RuntimeException;
|
use Mage\Runtime\Exception\RuntimeException;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -96,11 +97,13 @@ class MageApplication extends Application
|
||||||
foreach ($finder as $file) {
|
foreach ($finder as $file) {
|
||||||
$class = substr('\\Mage\\Command\\BuiltIn\\' . str_replace('/', '\\', $file->getRelativePathname()), 0, -4);
|
$class = substr('\\Mage\\Command\\BuiltIn\\' . str_replace('/', '\\', $file->getRelativePathname()), 0, -4);
|
||||||
if (class_exists($class)) {
|
if (class_exists($class)) {
|
||||||
$command = new $class();
|
$reflex = new ReflectionClass($class);
|
||||||
|
if ($reflex->isInstantiable()) {
|
||||||
if ($command instanceof AbstractCommand) {
|
$command = new $class();
|
||||||
$command->setRuntime($this->runtime);
|
if ($command instanceof AbstractCommand) {
|
||||||
$this->add($command);
|
$command->setRuntime($this->runtime);
|
||||||
|
$this->add($command);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -14,6 +14,7 @@ use Mage\Runtime\Runtime;
|
||||||
use Mage\Runtime\Exception\RuntimeException;
|
use Mage\Runtime\Exception\RuntimeException;
|
||||||
use Symfony\Component\Finder\Finder;
|
use Symfony\Component\Finder\Finder;
|
||||||
use Symfony\Component\Finder\SplFileInfo;
|
use Symfony\Component\Finder\SplFileInfo;
|
||||||
|
use ReflectionClass;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Task Factory
|
* Task Factory
|
||||||
|
@ -78,11 +79,14 @@ class TaskFactory
|
||||||
$task->setOptions($options);
|
$task->setOptions($options);
|
||||||
return $task;
|
return $task;
|
||||||
} elseif (class_exists($name)) {
|
} elseif (class_exists($name)) {
|
||||||
$task = new $name();
|
$reflex = new ReflectionClass($name);
|
||||||
if ($task instanceof AbstractTask) {
|
if ($reflex->isInstantiable()) {
|
||||||
$task->setOptions($options);
|
$task = new $name();
|
||||||
$this->add($task);
|
if ($task instanceof AbstractTask) {
|
||||||
return $task;
|
$task->setOptions($options);
|
||||||
|
$this->add($task);
|
||||||
|
return $task;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -101,10 +105,12 @@ class TaskFactory
|
||||||
foreach ($finder as $file) {
|
foreach ($finder as $file) {
|
||||||
$class = substr('\\Mage\\Task\\BuiltIn\\' . str_replace('/', '\\', $file->getRelativePathname()), 0, -4);
|
$class = substr('\\Mage\\Task\\BuiltIn\\' . str_replace('/', '\\', $file->getRelativePathname()), 0, -4);
|
||||||
if (class_exists($class)) {
|
if (class_exists($class)) {
|
||||||
$task = new $class();
|
$reflex = new ReflectionClass($class);
|
||||||
|
if ($reflex->isInstantiable()) {
|
||||||
if ($task instanceof AbstractTask) {
|
$task = new $class();
|
||||||
$this->add($task);
|
if ($task instanceof AbstractTask) {
|
||||||
|
$this->add($task);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue