public override bool SaveTestBenchManifest(AVM.DDP.MetaAvmProject project)
        {
            if (project == null)
            {
                throw new ArgumentNullException("project");
            }

            this.ThrowIfNotExpanded();

            this.EnsureOutputDirectory();


            //TODO: review this method - are we doing the right thing? are we doing the thing right?
            var originalTestBench = this.parametricExploration
                .Children
                .TestBenchRefCollection
                .FirstOrDefault()
                .Referred
                .TestBenchType;


            var expandedTestBench = this.expandedParametricExploration
                .Children
                .TestBenchRefCollection
                .FirstOrDefault()
                .Referred
                .TestBenchType;


            var success = project.SaveTestBenchManifest(
                this.Configuration.Name,
                expandedTestBench,
                this.OutputDirectory,
                originalTestBench);


            return success;
        }
        public override bool SaveTestBenchManifest(AVM.DDP.MetaAvmProject project)
        {
            if (project == null)
            {
                throw new ArgumentNullException("project");
            }

            this.ThrowIfNotExpanded();

            this.EnsureOutputDirectory();

            bool success = false;
            try
            {
                success = project.SaveTestBenchManifest(
                this.Configuration.Name,
                this.expandedTestBenchType,
                this.OutputDirectory,
                this.testBenchType);
            }
            catch (Exception ex)
            {
                throw new AnalysisModelProcessorException("Saving test bench manifest failed.", ex);
            }

            return success;
        }