Make dispose method handle disposed? slot and create dispose-object to handle proper resource disposal