Let Operation handle removing resources at the right time.
Add a resourcesToExpunge
item to the Result
attribute of operations,
and have the Operation
base class remove resources from the
resource manager after operation observers have run, and before releasing
resource locks, to avoid conflicts. Rework the RemoveResource
operation to use this mechanism, and have File .. Close Resource
use
this operation instead of closing resources directly.
Because Operation
now accesses the resource manager, there is no need
for the ResourceManagerOperation
sub-class, so alias it to XMLOperation
.
Fix #484 (closed)