view models
This commit is contained in:
@@ -7,6 +7,8 @@ import { PaymentsApiClient } from '../api/payments/PaymentsApiClient';
|
||||
import { AuthApiClient } from '../api/auth/AuthApiClient';
|
||||
import { AnalyticsApiClient } from '../api/analytics/AnalyticsApiClient';
|
||||
import { MediaApiClient } from '../api/media/MediaApiClient';
|
||||
import { ConsoleErrorReporter } from '../infrastructure/logging/ConsoleErrorReporter';
|
||||
import { ConsoleLogger } from '../infrastructure/logging/ConsoleLogger';
|
||||
|
||||
// Services
|
||||
import { RaceService } from './races/RaceService';
|
||||
@@ -37,6 +39,9 @@ import { SessionService } from './auth/SessionService';
|
||||
* Services now directly instantiate View Models instead of using Presenters.
|
||||
*/
|
||||
export class ServiceFactory {
|
||||
private readonly errorReporter = new ConsoleErrorReporter();
|
||||
private readonly logger = new ConsoleLogger();
|
||||
|
||||
private readonly apiClients: {
|
||||
races: RacesApiClient;
|
||||
drivers: DriversApiClient;
|
||||
@@ -52,15 +57,15 @@ export class ServiceFactory {
|
||||
constructor(baseUrl: string) {
|
||||
// Initialize API clients
|
||||
this.apiClients = {
|
||||
races: new RacesApiClient(baseUrl),
|
||||
drivers: new DriversApiClient(baseUrl),
|
||||
teams: new TeamsApiClient(baseUrl),
|
||||
leagues: new LeaguesApiClient(baseUrl),
|
||||
sponsors: new SponsorsApiClient(baseUrl),
|
||||
payments: new PaymentsApiClient(baseUrl),
|
||||
auth: new AuthApiClient(baseUrl),
|
||||
analytics: new AnalyticsApiClient(baseUrl),
|
||||
media: new MediaApiClient(baseUrl),
|
||||
races: new RacesApiClient(baseUrl, this.errorReporter, this.logger),
|
||||
drivers: new DriversApiClient(baseUrl, this.errorReporter, this.logger),
|
||||
teams: new TeamsApiClient(baseUrl, this.errorReporter, this.logger),
|
||||
leagues: new LeaguesApiClient(baseUrl, this.errorReporter, this.logger),
|
||||
sponsors: new SponsorsApiClient(baseUrl, this.errorReporter, this.logger),
|
||||
payments: new PaymentsApiClient(baseUrl, this.errorReporter, this.logger),
|
||||
auth: new AuthApiClient(baseUrl, this.errorReporter, this.logger),
|
||||
analytics: new AnalyticsApiClient(baseUrl, this.errorReporter, this.logger),
|
||||
media: new MediaApiClient(baseUrl, this.errorReporter, this.logger),
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user