Example #1
0
        public string Translate(ICtlProperty ctlProperty, KpMetaModel kpMetaModel, ModelCheckingTarget target)
        {
            var propertyTranslator = default(ICtlPropertyTranslator);

            switch (target)
            {
            case ModelCheckingTarget.NuSmv: propertyTranslator = new NuSmvCtlTranslator(kpMetaModel); break;
            }

            return(ctlProperty.Accept(propertyTranslator));
        }
        private IModelCheckingExecutor GetExecutor(ModelCheckingTarget target)
        {
            var executor = default(IModelCheckingExecutor);

            switch (target)
            {
            case ModelCheckingTarget.Promela: executor = new SpinExecutor(); break;

            case ModelCheckingTarget.NuSmv: executor = new NuSmvExecutor(); break;
            }

            return(executor);
        }
 public async Task Verify(FileInfo kplModelFile, IEnumerable <IProperty> properties, FileInfo verificationModelFile, ModelCheckingTarget target, IModelCheckingProgressMonitor monitor)
 {
     var executor = GetExecutor(target);
     await executor.Verify(kplModelFile, properties, verificationModelFile, monitor);
 }