Maintaining Transactional Integrity in Long Running Workflow Services: A Policy-Driven Framework