public override IEnumerable <BuildObject> getDependencies(out DependencyDisposition ddisp) { BuildObject obligations = producer.getObligationSet(); HashSet <BuildObject> deps = new HashSet <BuildObject>(); deps.Add(obligations); try { VerificationObligationList vol = VerificationObligationList.fetch(obligations); this.verification_results = vol.getVerificationObligations(); deps.UnionWith(this.verification_results); ddisp = DependencyDisposition.Complete; } catch (ObjNotReadyException) { ddisp = DependencyDisposition.Incomplete; } catch (ObjFailedException) { ddisp = DependencyDisposition.Failed; } return(deps); }
public override IVerbWorker getWorker() { //- Coallesce the VerificationObligationLists from each producer into a single result set IEnumerable<BuildObject> master = new HashSet<BuildObject>(); foreach (IObligationsProducer producer in producers) { VerificationObligationList vol = VerificationObligationList.fetch(producer.getObligationSet()); master = master.Union(vol.getVerificationObligations()); } VerificationObligationList myVOL = new VerificationObligationList(master); myVOL.store(this.outputObject); return new VerbSyncWorker(new Fresh()); }