Instead of these confusing if/else statements, I would add the method to all drivers.