private OVAL.Variables.VariableType CreateVariableType(VariablesTypeVariableExternal_variable declaredExternalVariable) { var fakeVariableValue = declaredExternalVariable.id.Replace("oval:gov.nist.fdcc.xpfirewall:var:", string.Empty); return(new OVAL.Variables.VariableType { id = declaredExternalVariable.id, comment = declaredExternalVariable.comment, datatype = declaredExternalVariable.datatype, value = new string[] { fakeVariableValue }.ToList() }); }
private IEnumerable<string> VerifyRestrictions(string value, VariablesTypeVariableExternal_variable externalVariable) { List<string> messages = new List<string>(); IEnumerable<PossibleRestrictionType> possibleRestrictions = externalVariable.GetPossibleRestrictions(); foreach (var possibleRestriction in possibleRestrictions) { foreach (var restriction in possibleRestriction.Items) { messages.AddRange(this.ApplyRestriction(restriction, value, externalVariable.datatype, possibleRestriction.hint)); } } return messages; }
private IEnumerable <string> VerifyRestrictions(string value, VariablesTypeVariableExternal_variable externalVariable) { List <string> messages = new List <string>(); IEnumerable <PossibleRestrictionType> possibleRestrictions = externalVariable.GetPossibleRestrictions(); foreach (var possibleRestriction in possibleRestrictions) { foreach (var restriction in possibleRestriction.Items) { messages.AddRange(this.ApplyRestriction(restriction, value, externalVariable.datatype, possibleRestriction.hint)); } } return(messages); }
public IEnumerable<string> ValidateValue(VariablesTypeVariableExternal_variable externalVariable, string value) { List<string> messages = new List<string>(); IEnumerable<PossibleValueType> possibleValues = externalVariable.GetPossibleValues(); if (externalVariable.HasPossibleRestriction()) { messages.AddRange(this.VerifyRestrictions(value, externalVariable)); if (messages.Count() > 0) { if (this.TheValueExistsInPossibleValues(value, possibleValues)) messages.Clear(); } } else { messages.AddRange(this.VerifyPossibleValues(value, possibleValues)); } return messages; }
public ExternalVariableEditor CreateExternalVariableEditor(VariablesTypeVariableExternal_variable externalVariable) { switch (externalVariable.datatype) { case SimpleDatatypeEnumeration.@string: return(new StringExternalVariableEditor(externalVariable)); case SimpleDatatypeEnumeration.@int: return(new IntExternalVariableEditor(externalVariable)); case SimpleDatatypeEnumeration.boolean: return(new BooleanExternalVariableEditor(externalVariable)); case SimpleDatatypeEnumeration.binary: return(new BinaryExternalVariableEditor(externalVariable)); default: throw new NotImplementedException(); } }
public IEnumerable <string> ValidateValue(VariablesTypeVariableExternal_variable externalVariable, string value) { List <string> messages = new List <string>(); IEnumerable <PossibleValueType> possibleValues = externalVariable.GetPossibleValues(); if (externalVariable.HasPossibleRestriction()) { messages.AddRange(this.VerifyRestrictions(value, externalVariable)); if (messages.Count() > 0) { if (this.TheValueExistsInPossibleValues(value, possibleValues)) { messages.Clear(); } } } else { messages.AddRange(this.VerifyPossibleValues(value, possibleValues)); } return(messages); }
public IntExternalVariableEditor(VariablesTypeVariableExternal_variable externalVariable) : base(externalVariable) { }
public ExternalVariableEditor(VariablesTypeVariableExternal_variable variable) { this.externalVariable = variable; }
public ExternalVariableEvaluator(VariablesTypeVariableExternal_variable variable, oval_variables external_variables) { this.variable = variable; this.external_variables = external_variables; }
public BooleanExternalVariableEditor(VariablesTypeVariableExternal_variable externalVariable) : base(externalVariable) { }