/// <summary> /// Parsa poruku, rekord i puni IParseTree objekt /// </summary> /// <param name="root"></param> /// <param name="item"></param> /// <param name="delimiter"></param> /// <param name="lv"></param> public void Parse(IParseTree root, string item, string delimiter, int lv) { log.Debug("Parser:Parse"); try { root.SetValue(item); if (lv >= delimiter.Length) return; string[] items = item.Split(delimiter[lv]); lv++; foreach (string str in items) { if (items.Length > 1 || items[0].Contains(delimiter[lv])) { IParseTree node = this.CreateNode(lv); node.SetValue(str); root.GetNodes().Add(node); Parse(node, str, delimiter, lv); } } } catch (Exception ex) { log.Error(ex.ToString()); throw; } }