Bånder

MatchingStrategy
in package

Table of Contents

Properties

$artistQualityValidator  : ArtistQualityValidator
$logger  : LoggerInterface

Methods

__construct()  : mixed
findBestAlbumMatch()  : array<string|int, mixed>|null
Find the best album match from search results with adaptive threshold
findBestArtistMatch()  : array<string|int, mixed>|null
findBestSongMatch()  : array<string|int, mixed>|null
albumHasCover()  : bool
analyzeSongMetadataCompleteness()  : float
calculateAlbumMatchScore()  : float
calculateArtistSimilarity()  : float
calculateDurationSimilarity()  : float
calculateMetadataCompletenessBoost()  : float
calculateSongArtistSimilarity()  : float
calculateSongMatchScore()  : float
calculateStringSimilarity()  : float
calculateTrackCompatibilityScore()  : float
calculateYearScore()  : float
extractArtistNames()  : array<string|int, mixed>
extractTrackCount()  : int|null
filterMusicReleases()  : array<string|int, mixed>
normalizeString()  : string
removeDuplicateResults()  : array<string|int, mixed>

Properties

Methods

findBestAlbumMatch()

Find the best album match from search results with adaptive threshold

public findBestAlbumMatch(array<string|int, mixed> $results, Album $album) : array<string|int, mixed>|null
Parameters
$results : array<string|int, mixed>
$album : Album
Return values
array<string|int, mixed>|null

findBestArtistMatch()

public findBestArtistMatch(array<string|int, mixed> $results, Artist $artist) : array<string|int, mixed>|null
Parameters
$results : array<string|int, mixed>
$artist : Artist
Return values
array<string|int, mixed>|null

findBestSongMatch()

public findBestSongMatch(array<string|int, mixed> $results, Song $song) : array<string|int, mixed>|null
Parameters
$results : array<string|int, mixed>
$song : Song
Return values
array<string|int, mixed>|null

analyzeSongMetadataCompleteness()

private analyzeSongMetadataCompleteness(Album $album) : float
Parameters
$album : Album
Return values
float

calculateAlbumMatchScore()

private calculateAlbumMatchScore(array<string|int, mixed> $result, Album $album) : float
Parameters
$result : array<string|int, mixed>
$album : Album
Return values
float

calculateArtistSimilarity()

private calculateArtistSimilarity(array<string|int, mixed> $result, Album $album) : float
Parameters
$result : array<string|int, mixed>
$album : Album
Return values
float

calculateDurationSimilarity()

private calculateDurationSimilarity(array<string|int, mixed> $result, Song $song) : float
Parameters
$result : array<string|int, mixed>
$song : Song
Return values
float

calculateMetadataCompletenessBoost()

private calculateMetadataCompletenessBoost(Album $album) : float
Parameters
$album : Album
Return values
float

calculateSongArtistSimilarity()

private calculateSongArtistSimilarity(array<string|int, mixed> $result, Song $song) : float
Parameters
$result : array<string|int, mixed>
$song : Song
Return values
float

calculateSongMatchScore()

private calculateSongMatchScore(array<string|int, mixed> $result, Song $song) : float
Parameters
$result : array<string|int, mixed>
$song : Song
Return values
float

calculateStringSimilarity()

private calculateStringSimilarity(string $str1, string $str2) : float
Parameters
$str1 : string
$str2 : string
Return values
float

calculateTrackCompatibilityScore()

private calculateTrackCompatibilityScore(array<string|int, mixed> $result, Album $album) : float
Parameters
$result : array<string|int, mixed>
$album : Album
Return values
float

calculateYearScore()

private calculateYearScore(array<string|int, mixed> $result, Album $album) : float
Parameters
$result : array<string|int, mixed>
$album : Album
Return values
float

extractArtistNames()

private extractArtistNames(array<string|int, mixed> $result) : array<string|int, mixed>
Parameters
$result : array<string|int, mixed>
Return values
array<string|int, mixed>

extractTrackCount()

private extractTrackCount(array<string|int, mixed> $result) : int|null
Parameters
$result : array<string|int, mixed>
Return values
int|null

filterMusicReleases()

private filterMusicReleases(array<string|int, mixed> $results, Album $album) : array<string|int, mixed>
Parameters
$results : array<string|int, mixed>
$album : Album
Return values
array<string|int, mixed>

normalizeString()

private normalizeString(string $string) : string
Parameters
$string : string
Return values
string

removeDuplicateResults()

private removeDuplicateResults(array<string|int, mixed> $results) : array<string|int, mixed>
Parameters
$results : array<string|int, mixed>
Return values
array<string|int, mixed>

        
On this page

Search results