For the sake of the API, these can be virtual and allow our other software
to mock them