static void Main(string[] args) { Connection con = new Connection("neo4j", "bwe319tu"); TransactionManager transaction = new TransactionManager(con); var logicelementsender = new LogicElement(LogicType.ValueSender); logicelementsender.Value = 1; logicelementsender.Activate(); var logicelementacceptor = new LogicElement(LogicType.ValueMoreThan); logicelementacceptor.Value = 2; var logicelementdummy = new LogicElement(LogicType.Dummy); var dictionary1 = new Dictionary <string, object>() { { "Name", "Entity1" }, { "Property 1", "Property 1 value" }, { "Property 2", "Property 2 value" } }; var dictionary2 = new Dictionary <string, object>() { { "Name", "Entity2" }, { "Property 1", "Property 1 value" }, { "Property 2", "Property 2 value" }, { "Property 3", "Property 3 value" } }; var dictionary3 = new Dictionary <string, object>() { { "Name", "Entity3" }, { "Property 1", "Property 1 value" }, { "Property 2", "Property 2 value" }, { "Property 3", "Property 3 value" } }; var dictionary4 = new Dictionary <string, object>() { { "Name", "Link1" }, { "Property 1", "Property 1 value" }, { "Property 2", "Property 2 value" }, { "Property 3", "Property 3 value" } }; var dictionary5 = new Dictionary <string, object>() { { "Name", "Link2" }, { "Property 1", "Property 1 value" }, { "Property 2", "Property 2 value" }, { "Property 3", "Property 3 value" } }; var neo4jresults = new List <Neo4jUnwrapedResult>(); var entity1 = new Entity(new string[] { "Test", "Sender" }); entity1.AddLogic(logicelementsender); entity1.AddProperty(dictionary1); var rlt = transaction.CreateEntity(entity1); entity1 = rlt.AgregatedNodes[0]; neo4jresults.Add(rlt); var entity2 = new Entity(new string[] { "Test", "Sender" }); entity2.AddLogic(logicelementsender); entity2.AddProperty(dictionary2); rlt = transaction.CreateEntity(entity2); entity2 = rlt.AgregatedNodes[0]; neo4jresults.Add(rlt); logicelementacceptor.AddTarget(entity1); logicelementacceptor.AddTarget(entity2); var entity3 = new Entity(new string[] { "Test", "Acceptor", "Concentrator" }); entity3.AddLogic(logicelementacceptor); entity3.AddProperty(dictionary3); rlt = transaction.CreateEntity(entity3); entity3 = rlt.AgregatedNodes[0]; neo4jresults.Add(rlt); var link1 = new Link("SEND_VALUE"); link1.AddProperty(dictionary4); link1.AddLogic(logicelementdummy); link1.AddConnection(entity1, entity3); rlt = transaction.CreateLink(link1); link1 = rlt.AgregatedLinks[0]; neo4jresults.Add(rlt); var link2 = new Link("SEND_VALUE"); link2.AddProperty(dictionary5); link2.AddLogic(logicelementdummy); link2.AddConnection(entity2, entity3); rlt = transaction.CreateLink(link2); link1 = rlt.AgregatedLinks[0]; neo4jresults.Add(rlt); Console.WriteLine(new LogicHandler(transaction).Handle(entity3.LogicElement)); rlt = transaction.CountQuery(new[] { "Test" }); neo4jresults.Add(rlt); rlt = transaction.FindEntity(new Entity("Test")); neo4jresults.Add(rlt); rlt = transaction.FindLink(new Link("SEND_VALUE")); neo4jresults.Add(rlt); var entity4 = new Entity(); entity4.AddProperty(dictionary2); rlt = transaction.FindEntity(entity4); neo4jresults.Add(rlt); var link3 = new Link(); link3.AddProperty(dictionary4); rlt = transaction.FindLink(link3); neo4jresults.Add(rlt); rlt = transaction.GetLinkById(143); neo4jresults.Add(rlt); rlt = transaction.GetEntitiesByClass(new string[] { "Test" }); neo4jresults.Add(rlt); rlt = transaction.GetLinksByClass("SEND_VALUE"); neo4jresults.Add(rlt); entity3.AddProperty("Added", "Added atribute"); rlt = transaction.UpdateEntity(entity3); Console.ReadKey(false); //var entity2 = new Entity() //{ // //Class = "Яблоня", // Name = "Дерево", // IsActive = false, // Atributes = new string[] // { // "Тип"+":"+"Дерево", // "Происхождение"+":"+ "Болгария", // "Дата" +":"+ "%Дата%", // "Время"+":"+ "%Дата%" // }, // Logic = new LogicalElement() // { // Value = 0, // Type = LogicalType.ValueActivation // } //}; //IStatementResult result; //IResultSummary res = null; //IRecord rec = null; //InsertEmptyLine("Creation 1"); //result = transaction.CreateEntity(entity); ////res = result.Consume(); ////rec = result.Peek(); //Unwrap(res, rec, result); //InsertEmptyLine("Creation 2"); //result = transaction.CreateEntity(entity2.GetParameters()); ////res = result.Consume(); ////rec = result.Peek(); //Unwrap(res, rec, result); //InsertEmptyLine("Finding 1"); //result = transaction.FindEntity(entity1.GetParameters()); ////res = result.Consume(); ////rec = result.Peek(); //Unwrap(res, rec, result); //InsertEmptyLine("Finding 2"); //var entity3 = new Entity(entity2.Id); //result = transaction.FindEntity(entity3.GetParameters()); ////res = result.Consume(); ////rec = result.Peek(); //Unwrap(res, rec, result); //InsertEmptyLine("Create Link 1"); //var link = new Link //{ // //Class = "PARENT", // Name = "Род-вид", // IsActive = false, // AtributesDictionary = new Dictionary<string, string> // { // {"Комментарий", "Излишний"} // }, // Source = entity2, // Target = entity1 //}; //result = transaction.CreateLink(link.GetParameters(), link.Source.GetParameters(), link.Target.GetParameters()); ////res = result.Consume(); ////rec = result.Peek(); //Unwrap(res, rec, result); //InsertEmptyLine("Find Link 1"); //result = transaction.FindLink(link.GetParameters()); ////res = result.Consume(); ////rec = result.Peek(); //Unwrap(res, rec, result); //InsertEmptyLine("Find Link 2"); //var link2 = new Link(link.Id); //result = transaction.FindLink(link2.GetParameters()); ////res = result.Consume(); ////rec = result.Peek(); //Unwrap(res, rec, result); //InsertEmptyLine("IsExist 1"); //result = transaction.IsExist(entity1.GetParameters()); ////res = result.Consume(); ////rec = result.Peek(); //Unwrap(res, rec, result); //InsertEmptyLine("IsExist 2"); //result = transaction.IsExist(entity2.GetParameters()); ////res = result.Consume(); ////rec = result.Peek(); //Unwrap(res, rec, result); //InsertEmptyLine("IsExist 3"); //result = transaction.IsExist(entity3.GetParameters()); ////res = result.Consume(); ////rec = result.Peek(); //Unwrap(res, rec, result); }