Your IP : 216.73.216.97


Current Path : /var/www/clients/client3/web2/web/vendor/magento/framework/App/Cache/Tag/
Upload File :
Current File : /var/www/clients/client3/web2/web/vendor/magento/framework/App/Cache/Tag/Resolver.php

<?php
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */
namespace Magento\Framework\App\Cache\Tag;

/**
 * Resolves invalidation tags for specified object using different strategies
 */
class Resolver
{
    /**
     * Tag strategies factory
     *
     * @var Strategy\Factory
     */
    private $strategyFactory;

    /**
     * Resolver constructor.
     *
     * @param Strategy\Factory $factory
     */
    public function __construct(\Magento\Framework\App\Cache\Tag\Strategy\Factory $factory)
    {
        $this->strategyFactory = $factory;
    }

    /**
     * Identify invalidation tags for the object using custom strategies
     *
     * @param object $object
     * @throws \InvalidArgumentException
     * @return array
     */
    public function getTags($object)
    {
        if (!is_object($object)) {
            throw new \InvalidArgumentException('Provided argument is not an object');
        }

        return $this->strategyFactory->getStrategy($object)->getTags($object);
    }
}