// Ex: localhost:8001/flowsharp?cmd=CmdDropConnector&ConnectorName=DiagonalConnector&X1=50&Y1=100&X2=150&Y2=150 public void Process(ISemanticProcessor proc, IMembrane membrane, CmdDropConnector cmd) { List <Type> shapes = proc.ServiceManager.Get <IFlowSharpToolboxService>().ShapeList; var controller = proc.ServiceManager.Get <IFlowSharpCanvasService>().ActiveController; Type t = shapes.Where(s => s.Name == cmd.ConnectorName).SingleOrDefault(); if (t != null) { controller.Canvas.FindForm().BeginInvoke(() => { DynamicConnector el = (DynamicConnector)Activator.CreateInstance(t, new object[] { controller.Canvas }); // el = (DynamicConnector)el.CloneDefault(controller.Canvas, new Point(cmd.X1, cmd.Y1)); // el = (DynamicConnector)el.CloneDefault(controller.Canvas); el.Name = cmd.Name; el.StartPoint = new Point(cmd.X1, cmd.Y1); el.EndPoint = new Point(cmd.X2, cmd.Y2); cmd.BorderColor.IfNotNull(c => el.BorderPenColor = GetColor(c)); int x1 = cmd.X1.Min(cmd.X2); int y1 = cmd.Y1.Min(cmd.Y2); int x2 = cmd.X1.Max(cmd.X2); int y2 = cmd.Y1.Max(cmd.Y2); el.DisplayRectangle = new Rectangle(x1, y1, x2 - x1, y2 - y1); el.UpdatePath(); controller.Insert(el); }); } }
public void TestSave2() { var solr = DynamicConnector <Product> .Create(@"http://localhost.:8983/solr/", "collection1"); List <Product> p = new List <Product>(); for (int id = 100; id < 10000; id++) { p.Add(new Product { id = id.ToString(), title = new string[] { "a title " + id.ToString() } }); } solr.Save(p.ToArray()); }