farm out actual obstruction check to xblock method