Abstract recording methods into IRecorder