private object CreateNode(JObject jObject) { var typeValue = jObject.GetValue("type"); var nodeType = typeValue.ToString(); return(typeFactory.GetNew(nodeType)); }
public static INode GetNewNode(this INodeRequest request, IContainer container, INodeTypeFactory factory) { if (factory == null) { throw new ArgumentException("Node type factory is needed to create new nodes", nameof(factory)); } var parent = request.GetParent(container); var type = request.QueryString.GetString("type", request.JsonData.GetString("type")); var newNode = factory.GetNew(type); if (request.JsonData != null) { newNode.Apply(request.JsonData); } parent.Add(newNode); return(newNode); }