Files
newznab-tmux-NNTmux/app/Services/NameFixing/Contracts/NameCheckerInterface.php
T

36 lines
944 B
PHP

<?php
declare(strict_types=1);
namespace App\Services\NameFixing\Contracts;
use App\Services\NameFixing\Data\NameFixResult;
/**
* Interface for name checker strategies.
*
* Implementations check releases against specific patterns (TV, Movies, Games, etc.)
* and return potential name fixes when matches are found.
*/
interface NameCheckerInterface
{
/**
* Check a release for name patterns.
*
* @param object $release The release object to check
* @param string $textstring The text content to analyze
* @return NameFixResult|null Returns result if a match is found, null otherwise
*/
public function check(object $release, string $textstring): ?NameFixResult;
/**
* Get the priority of this checker (lower = higher priority).
*/
public function getPriority(): int;
/**
* Get the name/identifier of this checker.
*/
public function getName(): string;
}