@Override
    public Job update(@NotNull final Job job) {
        return genericDao.update(job);
    }
This class is very slim because it uses the GenericDao.
Why event use this class? Why not use the GenericDao directly in the service class?
Some reasons:
1. Hides knowledge of Jooq classes from the service
2. Hides connection provider and GenericDao instantiation -- the service class just gets a working thing injected.
3. It allows the DAO to be easily extended.
<p>
//TODO gh-1072 Maybe the interface could implement the standard methods below? Then this would be even slimmer.
stroom-job/stroom-job-impl-db/src/main/java/stroom/job/impl/db/JobDaoImpl.java