add methods to IOReactor