public CircuitTestCommands(ICommandService commandService, IContextRegistry contextRegistry, SchemaLoader schemaLoader) { m_commandService = commandService; m_schemaLoader = schemaLoader; }
// methods and properties private XmlDocument LoadConfigurationFile( string configurationFile, SchemaLoader schemaLoader, string schemaNamespace) { using (XmlTextReader textReader = new XmlTextReader(configurationFile)) { XmlReaderSettings validatingReaderSettings = new XmlReaderSettings(); validatingReaderSettings.ValidationType = ValidationType.Schema; validatingReaderSettings.Schemas.Add(schemaLoader.LoadSchemaSet()); using (XmlReader validatingReader = XmlReader.Create(textReader, validatingReaderSettings)) { XmlDocument document = new XmlDocument(new NameTable()); document.Load(validatingReader); if (document.DocumentElement.NamespaceURI != schemaNamespace) { throw CreateConfigurationException( "The namespace '{0}' of the root element is invalid. Expected namespace: '{1}'.", document.DocumentElement.NamespaceURI, schemaNamespace); } return(document); } } }
public void retrieve_creation_script() { var sql = SchemaLoader.ToCreationScript("foo"); sql.ShouldContain("create table foo.jasper_outgoing_envelopes"); sql.ShouldContain("create table foo.jasper_incoming_envelopes"); }
public void retrieve_drop_script() { var sql = SchemaLoader.ToDropScript("foo"); sql.ShouldContain("drop table foo.jasper_outgoing_envelopes"); sql.ShouldContain("drop table foo.jasper_incoming_envelopes"); }
/// <summary> /// Resolves the Uri to a Dom object using the parent's collection's resolvers</summary> /// <returns>Dom object, referenced by the Uri, or null if uri can't be resolved</returns> public void Resolve() { if (m_target == null) { var gameDocRegistry = Globals.MEFContainer.GetExportedValue <GameDocumentRegistry>(); Uri ur = Uri; if (ur == null) { m_error = "ref attribute is null"; } else if (!File.Exists(ur.LocalPath)) { m_error = "File not found: " + ur.LocalPath; } else if (gameDocRegistry.FindDocument(ur) != null) { m_error = "Causes circular ref: " + ur.LocalPath; } else { SchemaLoader schemaloader = Globals.MEFContainer.GetExportedValue <SchemaLoader>(); GameDocument gameDoc = GameDocument.OpenOrCreate(ur, schemaloader); m_target = gameDoc.As <IGame>(); ((Game)m_target).SetParent(this); } } }
/// <summary> /// Drops and recreates the Sql Server backed persistence database objects /// </summary> /// <param name="runtime"></param> public static void RebuildMessageStorage(this JasperRuntime runtime) { var settings = runtime.Get <SqlServerSettings>(); var builder = new SchemaLoader(settings.ConnectionString, settings.SchemaName); builder.RecreateAll(); }
public void drop_then_create_different_schema() { var loader = new SchemaLoader(Servers.SqlServerConnectionString, "receiver"); loader.DropAll(); loader.CreateAll(); }
public void drop_then_create() { var loader = new SchemaLoader(Servers.SqlServerConnectionString); loader.DropAll(); loader.CreateAll(); }
public void drop_then_create() { var loader = new SchemaLoader(ConnectionSource.ConnectionString); loader.DropAll(); loader.CreateAll(); }
public void ItShouldLoadSchema() { var loader = new SchemaLoader(); ISchemaItem schema; using (var stringReader = new StringReader(Schema)) { schema = loader.LoadSchema(stringReader); } }
protected override void Handle(SqlGetSchemaQueueItem workitem) { var workitemLoads = workitem.Loads; var dictionary = SchemaLoader.GetSchemasForLoads(workitemLoads, Config.ConnectionString, Config.TopLevelKeyColumn); AddToOutputQueue(new SaveSchemaQueueItem { Mappings = dictionary.ToList() }); }
private void DomNode_AttributeChanged(object sender, AttributeEventArgs e) { SchemaLoader schemaTypeLoader = Globals.MEFContainer.GetExportedValue <SchemaLoader>(); string filePath = Uri.LocalPath; FileMode fileMode = File.Exists(filePath) ? FileMode.Truncate : FileMode.OpenOrCreate; using (FileStream stream = new FileStream(filePath, fileMode)) { var writer = new DomXmlWriter(schemaTypeLoader.TypeCollection); writer.Write(DomNode, stream, Uri); } }
public Editor( IControlHostService controlHostService, IDocumentService documentService, IContextRegistry contextRegistry, IDocumentRegistry documentRegistry, SchemaLoader schemaLoader) { m_controlHostService = controlHostService; m_documentService = documentService; m_contextRegistry = contextRegistry; m_documentRegistry = documentRegistry; m_schemaLoader = schemaLoader; }
public void KppService_ShouldCreateValidXml_WhenParsingKpp() { // arrange var args = DefaultArgs(); var schemas = SchemaLoader.LoadDirectory("Resources"); // act KppService.Run(args, null); // assert Action verify = () => XmlUtils.ValidateXmlFile(args.OutputPath, schemas); verify.Should().NotThrow(); }
/// <summary> /// 初始化一个<see cref="LoaderContext"/>类型的实例 /// </summary> public LoaderContext() { KeyLoader = new KeyLoader(); ReferenceLoader = new ReferenceLoader(); DbmsLoader = new DbmsLoader(); GroupLoader = new GroupLoader(); PhysicalDiagramLoader = new PhysicalDiagramLoader(); ViewLoader = new ViewLoader(); SchemaLoader = new SchemaLoader(); TargetModelLoader = new TargetModelLoader(); TableLoader = new TableLoader(KeyLoader); PackageLoader = new PackageLoader(TableLoader, ReferenceLoader); PdmLoader = new PdmLoader(this); }
public override void Run() { if (EdgeKey == null) { // the root level of a schema is fetched from credential files var staticRow = SchemaLoader.ParseCredentials <JObject>(Schema.Name); FetchDetailsOfRow(Schema, staticRow); } else { // non root level are fetched from the API var table = Schema.Edges[EdgeKey]; var tableRows = Fetcher.FetchAllEntitiesOnTable(table, Logger, Configuration.MaxEntities).AsParallel().WithDegreeOfParallelism(Schema.Threads); tableRows.ForAll(row => FetchDetailsOfRow(table, row)); } }
public static void Run(Args args, Action <int, string> reportStatus) { Directory.CreateDirectory(Path.GetDirectoryName(args.OutputPath)); reportStatus?.Invoke(10, "Leser data..."); var melding = CreateMelding(args); var wrapped = WrapInMsgHead(melding, args); reportStatus?.Invoke(50, "Lagrer melding..."); XmlUtils.SerializeToFile(wrapped, args.OutputPath); reportStatus?.Invoke(75, "Kontrollerer melding..."); var schemas = SchemaLoader.LoadDirectory("Resources"); XmlUtils.ValidateXmlFile(args.OutputPath, schemas); reportStatus?.Invoke(100, "Ferdig"); }
public static void Main(string[] args) { if (args.Length < 3) { PrintUsage(); return; } string packetSchemaPath = args[0]; string outputType = args[1]; string output = args[2]; Generator generator; switch (outputType) { case "markdown": generator = new MarkdownGenerator(output); break; case "csharp": { if (args.Length < 4) { PrintUsage(); return; } string configurationFileName = args[3]; generator = new CSharpGenerator(output, configurationFileName); } break; default: PrintUsage(); return; } // Load the schema var schemaLoader = new SchemaLoader(Path.GetDirectoryName(packetSchemaPath)); Schema packetSchema = schemaLoader.Load(packetSchemaPath); // Generate output from the schema. generator.Generate(packetSchema); }
protected void Initialize( string configurationFile, SchemaLoader schemaLoader, bool resolveTypes, PrefixNamespace schemaNamespace) { ArgumentUtility.CheckNotNullOrEmpty("configurationFile", configurationFile); ArgumentUtility.CheckNotNull("schemaLoader", schemaLoader); ArgumentUtility.CheckNotNull("schemaNamespace", schemaNamespace); if (!File.Exists(configurationFile)) { throw new FileNotFoundException(string.Format("Configuration file '{0}' could not be found.", configurationFile), configurationFile); } _configurationFile = Path.GetFullPath(configurationFile); _resolveTypes = resolveTypes; _document = LoadConfigurationFile(_configurationFile, schemaLoader, schemaNamespace.Uri); _namespaceManager = new ConfigurationNamespaceManager(_document, new PrefixNamespace[] { schemaNamespace }); }
/// <summary> /// The init container. /// </summary> /// <param name="config"> /// The config. /// </param> private void InitContainer(IQueryConfig config) { var documentDictionary = new DocumentDictionary(MaximumDocumentsInQueue); var queueManager = new QueueManager(); this.container.RegisterInstance <IQueueManager>(queueManager); this.container.RegisterInstance <IDocumentDictionary>(documentDictionary); this.container.RegisterInstance <IJobConfig>(config); IElasticSearchUploaderFactory elasticSearchUploaderFactory = this.container.Resolve <IElasticSearchUploaderFactory>(); var schemaLoader = new SchemaLoader(config.ConnectionString, config.TopLevelKeyColumn); this.container.RegisterInstance <ISchemaLoader>(schemaLoader); this.container.RegisterType <IEntityJsonWriter, EntityJsonWriter>(); if (config.WriteDetailedTemporaryFilesToDisk) { this.container.RegisterType <IDetailedTemporaryFileWriter, FileWriter>(); } else { this.container.RegisterType <IDetailedTemporaryFileWriter, NullFileWriter>(); } if (config.WriteTemporaryFilesToDisk) { this.container.RegisterType <ITemporaryFileWriter, FileWriter>(); } else { this.container.RegisterType <ITemporaryFileWriter, NullFileWriter>(); } this.container.RegisterType <IFileWriter, FileWriter>(); }
public static void Main(string[] args) { var options = new Options(); if (!Parser.Default.ParseArgumentsStrict(args, options)) { return; } Generator generator; switch (options.Type) { case GeneratorType.MarkDown: generator = new MarkdownGenerator(options.Output); break; case GeneratorType.CSharp: if (options.ConfigurationFile == null) { Console.Error.WriteLine("ERROR: When type is CSharp, a configuration file is required."); Console.Error.WriteLine(options.Usage()); return; } generator = new CSharpGenerator(options.Output, options.ConfigurationFile); break; case GeneratorType.Validation: generator = new ValidationDocumentGenerator(options.Output); break; default: return; } // Load the schema var schemaLoader = new SchemaLoader(Path.GetDirectoryName(options.PacketSchema)); Schema packetSchema = schemaLoader.Load(options.PacketSchema); // Generate output from the schema. generator.Generate(packetSchema); }
public void TestGenerate() { //"usage: DomGen {schemaPath} {outputPath} {schemaNamespace} {classNamespace} -a(dapters)" //"eg: DomGen echo.xsd Schema.cs http://sce/audio Sce.Audio -a" string inputPath = ".\\Resources\\test_customized.xsd"; string schemaNamespace = "test"; string codeNamespace = "testCodeNamespace"; string className = "TestClass"; SchemaLoader typeLoader = new SchemaLoader(); typeLoader.Load(inputPath); // Normal test string schemaClass = SchemaGen.Generate(typeLoader, schemaNamespace, codeNamespace, className, EmptyArray <string> .Instance); Validate(schemaClass, schemaNamespace, codeNamespace, className, false); // Test with -annotatedOnly option string[] args = new string[] { inputPath, "", schemaNamespace, codeNamespace, "-annotatedOnly" }; schemaClass = SchemaGen.Generate(typeLoader, schemaNamespace, codeNamespace, className, args); Validate(schemaClass, schemaNamespace, codeNamespace, className, true); }
private async Task <ISchema> Create(ICacheEntry cacheEntry) { cacheEntry.SetSlidingExpiration(TimeSpan.FromHours(6)); try { var schemaBuilder = await SchemaLoader.Load(); var resolvers = new SchemaResolvers(); var schema = SchemaTools.MakeExecutableSchemaWithIntrospection( schemaBuilder, resolvers, resolvers); return(schema); } catch (Exception e) { Console.WriteLine(e); throw; } }
public SchemaFactory(string mofFileName, string dispatchFileName, List <ISchemaBuilder> schemaBuilders, DSConfiguration settings) { bool enabled; SchemaLoader schemaLoader = new SchemaLoader(); using (OperationTracer operationTracer = new OperationTracer(new Action <string>(TraceHelper.Current.SchemaLoadingStart), new Action <string>(TraceHelper.Current.SchemaLoadingEnd), mofFileName)) { if (settings == null) { enabled = true; } else { enabled = settings.Invocation.Enabled; } bool flag = enabled; this.logicalSchema = schemaLoader.LoadSchemaFiles(mofFileName, dispatchFileName, flag); if (settings != null) { this.logicalSchema.ValidateResourceLimits(settings); } } this.schemaBuilders = schemaBuilders; }
public ConnectedContext() { var loader = new SchemaLoader(ConnectionSource.ConnectionString); loader.RecreateAll(); }
public void recreate_all_tables() { var loader = new SchemaLoader(Servers.SqlServerConnectionString); loader.RecreateAll(); }
/// <summary> /// Create circuit DOM hierarchy programmatically</summary> /// <param name="schemaLoader">Schema loader</param> /// <returns>Tree root DomNode</returns> static public DomNode CreateTestCircuitProgrammatically(SchemaLoader schemaLoader) { var rootNode = new DomNode(Schema.circuitDocumentType.Type, Schema.circuitRootElement); // create an empty root prototype folder( required child by schema) rootNode.SetChild( Schema.circuitDocumentType.prototypeFolderChild, new DomNode(Schema.prototypeFolderType.Type)); var circuit = rootNode.Cast <Circuit>(); var inputFiles = new DomNode(Schema.groupType.Type).Cast <Group>(); inputFiles.Id = "groupInputFiles"; inputFiles.Name = "Input Files".Localize(); inputFiles.Bounds = new Rectangle(64, 96, 0, 0); // set node location, size will be auto-computed var firstWavgGroup = new DomNode(Schema.groupType.Type).Cast <Group>(); firstWavgGroup.Id = "first.Wav"; firstWavgGroup.Name = "first".Localize("as in, 'the first file'") + ".wav"; var buttonType = schemaLoader.GetNodeType(Schema.NS + ButtonTypeName); var button1 = new DomNode(buttonType).Cast <Module>(); button1.Id = "button1"; button1.Bounds = new Rectangle(0, 0, 0, 0); var button2 = new DomNode(buttonType).Cast <Module>(); button2.Bounds = new Rectangle(0, 64, 0, 0); button2.Id = "button2"; firstWavgGroup.Elements.Add(button1); firstWavgGroup.Elements.Add(button2); firstWavgGroup.Expanded = true; firstWavgGroup.Update(); var secondWavgGroup = new DomNode(Schema.groupType.Type).Cast <Group>(); secondWavgGroup.Id = "second.Wav"; secondWavgGroup.Name = "second".Localize("as in, 'the second file'") + ".wav"; var button3 = new DomNode(buttonType).Cast <Module>(); button3.Id = "button3"; button3.Bounds = new Rectangle(0, 0, 0, 0); var button4 = new DomNode(buttonType).Cast <Module>(); button4.Bounds = new Rectangle(0, 64, 0, 0); button4.Id = "button4"; secondWavgGroup.Elements.Add(button3); secondWavgGroup.Elements.Add(button4); secondWavgGroup.Expanded = true; secondWavgGroup.Update(); secondWavgGroup.Bounds = new Rectangle(0, 224, 0, 0); inputFiles.Elements.Add(firstWavgGroup); inputFiles.Elements.Add(secondWavgGroup); inputFiles.Update(); inputFiles.Expanded = true; circuit.Elements.Add(inputFiles); var structure = new DomNode(Schema.groupType.Type).Cast <Group>(); structure.Id = "structure".Localize("this is the name of a group of circuit elements; the name is arbitrary"); structure.Name = "structure".Localize("this is the name of a group of circuit elements; the name is arbitrary"); structure.Bounds = new Rectangle(352, 96, 0, 0); var subStream0 = new DomNode(Schema.groupType.Type).Cast <Group>(); subStream0.Id = "subStream0".Localize("this is the name of a group of circuit elements; the name is arbitrary"); subStream0.Name = "sub-stream 0".Localize("this is the name of a group of circuit elements; the name is arbitrary"); var lightType = schemaLoader.GetNodeType(Schema.NS + LightTypeName); var light1 = new DomNode(lightType).Cast <Module>(); light1.Id = "light1"; light1.Bounds = new Rectangle(0, 0, 0, 0); var light2 = new DomNode(lightType).Cast <Module>(); light2.Id = "light2"; light2.Bounds = new Rectangle(0, 64, 0, 0); var light3 = new DomNode(lightType).Cast <Module>(); light3.Id = "light3"; light3.Bounds = new Rectangle(0, 128, 0, 0); var light4 = new DomNode(lightType).Cast <Module>(); light4.Id = "light4"; light4.Bounds = new Rectangle(0, 192, 0, 0); var light5 = new DomNode(lightType).Cast <Module>(); light5.Id = "light5"; light5.Bounds = new Rectangle(0, 256, 0, 0); var light6 = new DomNode(lightType).Cast <Module>(); light6.Id = "light6"; light6.Bounds = new Rectangle(0, 320, 0, 0); subStream0.Elements.Add(light1); subStream0.Elements.Add(light2); subStream0.Elements.Add(light3); subStream0.Elements.Add(light4); subStream0.Elements.Add(light5); subStream0.Elements.Add(light6); subStream0.Expanded = true; subStream0.Update(); // this will generate group pins needed for edge connection structure.Elements.Add(subStream0); structure.Expanded = true; structure.Update(); circuit.Elements.Add(structure); // first make all group pins are visible so we can connect them foreach (var groupPin in inputFiles.InputGroupPins) { groupPin.Visible = true; } foreach (var groupPin in inputFiles.OutputGroupPins) { groupPin.Visible = true; } foreach (var groupPin in structure.InputGroupPins) { groupPin.Visible = true; } foreach (var groupPin in structure.OutputGroupPins) { groupPin.Visible = true; } // make some edges between InputFiles & structure var connection0 = CircuitAddEdge(inputFiles, 0, structure, 0); circuit.Wires.Add(connection0); var connection1 = CircuitAddEdge(inputFiles, 1, structure, 1); circuit.Wires.Add(connection1); var connection2 = CircuitAddEdge(inputFiles, 2, structure, 3); circuit.Wires.Add(connection2); var connection3 = CircuitAddEdge(inputFiles, 3, structure, 5); circuit.Wires.Add(connection3); return(rootNode); }
public override IEnumerable <AbstractJob> GetJobs(JobType type, JobScope scope, IEnumerable <string> names, JobConfiguration jobConfiguration) { if (CheckTypeAndScope(type, scope) || !CheckNameIsScope(names)) { return(NoJobs); } Schemas = SchemaLoader.SchemaList(); var jobs = new List <FacebookFetcher>(); try { foreach (var schemaName in Schemas) { foreach (var file in Directory.GetFiles(SchemaLoader.GetCredentialPath(schemaName))) { if (!file.Contains("_credentials.json")) { continue; } SchemaLoader.credentialFileName = file; var schema = SchemaLoader.LoadSchema(schemaName); var apiMan = new ApiManager( SchemaLoader.GetCredentials(schemaName), IgnoreCache, jobConfiguration.IgnoreAPI, jobConfiguration.IgnoreTTL, jobConfiguration.Paginate, schema.Delay, CacheDirectory, jobConfiguration.DefaultNowDate ); var fetcher = new Fetcher(apiMan, schema.PageSize); var customEdge = new CustomEdge(); if (schemaName == "adaccount") { var pageSchema = SchemaLoader.LoadSchema("page"); var pageCredentials = SchemaLoader.GetCredentials("page"); var pageApiMan = new ApiManager( SchemaLoader.GetCredentials("page"), IgnoreCache, jobConfiguration.IgnoreAPI, jobConfiguration.IgnoreTTL, jobConfiguration.Paginate, schema.Delay, CacheDirectory, jobConfiguration.DefaultNowDate ); var pageFetcher = new Fetcher(pageApiMan, pageSchema.PageSize); var key = (SchemaName : "adaccount", TableName : "ads", CustomEdgeName : "custom_videos"); if (!customEdge.ContainsKey(key)) { Action <Logger, JObject> callback = (logger, parent) => { var creative = parent["creative"]; var video = creative ? ["video_id"]; if (video != null) { pageFetcher.GetRoot(pageSchema, "videos", video, logger); } var sourceFileVideoId = creative.IndexPathOrDefault <string>("object_story_spec.video_data.video_id", null); if (sourceFileVideoId != null) { pageFetcher.GetRoot(pageSchema, "videos", sourceFileVideoId, logger); } var post = creative ? ["object_story_id"]; if (post != null) { pageFetcher.GetRoot(pageSchema, "posts", post, logger); } }; customEdge.Add(key, callback); } } if (Schemas.Count == 1 && TableKey != null) { // DEPRECATED: case in which the user specified a single edge to be executed jobs.Add(new FacebookFetcher(schema, TableKey, EdgeKey, fetcher, customEdge)); } else { foreach (var edge in schema.Edges) { jobs.Add(new FacebookFetcher(schema, edge.Key, null, fetcher, customEdge, apiMan.Secret.Id)); } if (schemaName == "instagram") { jobs.Add(new FacebookFetcher(schema, null, null, fetcher, customEdge, apiMan.Secret.Id)); } } } } } catch (Exception e) when(e is FileNotFoundException || e is DirectoryNotFoundException) { string message = String.Format("Missing or invalid Facebook credentials!\n{0}", e.Message); if (e is DirectoryNotFoundException) { message = String.Format("{0}\nCheck if the path above exists!", message); } System.Console.WriteLine(message); return(NoJobs); }; return(FilterByName(jobs, names)); }
public void recreate_all_tables_in_a_different_schema() { var loader = new SchemaLoader(Servers.SqlServerConnectionString, "sender"); loader.RecreateAll(); }
private void Init() { if (s_schemaLoader == null) { s_schemaLoader = new SchemaLoader(); } m_PropertyGrid = new PropertyGrid(PropertyGridMode.PropertySorting | PropertyGridMode.DisplayDescriptions | PropertyGridMode.HideResetAllButton); m_treeControl = new TreeControl(); m_menu = new MenuStrip(); var fileMenu = new ToolStripMenuItem(); var newMenu = new ToolStripMenuItem(); var openMenu = new ToolStripMenuItem(); var exitMenu = new ToolStripMenuItem(); var splitter = new SplitContainer(); m_menu.SuspendLayout(); splitter.BeginInit(); splitter.Panel1.SuspendLayout(); splitter.Panel2.SuspendLayout(); splitter.SuspendLayout(); SuspendLayout(); // m_menu m_menu.Location = new System.Drawing.Point(0, 0); m_menu.Name = "m_menu"; m_menu.TabIndex = 0; m_menu.Text = "m_menu"; m_menu.Items.Add(fileMenu); // file fileMenu.Name = "fileToolStripMenuItem"; fileMenu.Size = new System.Drawing.Size(37, 20); fileMenu.Text = "File".Localize(); fileMenu.DropDownOpening += new EventHandler(fileMenu_DropDownOpening); fileMenu.DropDownItems.AddRange(new ToolStripItem[] { newMenu, openMenu, m_openFolderMenu, m_saveMenu, m_saveAsMenu, exitMenu }); // new newMenu.Name = "newToolStripMenuItem"; newMenu.ShortcutKeys = Keys.Control | Keys.N; newMenu.Text = "New".Localize(); newMenu.Click += NewToolStripMenuItem_Click; //open openMenu.Name = "openToolStripMenuItem"; openMenu.ShortcutKeys = Keys.Control | Keys.O; openMenu.Text = "Open...".Localize(); openMenu.Click += OpenToolStripMenuItem_Click; // open containing folder m_openFolderMenu.Name = "OpenFolderMenu"; m_openFolderMenu.Text = "Open Containing Folder".Localize(); m_openFolderMenu.Click += new EventHandler(OpenFolderMenu_Click); //save m_saveMenu.Name = "saveToolStripMenuItem"; m_saveMenu.ShortcutKeys = Keys.Control | Keys.S; m_saveMenu.Text = "Save".Localize(); m_saveMenu.Click += SaveToolStripMenuItem_Click; // save as m_saveAsMenu.Name = "saveAsToolStripMenuItem"; m_saveAsMenu.Text = "Save As...".Localize(); m_saveAsMenu.Click += SaveAsToolStripMenuItem_Click; // exit exitMenu.Name = "exitToolStripMenuItem"; exitMenu.Text = "Exit".Localize(); exitMenu.Click += ExitToolStripMenuItem_Click; // tree control m_treeControl.Dock = DockStyle.Fill; m_treeControl.Name = "m_treeControl"; m_treeControl.TabIndex = 1; m_treeControl.Width = 150; m_treeControl.ShowRoot = false; m_treeControl.AllowDrop = false; m_treeControl.SelectionMode = SelectionMode.One; m_treeControlAdapter = new TreeControlAdapter(m_treeControl); // propertyGrid1 m_PropertyGrid.Dock = DockStyle.Fill; m_PropertyGrid.Name = "propertyGrid1"; m_PropertyGrid.TabIndex = 3; m_PropertyGrid.PropertySorting = PropertySorting.None; // splitter splitter.Dock = DockStyle.Fill; splitter.Name = "splitContainer1"; splitter.Panel1.Controls.Add(m_treeControl); splitter.Panel2.Controls.Add(m_PropertyGrid); splitter.SplitterDistance = 100; splitter.TabIndex = 1; AutoScaleMode = AutoScaleMode.Font; ClientSize = new System.Drawing.Size(600, 400); Controls.Add(splitter); Controls.Add(m_menu); MainMenuStrip = m_menu; Name = "SkinEditor"; Icon = GdiUtil.CreateIcon(ResourceUtil.GetImage(Sce.Atf.Resources.AtfIconImage)); UpdateTitleText(); m_menu.ResumeLayout(false); m_menu.PerformLayout(); splitter.Panel1.ResumeLayout(false); splitter.Panel2.ResumeLayout(false); splitter.EndInit(); splitter.ResumeLayout(false); ResumeLayout(false); PerformLayout(); splitter.SplitterDistance = 170; }
// Create circuit DOM hierarchy programmatically static public DomNode CreateTestCircuitProgrammatically(SchemaLoader schemaLoader) { var rootNode = new DomNode(Schema.circuitDocumentType.Type, Schema.circuitRootElement); // create an empty root prototype folder( required child by schema) rootNode.SetChild( Schema.circuitDocumentType.prototypeFolderChild, new DomNode(Schema.prototypeFolderType.Type)); var circuit = rootNode.Cast<Circuit>(); var inputFiles = new DomNode(Schema.groupType.Type).Cast<Group>(); inputFiles.Id = "groupInputFiles"; inputFiles.Name = "Input Files".Localize(); inputFiles.Bounds = new Rectangle(64, 96, 0, 0); // set node location, size will be auto-computed var firstWavgGroup = new DomNode(Schema.groupType.Type).Cast<Group>(); firstWavgGroup.Id = "first.Wav"; firstWavgGroup.Name = "first".Localize("as in, 'the first file'") + ".wav"; var buttonType = schemaLoader.GetNodeType(Schema.NS + ButtonTypeName); var button1 = new DomNode(buttonType).Cast<Module>(); button1.Id = "button1"; button1.Bounds = new Rectangle(0, 0, 0, 0); var button2 = new DomNode(buttonType).Cast<Module>(); button2.Bounds = new Rectangle(0, 64, 0, 0); button2.Id = "button2"; firstWavgGroup.Elements.Add(button1); firstWavgGroup.Elements.Add(button2); firstWavgGroup.Expanded = true; firstWavgGroup.Update(); var secondWavgGroup = new DomNode(Schema.groupType.Type).Cast<Group>(); secondWavgGroup.Id = "second.Wav"; secondWavgGroup.Name = "second".Localize("as in, 'the second file'") + ".wav"; var button3 = new DomNode(buttonType).Cast<Module>(); button3.Id = "button3"; button3.Bounds = new Rectangle(0, 0, 0, 0); var button4 = new DomNode(buttonType).Cast<Module>(); button4.Bounds = new Rectangle(0, 64, 0, 0); button4.Id = "button4"; secondWavgGroup.Elements.Add(button3); secondWavgGroup.Elements.Add(button4); secondWavgGroup.Expanded = true; secondWavgGroup.Update(); secondWavgGroup.Bounds = new Rectangle(0, 224, 0, 0); inputFiles.Elements.Add(firstWavgGroup); inputFiles.Elements.Add(secondWavgGroup); inputFiles.Update(); inputFiles.Expanded = true; circuit.Elements.Add(inputFiles); var structure = new DomNode(Schema.groupType.Type).Cast<Group>(); structure.Id = "structure".Localize("this is the name of a group of circuit elements; the name is arbitrary"); structure.Name = "structure".Localize("this is the name of a group of circuit elements; the name is arbitrary"); structure.Bounds = new Rectangle(352, 96, 0, 0); var subStream0 = new DomNode(Schema.groupType.Type).Cast<Group>(); subStream0.Id = "subStream0".Localize("this is the name of a group of circuit elements; the name is arbitrary"); subStream0.Name = "sub-stream 0".Localize("this is the name of a group of circuit elements; the name is arbitrary"); var lightType = schemaLoader.GetNodeType(Schema.NS + LightTypeName); var light1 = new DomNode(lightType).Cast<Module>(); light1.Id = "light1"; light1.Bounds = new Rectangle(0, 0, 0, 0); var light2 = new DomNode(lightType).Cast<Module>(); light2.Id = "light2"; light2.Bounds = new Rectangle(0, 64, 0, 0); var light3 = new DomNode(lightType).Cast<Module>(); light3.Id = "light3"; light3.Bounds = new Rectangle(0, 128, 0, 0); var light4 = new DomNode(lightType).Cast<Module>(); light4.Id = "light4"; light4.Bounds = new Rectangle(0, 192, 0, 0); var light5 = new DomNode(lightType).Cast<Module>(); light5.Id = "light5"; light5.Bounds = new Rectangle(0, 256, 0, 0); var light6 = new DomNode(lightType).Cast<Module>(); light6.Id = "light6"; light6.Bounds = new Rectangle(0, 320, 0, 0); subStream0.Elements.Add(light1); subStream0.Elements.Add(light2); subStream0.Elements.Add(light3); subStream0.Elements.Add(light4); subStream0.Elements.Add(light5); subStream0.Elements.Add(light6); subStream0.Expanded = true; subStream0.Update(); // this will generate group pins needed for edge connection structure.Elements.Add(subStream0); structure.Expanded = true; structure.Update(); circuit.Elements.Add(structure); // Note on 11/12/2013: adding wires currently crashes. Nested circuit groups aren't officially supported anyways. // make some edges betwen InputFiles & structure //var connection0 = CircuitAddEdge(inputFiles, 0, structure, 0); //circuit.Wires.Add(connection0); //var connection1 = CircuitAddEdge(inputFiles, 1, structure, 1); //circuit.Wires.Add(connection1); //var connection2 = CircuitAddEdge(inputFiles, 2, structure, 3); //circuit.Wires.Add(connection2); //var connection3 = CircuitAddEdge(inputFiles, 3, structure, 5); //circuit.Wires.Add(connection3); return rootNode; }
protected SqlServerContext() { var loader = new SchemaLoader(Servers.SqlServerConnectionString); loader.RecreateAll(); }
private void Init() { if (s_schemaLoader == null) s_schemaLoader = new SchemaLoader(); m_PropertyGrid = new PropertyGrid(PropertyGridMode.PropertySorting | PropertyGridMode.DisplayDescriptions | PropertyGridMode.HideResetAllButton); m_treeControl = new TreeControl(); m_menu = new MenuStrip(); var fileMenu = new ToolStripMenuItem(); var newMenu = new ToolStripMenuItem(); var openMenu = new ToolStripMenuItem(); var exitMenu = new ToolStripMenuItem(); var splitter = new SplitContainer(); m_menu.SuspendLayout(); splitter.BeginInit(); splitter.Panel1.SuspendLayout(); splitter.Panel2.SuspendLayout(); splitter.SuspendLayout(); SuspendLayout(); // m_menu m_menu.Location = new System.Drawing.Point(0, 0); m_menu.Name = "m_menu"; m_menu.TabIndex = 0; m_menu.Text = "m_menu"; m_menu.Items.Add(fileMenu); // file fileMenu.Name = "fileToolStripMenuItem"; fileMenu.Size = new System.Drawing.Size(37, 20); fileMenu.Text = "File".Localize(); fileMenu.DropDownOpening += new EventHandler(fileMenu_DropDownOpening); fileMenu.DropDownItems.AddRange(new ToolStripItem[] { newMenu, openMenu, m_openFolderMenu, m_saveMenu, m_saveAsMenu, exitMenu }); // new newMenu.Name = "newToolStripMenuItem"; newMenu.ShortcutKeys = Keys.Control | Keys.N; newMenu.Text = "New".Localize(); newMenu.Click += NewToolStripMenuItem_Click; //open openMenu.Name = "openToolStripMenuItem"; openMenu.ShortcutKeys = Keys.Control | Keys.O; openMenu.Text = "Open...".Localize(); openMenu.Click += OpenToolStripMenuItem_Click; // open containing folder m_openFolderMenu.Name = "OpenFolderMenu"; m_openFolderMenu.Text = "Open Containing Folder".Localize(); m_openFolderMenu.Click += new EventHandler(OpenFolderMenu_Click); //save m_saveMenu.Name = "saveToolStripMenuItem"; m_saveMenu.ShortcutKeys = Keys.Control | Keys.S; m_saveMenu.Text = "Save".Localize(); m_saveMenu.Click += SaveToolStripMenuItem_Click; // save as m_saveAsMenu.Name = "saveAsToolStripMenuItem"; m_saveAsMenu.Text = "Save As...".Localize(); m_saveAsMenu.Click += SaveAsToolStripMenuItem_Click; // exit exitMenu.Name = "exitToolStripMenuItem"; exitMenu.Text = "Exit".Localize(); exitMenu.Click += ExitToolStripMenuItem_Click; // tree control m_treeControl.Dock = DockStyle.Fill; m_treeControl.Name = "m_treeControl"; m_treeControl.TabIndex = 1; m_treeControl.Width = 150; m_treeControl.ShowRoot = false; m_treeControl.AllowDrop = false; m_treeControl.SelectionMode = SelectionMode.One; m_treeControlAdapter = new TreeControlAdapter(m_treeControl); // propertyGrid1 m_PropertyGrid.Dock = DockStyle.Fill; m_PropertyGrid.Name = "propertyGrid1"; m_PropertyGrid.TabIndex = 3; m_PropertyGrid.PropertySorting = PropertySorting.None; // splitter splitter.Dock = DockStyle.Fill; splitter.Name = "splitContainer1"; splitter.Panel1.Controls.Add(m_treeControl); splitter.Panel2.Controls.Add(m_PropertyGrid); splitter.SplitterDistance = 100; splitter.TabIndex = 1; AutoScaleMode = AutoScaleMode.Font; ClientSize = new System.Drawing.Size(600, 400); Controls.Add(splitter); Controls.Add(m_menu); MainMenuStrip = m_menu; Name = "SkinEditor"; Icon = GdiUtil.CreateIcon(ResourceUtil.GetImage(Sce.Atf.Resources.AtfIconImage)); UpdateTitleText(); m_menu.ResumeLayout(false); m_menu.PerformLayout(); splitter.Panel1.ResumeLayout(false); splitter.Panel2.ResumeLayout(false); splitter.EndInit(); splitter.ResumeLayout(false); ResumeLayout(false); PerformLayout(); splitter.SplitterDistance = 170; }
private static int Main(string[] args) { Directory.SetCurrentDirectory(AppDomain.CurrentDomain.BaseDirectory); var showHelp = false; var dryRun = false; var listSchemas = false; var filePath = default(string); var xsdPath = "Resources/Schemas"; var verbose = false; var p = new OptionSet { { "Help" }, { "h|help", "Display this message", x => showHelp = true }, { "d|dry-run", "Test how parameters are parsed", x => dryRun = true }, { "l|list-schemas", "List supported XSD-schemas", x => listSchemas = true }, { "Validation" }, { "f|file=", "(Required) Path to file", x => filePath = x }, { "x|xsd-path=", "(Optional) Path to XSD-schemas", x => xsdPath = x }, { "v|verbose", "(Optional) (Resource intensive) Detailed output", x => verbose = true } }; var list = p.Parse(args); if (list.Count > 0) { Console.WriteLine($"Unknown arguments: {string.Join(", ", list)}\n"); p.WriteOptionDescriptions(Console.Out); Console.WriteLine(); return(1); } if (showHelp) { p.WriteOptionDescriptions(Console.Out); Console.WriteLine(); return(0); } if (dryRun) { Console.WriteLine("Parsed parameters:"); Console.WriteLine($"- file: {Path.GetFullPath(filePath)}"); Console.WriteLine($"- xsd-path: {Path.GetFullPath(xsdPath)}"); Console.WriteLine($"- verbose: {verbose}"); Console.WriteLine(); return(0); } var schemas = SchemaLoader.LoadDirectory(xsdPath); if (listSchemas) { var namespaces = schemas.Schemas() .OfType <XmlSchema>() .Select(s => s.TargetNamespace) .OrderBy(ns => ns); var sb = new StringBuilder(); sb.AppendLine("Supported xsd-schemas:"); foreach (var ns in namespaces) { sb .Append(" - ") .Append(ns) .AppendLine(); } Console.WriteLine(); Console.WriteLine(sb); return(0); } if (filePath == default) { Console.WriteLine("ERROR: A file must be specified"); return(1); } // todo more error handling // todo better output if (verbose) { bool hasError; try { var xDoc = XDocument.Load(filePath); hasError = XsdValidator.Validate(xDoc, schemas, Console.Out); } catch (Exception ex) { Console.WriteLine(ex.Message); hasError = true; } return(hasError ? 1 : 0); } try { XsdValidator.ValidateFile(filePath, schemas, true); } catch (AggregateException aex) { var sb = new StringBuilder(); sb.AppendLine("Error in xml:"); foreach (var iex in aex.InnerExceptions) { sb.Append(" - ") .AppendLine(iex.Message); } Console.WriteLine(sb); return(1); } catch (Exception ex) { Console.WriteLine($"Error in xml {ex.Message}"); return(1); } return(0); }