import type { IImageServicePort } from '@core/racing/application/ports/IImageServicePort';
import type { Logger } from '@core/shared/application';

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 `/media/avatar/${driverId}`;
  }

  getTeamLogo(teamId: string): string {
    this.logger.debug(`[InMemoryImageServiceAdapter] Getting logo for team: ${teamId}`);
    return `/media/teams/${teamId}/logo`;
  }

  getLeagueCover(leagueId: string): string {
    this.logger.debug(`[InMemoryImageServiceAdapter] Getting cover for league: ${leagueId}`);
    return `/media/leagues/${leagueId}/cover`;
  }

  getLeagueLogo(leagueId: string): string {
    this.logger.debug(`[InMemoryImageServiceAdapter] Getting logo for league: ${leagueId}`);
    return `/media/leagues/${leagueId}/logo`;
  }
}