Despite this 3 lines this method mostly duplicates its parent.

You could do all the things in doWrite without overriding write() at all?