protected virtual void Transform(IEnumerable <string> rules, IClaimsTransformationContext context) { foreach (var rule in rules) { if (string.IsNullOrEmpty(rule)) { continue; } var expression = default(RuleExpression); if (!this.Cache.TryGetValue(rule, out expression)) { expression = this.Parser.Parse(rule); this.Cache.Add(rule, expression); } this.Transform(expression, context); } }
protected virtual void Transform(RuleExpression expression, IClaimsTransformationContext context) { var visitor = new ExpressionVisitor(context); visitor.Visit(expression); }
public ExpressionVisitor(IClaimsTransformationContext context) { this.Context = context; }