AlbumQualityValidator
extends BaseQualityValidator
in package
Table of Contents
Constants
- HIGH_CONFIDENCE_THRESHOLD = 0.7
- MIN_QUALITY_THRESHOLD = 0.4
Properties
Methods
- __construct() : mixed
- isHighConfidenceMatch() : bool
- isValidMatch() : bool
- scoreMatch() : float
- calculateStringSimilarity() : float
- Enhanced international string similarity
- hasAnyField() : bool
- normalizeText() : string
- Normalize text for international comparison
- extractMetadataArtists() : array<string|int, mixed>
- hasStrongArtistMatch() : bool
- hasTrackListing() : bool
- scoreAdditionalInfo() : float
- scoreArtistInfo() : float
- scoreReleaseInfo() : float
- scoreTitleSimilarity() : float
- scoreTrackListing() : float
Constants
HIGH_CONFIDENCE_THRESHOLD
private
mixed
HIGH_CONFIDENCE_THRESHOLD
= 0.7
MIN_QUALITY_THRESHOLD
private
mixed
MIN_QUALITY_THRESHOLD
= 0.4
Properties
$textSimilarity
protected
TextSimilarityService
$textSimilarity
Methods
__construct()
public
__construct(TextSimilarityService $textSimilarity) : mixed
Parameters
- $textSimilarity : TextSimilarityService
isHighConfidenceMatch()
public
isHighConfidenceMatch(array<string|int, mixed> $metadata, Album|BaseModel $model, float $qualityScore) : bool
Parameters
Return values
boolisValidMatch()
public
isValidMatch(array<string|int, mixed> $metadata, float $qualityScore) : bool
Parameters
- $metadata : array<string|int, mixed>
- $qualityScore : float
Return values
boolscoreMatch()
public
scoreMatch(array<string|int, mixed> $metadata, Album|BaseModel $model) : float
Parameters
Return values
floatcalculateStringSimilarity()
Enhanced international string similarity
protected
calculateStringSimilarity(string $str1, string $str2) : float
Parameters
- $str1 : string
- $str2 : string
Return values
floathasAnyField()
protected
hasAnyField(array<string|int, mixed> $data, array<string|int, mixed> $fields) : bool
Parameters
- $data : array<string|int, mixed>
- $fields : array<string|int, mixed>
Return values
boolnormalizeText()
Normalize text for international comparison
protected
normalizeText(string $text) : string
Parameters
- $text : string
Return values
stringextractMetadataArtists()
private
extractMetadataArtists(array<string|int, mixed> $metadata) : array<string|int, mixed>
Parameters
- $metadata : array<string|int, mixed>
Return values
array<string|int, mixed>hasStrongArtistMatch()
private
hasStrongArtistMatch(array<string|int, mixed> $metadata, Album $album) : bool
Parameters
- $metadata : array<string|int, mixed>
- $album : Album
Return values
boolhasTrackListing()
private
hasTrackListing(array<string|int, mixed> $metadata) : bool
Parameters
- $metadata : array<string|int, mixed>
Return values
boolscoreAdditionalInfo()
private
scoreAdditionalInfo(array<string|int, mixed> $metadata) : float
Parameters
- $metadata : array<string|int, mixed>
Return values
floatscoreArtistInfo()
private
scoreArtistInfo(array<string|int, mixed> $metadata, Album $album) : float
Parameters
- $metadata : array<string|int, mixed>
- $album : Album
Return values
floatscoreReleaseInfo()
private
scoreReleaseInfo(array<string|int, mixed> $metadata) : float
Parameters
- $metadata : array<string|int, mixed>
Return values
floatscoreTitleSimilarity()
private
scoreTitleSimilarity(array<string|int, mixed> $metadata, Album $album) : float
Parameters
- $metadata : array<string|int, mixed>
- $album : Album
Return values
floatscoreTrackListing()
private
scoreTrackListing(array<string|int, mixed> $metadata) : float
Parameters
- $metadata : array<string|int, mixed>