A repository provides an application-oriented interface over persistence.
Current question
A repository can perform database operations, but should it decide when the entire application transaction begins and commits?
That question leads directly to Transaction Boundaries .