Beispiel #1
0
        protected override FilterExpression Transform(FilterPropertyExpression px)
        {
            if (px == _source)
            {
                return(_dest);
            }

            return(base.Transform(px));
        }
        protected override FilterExpressionCosting Transform(FilterPropertyExpression px)
        {
            if (px.PropertyName == "Exception" && px.IsBuiltIn)
            {
                return(new FilterExpressionCosting(px, 100));
            }

            if (px.PropertyName == "Level" && px.IsBuiltIn)
            {
                return(new FilterExpressionCosting(px, 5));
            }

            if (px.IsBuiltIn)
            {
                return(new FilterExpressionCosting(px, 1));
            }

            return(new FilterExpressionCosting(px, 10));
        }
        protected override Expression <CompiledFilterExpression> Transform(FilterPropertyExpression px)
        {
            if (px.IsBuiltIn)
            {
                if (px.PropertyName == "Level")
                {
                    return(context => context.Level.ToString());
                }

                if (px.PropertyName == "Message")
                {
                    return(context => NormalizeBaseDocumentProperty(context.RenderMessage(null)));
                }

                if (px.PropertyName == "Exception")
                {
                    return(context => NormalizeBaseDocumentProperty(context.Exception == null ? null : context.Exception.ToString()));
                }

                if (px.PropertyName == "Timestamp")
                {
                    return(context => context.Timestamp.ToString("o"));
                }

                if (px.PropertyName == "MessageTemplate")
                {
                    return(context => NormalizeBaseDocumentProperty(context.MessageTemplate.Text));
                }

                if (px.PropertyName == "Properties")
                {
                    return(context => context.Properties);
                }

                return(context => Undefined.Value);
            }

            var propertyName = px.PropertyName;

            return(context => GetPropertyValue(context, propertyName));
        }
 protected override FilterExpression Transform(FilterPropertyExpression px)
 {
     return(px);
 }
 protected override FilterCallExpression Transform(FilterPropertyExpression px)
 {
     return(null);
 }
Beispiel #6
0
 protected abstract TResult Transform(FilterPropertyExpression px);