#5 Using JobInfoListener instead of anonymous Consumer<String>