public static List <string> FindAllLanguagePieces(string dataListRegion) { var allValidRegions = new List <string>(); if (!string.IsNullOrEmpty(dataListRegion)) { try { if (DataListUtil.IsEvaluated(dataListRegion)) { Dev2DataLanguageParser parser = new Dev2DataLanguageParser(); var allParts = parser.MakeParts(dataListRegion); foreach (var part in allParts) { var parseTO = part.Child; while (parseTO != null) { AddPart(parseTO, allValidRegions); parseTO = parseTO.Child; } AddPart(part, allValidRegions); } } } catch (Exception) { //Do Something usefull like log Dev2Logger.Log.Info("Error parsing"); } } return(allValidRegions); }
public static List <string> SplitIntoRegionsForFindMissing(string result) { if (!String.IsNullOrEmpty(result)) { try { var allRegions = new List <string>(); Dev2DataLanguageParser parser = new Dev2DataLanguageParser(); IList <ParseTO> makeParts = parser.MakeParts(result); foreach (var makePart in makeParts.Where(c => !c.HangingOpen)) { allRegions.Add(DataListUtil.AddBracketsToValueIfNotExist(makePart.Payload)); allRegions.AddRange(AddChildrenPartForFindMissing(makePart.Child)); } return(allRegions); } catch (Exception) { return(new List <string> { null }); } } return(new List <string> { null }); }
//2013.06.03: Ashley Lewis for bug 9498 - handle multiple regions in result public static List <string> SplitIntoRegions(string result) { if (!String.IsNullOrEmpty(result)) { try { var allRegions = new List <string>(); Dev2DataLanguageParser parser = new Dev2DataLanguageParser(); IList <ParseTO> makeParts = parser.MakeParts(result); foreach (var makePart in makeParts.Where(c => !c.HangingOpen)) { if (makePart.Child != null) { int indexOfBracket = makePart.Payload.IndexOf("(", StringComparison.Ordinal); string tmpresult = makePart.Payload.Insert(indexOfBracket + 1, DataListUtil.AddBracketsToValueIfNotExist(makePart.Child.Payload)); allRegions.Add(string.Concat("[[", tmpresult, "]]")); } else { allRegions.Add(string.Concat("[[", makePart.Payload, "]]")); } } return(allRegions); } catch (Exception) { return(new List <string> { null }); } } return(new List <string> { null }); }
//2013.06.03: Ashley Lewis for bug 9498 - handle multiple regions in result public static List<string> SplitIntoRegions(string result) { if(!String.IsNullOrEmpty(result)) { try { var allRegions = new List<string>(); Dev2DataLanguageParser parser = new Dev2DataLanguageParser(); IList<ParseTO> makeParts = parser.MakeParts(result); foreach(var makePart in makeParts.Where(c => !c.HangingOpen)) { if(makePart.Child != null) { int indexOfBracket = makePart.Payload.IndexOf("(", StringComparison.Ordinal); string tmpresult = makePart.Payload.Insert(indexOfBracket + 1, DataListUtil.AddBracketsToValueIfNotExist(makePart.Child.Payload)); allRegions.Add(string.Concat("[[", tmpresult, "]]")); } else { allRegions.Add(string.Concat("[[", makePart.Payload, "]]")); } } return allRegions; } catch(Exception) { return new List<string> { null }; } } return new List<string> { null }; }
public void Dev2DataLanguageParser_ParseExpressionIntoParts() { //---------------Set up test pack------------------- var parser = new Dev2DataLanguageParser(); const string nullText = null; var emptyList = parser.MakeParts(nullText, true); Assert.AreEqual(0, emptyList.Count); var parts = parser.ParseForActivityDataItems(nullText); Assert.AreEqual(0, parts.Count); const string unclosed = "[[varName"; parts = parser.ParseForActivityDataItems(unclosed); Assert.AreEqual("varName", parts[0]); Assert.ThrowsException <Dev2DataLanguageParseError>(() => parser.MakeParts(unclosed, true)); }
static IActionableErrorInfo ValidateVariable(Dev2DataLanguageParser parser, string variable, System.Action focusAction) { if (!string.IsNullOrEmpty(variable)) { try { parser.MakeParts(variable); } catch (Exception ex) { return(new ActionableErrorInfo(focusAction) { ErrorType = ErrorType.Critical, Message = ex.Message }); } } return(null); }
public void Dev2DataLanguageParser_MakeParts_PayloadIsNull_NoParts() { //------------Setup for test-------------------------- var dev2LanuageParser = new Dev2DataLanguageParser(); //------------Execute Test--------------------------- var parts = dev2LanuageParser.MakeParts(null); //------------Assert Results------------------------- Assert.AreEqual(0, parts.Count); }
public static List<string> FindAllLanguagePieces(string dataListRegion) { var allValidRegions = new List<string>(); if(!string.IsNullOrEmpty(dataListRegion)) { try { if(DataListUtil.IsEvaluated(dataListRegion)) { Dev2DataLanguageParser parser = new Dev2DataLanguageParser(); var allParts = parser.MakeParts(dataListRegion); foreach(var part in allParts) { var parseTO = part.Child; while(parseTO != null) { AddPart(parseTO, allValidRegions); parseTO = parseTO.Child; } AddPart(part, allValidRegions); } } } catch(Exception) { //Do Something usefull like log Dev2Logger.Log.Info("Error parsing"); } } return allValidRegions; }
public static List<string> SplitIntoRegionsForFindMissing(string result) { if(!String.IsNullOrEmpty(result)) { try { var allRegions = new List<string>(); Dev2DataLanguageParser parser = new Dev2DataLanguageParser(); IList<ParseTO> makeParts = parser.MakeParts(result); foreach(var makePart in makeParts.Where(c => !c.HangingOpen)) { allRegions.Add(DataListUtil.AddBracketsToValueIfNotExist(makePart.Payload)); allRegions.AddRange(AddChildrenPartForFindMissing(makePart.Child)); } return allRegions; } catch(Exception) { return new List<string> { null }; } } return new List<string> { null }; }