for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace OroCRM\Bundle\MagentoBundle\ImportExport\Serializer;
use Psr\Log\LoggerInterface;
use Oro\Bundle\ImportExportBundle\Field\FieldHelper;
use Oro\Bundle\ImportExportBundle\Serializer\Normalizer\DenormalizerInterface;
use OroCRM\Bundle\MagentoBundle\Provider\ChannelType;
class DefaultConfigurableEntityDenormalizer implements DenormalizerInterface
{
/** @var FieldHelper */
protected $fieldHelper;
/** @var LoggerInterface */
protected $logger;
/**
* @param FieldHelper $fieldHelper
* @param LoggerInterface $logger
*/
public function __construct(FieldHelper $fieldHelper, LoggerInterface $logger)
$this->fieldHelper = $fieldHelper;
$this->logger = $logger;
}
* {@inheritdoc}
public function denormalize($data, $class, $format = null, array $context = [])
$this->logger->warning(
sprintf('Invalid configuration for %s for mapping configurable entity attributes.', $class),
[
'data' => $data,
'context' => $context
]
);
return null;
public function supportsDenormalization($data, $type, $format = null, array $context = [])
return
!is_array($data) &&
class_exists($type) &&
$this->fieldHelper->hasConfig($type) &&
!empty($context['channelType']) &&
$context['channelType'] == ChannelType::TYPE;