Files
shlink/module/Core/src/Service/VisitsTrackerInterface.php

31 lines
857 B
PHP
Raw Normal View History

2016-04-17 13:42:52 +02:00
<?php
2017-10-12 10:13:20 +02:00
declare(strict_types=1);
2016-07-19 18:01:39 +02:00
namespace Shlinkio\Shlink\Core\Service;
2016-04-17 13:42:52 +02:00
use Psr\Http\Message\ServerRequestInterface;
use Shlinkio\Shlink\Common\Util\DateRange;
2016-07-19 18:01:39 +02:00
use Shlinkio\Shlink\Core\Entity\Visit;
use Shlinkio\Shlink\Core\Exception\InvalidArgumentException;
2016-04-17 13:42:52 +02:00
interface VisitsTrackerInterface
{
/**
* Tracks a new visit to provided short code, using an array of data to look up information
*
* @param string $shortCode
* @param ServerRequestInterface $request
2016-04-17 13:42:52 +02:00
*/
public function track($shortCode, ServerRequestInterface $request): void;
/**
* Returns the visits on certain short code
*
2017-12-27 16:23:54 +01:00
* @param string $shortCode
* @param DateRange $dateRange
* @return Visit[]
2017-10-22 09:00:32 +02:00
* @throws InvalidArgumentException
*/
2017-12-27 16:23:54 +01:00
public function info(string $shortCode, DateRange $dateRange = null): array;
2016-04-17 13:42:52 +02:00
}