This could also be solved by writing a custom driver that handles that situations...