Added artisan command schedule:list
This commit is contained in:
parent
55d369df47
commit
b0fcdaa375
66
src/Commands/ScheduleList.php
Normal file
66
src/Commands/ScheduleList.php
Normal file
@ -0,0 +1,66 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Leenooks\Commands;
|
||||||
|
|
||||||
|
use Illuminate\Console\Command;
|
||||||
|
use Illuminate\Console\Scheduling\Schedule;
|
||||||
|
|
||||||
|
class ScheduleList extends Command
|
||||||
|
{
|
||||||
|
protected $signature = 'schedule:list';
|
||||||
|
|
||||||
|
protected $description = 'List when scheduled commands are executed.';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @var Schedule
|
||||||
|
*/
|
||||||
|
protected $schedule;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* ScheduleList constructor.
|
||||||
|
*
|
||||||
|
* @param Schedule $schedule
|
||||||
|
*/
|
||||||
|
public function __construct(Schedule $schedule)
|
||||||
|
{
|
||||||
|
parent::__construct();
|
||||||
|
|
||||||
|
$this->schedule = $schedule;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Execute the console command.
|
||||||
|
*
|
||||||
|
* @return mixed
|
||||||
|
*/
|
||||||
|
public function handle()
|
||||||
|
{
|
||||||
|
$events = array_map(function ($event) {
|
||||||
|
return [
|
||||||
|
'cron' => $event->expression,
|
||||||
|
'command' => static::fixupCommand($event->command),
|
||||||
|
];
|
||||||
|
}, $this->schedule->events());
|
||||||
|
|
||||||
|
$this->table(
|
||||||
|
['Cron', 'Command'],
|
||||||
|
$events
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* If it's an artisan command, strip off the PHP
|
||||||
|
*
|
||||||
|
* @param $command
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
protected static function fixupCommand($command)
|
||||||
|
{
|
||||||
|
$parts = explode(' ', $command);
|
||||||
|
if (count($parts) > 2 && $parts[1] === "'artisan'") {
|
||||||
|
array_shift($parts);
|
||||||
|
}
|
||||||
|
|
||||||
|
return implode(' ', $parts);
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user