public void ExecuteInitializer(IResourceInitializer initializer) { var roots = initializer.Execute(Graph); if (roots.Count == 0) { throw new InvalidOperationException("ResourceInitializer must return at least one resource"); } using (var uow = UowFactory.Create()) { ResourceLinker.SaveRoots(uow, roots); uow.SaveChanges(); } }
private void ExecuteInitializer(IResourceInitializer initializer, Action <string> outputStream) { try { outputStream($"Executing initializer '{initializer.Name}' ..."); ResourceManager.ExecuteInitializer(initializer); outputStream("Successful! Restart the module to load the changes!"); outputStream(string.Empty); } catch (Exception e) { outputStream(ExceptionPrinter.Print(e)); outputStream("... initialization failed!"); } }