30 lines
714 B
PHP
30 lines
714 B
PHP
<?php
|
|
|
|
namespace App\BusProNet\XmlLoader;
|
|
|
|
use App\BusProNet\Traits\TypeConversionTrait;
|
|
use League\Flysystem\FilesystemOperator;
|
|
use Symfony\Component\DomCrawler\Crawler;
|
|
use Symfony\Contracts\Cache\CacheInterface;
|
|
|
|
abstract class AbstractLoader
|
|
{
|
|
use TypeConversionTrait;
|
|
|
|
public function __construct(
|
|
protected readonly CacheInterface $cache,
|
|
protected readonly FilesystemOperator $xmlExport,
|
|
) {
|
|
}
|
|
|
|
protected function getStringOrNullValue(Crawler $node): ?string
|
|
{
|
|
return 0 < $node->count() ? $node->text() : null;
|
|
}
|
|
|
|
protected function getIntOrNullValue(Crawler $node): ?int
|
|
{
|
|
return 0 < $node->count() ? (int) $node->text() : null;
|
|
}
|
|
}
|