JEMBOT MAWOT Bypass Shell

Current Path : /home/cinepatreb/billetterie/modules/mollie/shared/Infrastructure/Repository/
Upload File :
Current File : /home/cinepatreb/billetterie/modules/mollie/shared/Infrastructure/Repository/AbstractRepository.php

<?php
/**
 * Mollie       https://www.mollie.nl
 *
 * @author      Mollie B.V. <info@mollie.nl>
 * @copyright   Mollie B.V.
 * @license     https://github.com/mollie/PrestaShop/blob/master/LICENSE.md
 *
 * @see        https://github.com/mollie/PrestaShop
 * @codingStandardsIgnoreStart
 */

namespace Mollie\Shared\Infrastructure\Repository;

use Mollie\Shared\Infrastructure\Exception\MollieDatabaseException;

if (!defined('_PS_VERSION_')) {
    exit;
}

class AbstractRepository implements ReadOnlyRepositoryInterface
{
    /**
     * @var string
     */
    private $fullyClassifiedClassName;

    public function __construct(string $fullyClassifiedClassName)
    {
        $this->fullyClassifiedClassName = $fullyClassifiedClassName;
    }

    /** {@inheritdoc} */
    public function findAll(int $langId = null): \PrestaShopCollection
    {
        return new \PrestaShopCollection($this->fullyClassifiedClassName, $langId);
    }

    /** {@inheritdoc} */
    public function findOneBy(array $keyValueCriteria, int $langId = null): ?\ObjectModel
    {
        $psCollection = new \PrestaShopCollection($this->fullyClassifiedClassName, $langId);

        foreach ($keyValueCriteria as $field => $value) {
            $psCollection = $psCollection->where($field, '=', $value);
        }

        $first = $psCollection->getFirst();

        /* @phpstan-ignore-next-line */
        return false === $first ? null : $first;
    }

    /** {@inheritdoc} */
    public function findAllBy(array $keyValueCriteria, int $langId = null): ?\PrestaShopCollection
    {
        $psCollection = new \PrestaShopCollection($this->fullyClassifiedClassName, $langId);

        foreach ($keyValueCriteria as $field => $value) {
            $psCollection = $psCollection->where($field, '=', $value);
        }

        $all = $psCollection->getAll();

        /* @phpstan-ignore-next-line */
        return false === $all ? null : $all;
    }

    /** {@inheritdoc} */
    public function findOrFail(array $keyValueCriteria, int $langId = null): \ObjectModel
    {
        try {
            $value = $this->findOneBy($keyValueCriteria, $langId);
        } catch (\Throwable $exception) {
            throw MollieDatabaseException::unknownError($exception);
        }

        if (!$value) {
            throw MollieDatabaseException::failedToFindRecord($this->fullyClassifiedClassName, $keyValueCriteria);
        }

        return $value;
    }
}

xxxxx1.0, XXX xxxx