29 lines
1.2 KiB
TypeScript
29 lines
1.2 KiB
TypeScript
import type { IImageServicePort } from '@core/racing/application/ports/IImageServicePort';
|
|
import type { Logger } from '@core/shared/logging/Logger';
|
|
|
|
export class InMemoryImageServiceAdapter implements IImageServicePort {
|
|
constructor(private readonly logger: Logger) {
|
|
this.logger.info('InMemoryImageServiceAdapter initialized.');
|
|
}
|
|
|
|
getDriverAvatar(driverId: string): string {
|
|
this.logger.debug(`[InMemoryImageServiceAdapter] Getting avatar for driver: ${driverId}`);
|
|
return `https://cdn.example.com/avatars/${driverId}.png`; // Mock URL
|
|
}
|
|
|
|
getTeamLogo(teamId: string): string {
|
|
this.logger.debug(`[InMemoryImageServiceAdapter] Getting logo for team: ${teamId}`);
|
|
return `https://cdn.example.com/logos/team-${teamId}.png`; // Mock URL
|
|
}
|
|
|
|
getLeagueCover(leagueId: string): string {
|
|
this.logger.debug(`[InMemoryImageServiceAdapter] Getting cover for league: ${leagueId}`);
|
|
return `https://cdn.example.com/covers/league-${leagueId}.png`; // Mock URL
|
|
}
|
|
|
|
getLeagueLogo(leagueId: string): string {
|
|
this.logger.debug(`[InMemoryImageServiceAdapter] Getting logo for league: ${leagueId}`);
|
|
return `https://cdn.example.com/logos/league-${leagueId}.png`; // Mock URL
|
|
}
|
|
}
|