Added dependency to lodner cms plugin and example scheduled task.
This commit is contained in:
+3
-2
@@ -2,7 +2,7 @@
|
||||
"name": "lodner-set-builder/lodner-set-builder",
|
||||
"description": "lodner-set-builder/lodner-set-builder",
|
||||
"type": "shopware-platform-plugin",
|
||||
"version": "1.0.0",
|
||||
"version": "0.0.1",
|
||||
"authors": [
|
||||
{
|
||||
"name": "Matthias Lodner",
|
||||
@@ -11,7 +11,8 @@
|
||||
],
|
||||
"license": "MIT",
|
||||
"require": {
|
||||
"shopware/core": "~6.7.0"
|
||||
"shopware/core": "~6.7.0",
|
||||
"lodner-geschmackswelten-cms/lodner-geschmackswelten-cms": "~0.0.1"
|
||||
},
|
||||
"extra": {
|
||||
"shopware-plugin-class": "LodnerSetBuilder\\LodnerSetBuilder",
|
||||
|
||||
@@ -10,10 +10,17 @@
|
||||
<tag name="console.command"/>
|
||||
</service>
|
||||
|
||||
<service id="LodnerSetBuilder\ScheduledTask\ExampleTask">
|
||||
<service id="LodnerSetBuilder\ScheduledTask\UpdateTagsTask">
|
||||
<tag name="shopware.scheduled.task"/>
|
||||
</service>
|
||||
|
||||
<service id="LodnerSetBuilder\ScheduledTask\UpdateTagsHandler">
|
||||
<argument type="service" id="scheduled_task.repository" />
|
||||
<argument type="service" id="logger"/>
|
||||
<argument type="service" id="Doctrine\DBAL\Connection"/>
|
||||
<tag name="messenger.message_handler"/>
|
||||
</service>
|
||||
|
||||
<service id="LodnerSetBuilder\Subscriber\MySubscriber">
|
||||
<tag name="kernel.event_subscriber"/>
|
||||
</service>
|
||||
|
||||
@@ -1,18 +0,0 @@
|
||||
<?php declare(strict_types=1);
|
||||
|
||||
namespace LodnerSetBuilder\ScheduledTask;
|
||||
|
||||
use Shopware\Core\Framework\MessageQueue\ScheduledTask\ScheduledTask;
|
||||
|
||||
class ExampleTask extends ScheduledTask
|
||||
{
|
||||
public static function getTaskName(): string
|
||||
{
|
||||
return 'swag.example_task';
|
||||
}
|
||||
|
||||
public static function getDefaultInterval(): int
|
||||
{
|
||||
return 30; // 5 minutes
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,34 @@
|
||||
<?php declare(strict_types=1);
|
||||
|
||||
namespace LodnerSetBuilder\ScheduledTask;
|
||||
|
||||
use Psr\Log\LoggerInterface;
|
||||
use Shopware\Core\Framework\DataAbstractionLayer\EntityRepository;
|
||||
use Doctrine\DBAL\Connection;
|
||||
|
||||
use Shopware\Core\Framework\MessageQueue\ScheduledTask\ScheduledTaskHandler;
|
||||
use Symfony\Component\Messenger\Attribute\AsMessageHandler;
|
||||
|
||||
#[AsMessageHandler(handles: UpdateTagsTask::class)]
|
||||
class UpdateTagsHandler extends ScheduledTaskHandler {
|
||||
public function __construct(
|
||||
EntityRepository $scheduledTaskRepository,
|
||||
private readonly LoggerInterface $logger,
|
||||
) {
|
||||
parent::__construct($scheduledTaskRepository, $logger);
|
||||
}
|
||||
|
||||
public static function getHandledMessages(): iterable {
|
||||
return [UpdateTagsTask::class];
|
||||
}
|
||||
|
||||
public function run(): void
|
||||
{
|
||||
// TODO: Implement run() method.
|
||||
$this->logger->info(UpdateTagsTask::getTaskName() . '----------> run ');
|
||||
|
||||
|
||||
|
||||
echo("Test");
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
<?php declare(strict_types=1);
|
||||
|
||||
namespace LodnerSetBuilder\ScheduledTask;
|
||||
|
||||
use Shopware\Core\Framework\MessageQueue\ScheduledTask\ScheduledTask;
|
||||
|
||||
class UpdateTagsTask extends ScheduledTask
|
||||
{
|
||||
public static function getTaskName(): string
|
||||
{
|
||||
return 'lodner.update_tags_task';
|
||||
}
|
||||
|
||||
public static function getDefaultInterval(): int
|
||||
{
|
||||
// Interval value in seconds.
|
||||
$interval = 5;
|
||||
return $interval; // 30 seconds
|
||||
}
|
||||
|
||||
public static function shouldRescheduleOnFailure(): bool
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user