QueryFactory.cs 780 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. namespace RunnersMeet.Server.Persistence;
  2. public class QueryFactory
  3. {
  4. private readonly IDatabase _database;
  5. public QueryFactory(IDatabase database)
  6. {
  7. _database = database;
  8. }
  9. public CreateTrackCommand CreateTrackCommand()
  10. {
  11. return new CreateTrackCommand(_database);
  12. }
  13. public TrackQuery TrackQuery()
  14. {
  15. return new TrackQuery(_database);
  16. }
  17. public UpdateTrackCommand UpdateTrackCommand()
  18. {
  19. return new UpdateTrackCommand(_database);
  20. }
  21. public DeleteTrackCommand DeleteTrackCommand()
  22. {
  23. return new DeleteTrackCommand(_database);
  24. }
  25. public ValidateUserCommand ValidateUserCommand()
  26. {
  27. return new ValidateUserCommand(_database);
  28. }
  29. public GetUserQuery GetUserQuery()
  30. {
  31. return new GetUserQuery(_database);
  32. }
  33. }