public static List <ModelApplicationBase> GetModuleDifferences(this IModelApplication modelApplication) { var modelSources = ((IModelSources)modelApplication); var modelApplicationBases = new List <ModelApplicationBase>(); var node = (ModelNode)modelApplication; foreach (var moduleBase in modelSources.Modules) { ModelApplicationCreator modelApplicationCreator = node.CreatorInstance; var modelApplicationBase = modelApplicationCreator.CreateModelApplication(); modelApplicationBase.Id = moduleBase.Name; InitializeModelSources(modelApplicationBase, node); var resourcesModelStore = new ResourcesModelStore(moduleBase.GetType().Assembly); resourcesModelStore.Load(modelApplicationBase); var modelViews = ((IModelApplication)modelApplicationBase).Views; if (modelViews != null) { modelApplicationBases.Add(modelApplicationBase); } } ReadFromOtherLayers(modelApplicationBases, node); return(modelApplicationBases); }
protected ModelApplicationBase CreateTestLayer() { return(ApplicationCreator.CreateModelApplication()); }