internal bool IfContains(Dictionary <string, string> values, CaseDefinition caseDef, out List <LinkDefinition.LinkWrapper> links) { links = new List <LinkDefinition.LinkWrapper>(); string property = caseDef.property; if (caseDef.contains == null) { return(false); } string contains = caseDef.contains; links.AddRange(IfContainsList(values, caseDef, property, contains)); return(links.Count > 0); }
internal bool IfValue(Dictionary <string, string> values, CaseDefinition caseDef, out List <LinkDefinition.LinkWrapper> links) { links = new List <LinkDefinition.LinkWrapper>(); if (caseDef.property == null) { return(false); } if (caseDef.value == null) { return(false); } string property = caseDef.property; string value = caseDef.value; links.AddRange(IfValueList(values, caseDef, property, value)); return(links.Count > 0); }
private List <LinkDefinition.LinkWrapper> ResolveCase(Dictionary <string, string> values, CaseDefinition caseDef, string property, out bool breakValue) { List <LinkDefinition.LinkWrapper> ret = new List <LinkDefinition.LinkWrapper>(); breakValue = caseDef.switchBreak; if (caseDef.value != null) { if (values.ContainsKey(property) && values[property] == caseDef.value) { ret.AddRange(caseDef.linkList); } if (caseDef.value.Equals(NullConstant) && CheckNullConstant(values, property)) { ret.AddRange(caseDef.linkList); } } if (caseDef.contains != null) { if (values.ContainsKey(property) && values[property].Contains(caseDef.contains)) { ret.AddRange(caseDef.linkList); } } return(ret); }
internal List <LinkDefinition.LinkWrapper> IfContainsList(Dictionary <string, string> values, CaseDefinition caseDef, string property, string contains) { List <LinkDefinition.LinkWrapper> ret = new List <LinkDefinition.LinkWrapper>(); if (values.ContainsKey(property) && values[property].Contains(contains)) { ret = caseDef.linkList; } return(ret); }
internal List <LinkDefinition.LinkWrapper> IfValueList(Dictionary <string, string> values, CaseDefinition caseDef, string property, string value) { List <LinkDefinition.LinkWrapper> ret = new List <LinkDefinition.LinkWrapper>(); if (values.ContainsKey(property) && values[property] == value) { return(caseDef.linkList); } if (value.Equals(NullConstant) && CheckNullConstant(values, property)) { return(caseDef.linkList); } return(ret); }