Exemplo n.º 1
0
        /// <summary>
        /// Intercepts the specified invocation.
        /// </summary>
        /// <param name="invocation">The invocation.</param>
        public void Intercept(IInvocation invocation)
        {
            invocation.ReturnValue = invocation.Method.Invoke(_view, invocation.Arguments);

            if (invocation.Method == Target)
            {
                if (AuditPath.IsAuditEnabled)
                {
                    var newData = (EventBean[])invocation.Arguments[0];
                    var oldData = (EventBean[])invocation.Arguments[1];
                    AuditPath.AuditLog(
                        _engineURI, _statementName, AuditEnum.VIEW,
                        _viewName + " insert {" + EventBeanUtility.Summarize(newData) + "} remove {" + EventBeanUtility.Summarize(oldData) + "}");
                }
            }
        }
Exemplo n.º 2
0
        /// <summary>
        /// Intercepts the specified invocation.
        /// </summary>
        /// <param name="invocation">The invocation.</param>
        public void Intercept(IInvocation invocation)
        {
            if (invocation.Method.Name == "Insert")
            {
                if (AuditPath.IsInfoEnabled)
                {
                    var arg    = invocation.Arguments[0];
                    var events = "(undefined)";
                    if (arg is EventBean[])
                    {
                        events = EventBeanUtility.Summarize((EventBean[])arg);
                    }
                    else if (arg is EventBean)
                    {
                        events = EventBeanUtility.Summarize((EventBean)arg);
                    }
                    AuditPath.AuditLog(_engineURI, _statementName, AuditEnum.STREAM, _eventTypeAndFilter + " inserted " + events);
                }
            }

            invocation.ReturnValue = invocation.Method.Invoke(_eventStream, invocation.Arguments);
        }
Exemplo n.º 3
0
        private static String ToStringEvaluateTrue(EvalAuditStateNode current, String patternExpression, MatchedEventMap matchEvent, EvalStateNode fromNode, bool isQuitted)
        {
            var writer = new StringWriter();

            WritePatternExpr(current, patternExpression, writer);
            writer.Write(" evaluate-true {");

            writer.Write(" from: ");
            TypeHelper.WriteInstance(writer, fromNode, false);

            writer.Write(" map: {");
            var delimiter = "";
            var data      = matchEvent.MatchingEvents;

            for (int i = 0; i < data.Length; i++)
            {
                var name  = matchEvent.Meta.TagsPerIndex[i];
                var value = matchEvent.GetMatchingEventAsObject(i);
                writer.Write(delimiter);
                writer.Write(name);
                writer.Write("=");
                if (value is EventBean)
                {
                    writer.Write(((EventBean)value).Underlying.ToString());
                }
                else if (value is EventBean[])
                {
                    writer.Write(EventBeanUtility.Summarize((EventBean[])value));
                }
                delimiter = ", ";
            }

            writer.Write("} quitted: ");
            writer.Write(isQuitted);

            writer.Write("}");
            return(writer.ToString());
        }
Exemplo n.º 4
0
        public override void Update(EventBean[] newData, EventBean[] oldData)
        {
            if (_audit)
            {
                if (AuditPath.IsAuditEnabled)
                {
                    AuditPath.AuditLog(_exprEvaluatorContext.EngineURI, _exprEvaluatorContext.StatementName, AuditEnum.STREAM, _eventType.Name + " insert {" + EventBeanUtility.Summarize(newData) + "} remove {" + EventBeanUtility.Summarize(oldData) + "}");
                }
            }

            // if we have a filter for the named window,
            if (_filterList.Length != 0)
            {
                var eventPerStream = new EventBean[1];
                newData = PassFilter(newData, true, _exprEvaluatorContext, eventPerStream);
                oldData = PassFilter(oldData, false, _exprEvaluatorContext, eventPerStream);
            }

            if (_optPropertyEvaluator != null)
            {
                newData = GetUnpacked(newData);
                oldData = GetUnpacked(oldData);
            }

            if ((newData != null) || (oldData != null))
            {
                UpdateChildren(newData, oldData);
            }
        }
Exemplo n.º 5
0
 public static void AuditInsertInto(string engineURI, string statementName, EventBean theEvent)
 {
     AuditLog(engineURI, statementName, AuditEnum.INSERT, EventBeanUtility.Summarize(theEvent));
 }
Exemplo n.º 6
0
 public void Render(EventBean theEvent, TextWriter writer)
 {
     EventBeanUtility.Summarize(theEvent, writer);
 }