protected virtual void AddAfterAOPHandle(string methodName, AfterAOPHandle afterHandle) { lock (this.m_AfterHandles) { if (!m_AfterHandles.Contains(methodName)) { m_AfterHandles.Add(methodName, afterHandle); } } }
protected virtual void AddAfterAOPHandle(string methodName, AfterAOPHandle afterHandle) { SortedList afterHandles; Monitor.Enter(afterHandles = this.m_AfterHandles); try { if (!this.m_AfterHandles.Contains(methodName)) { this.m_AfterHandles.Add(methodName, afterHandle); } } finally { Monitor.Exit(afterHandles); } }
public IMessage SyncProcessMessage(IMessage msg) { IMethodCallMessage call = msg as IMethodCallMessage; string methodName = call.MethodName.ToUpper(); BeforeAOPHandle beforeHandle = FindBeforeAOPHandle(methodName); if (beforeHandle != null) { beforeHandle(call); } IMessage retMsg = m_NextSink.SyncProcessMessage(msg); IMethodReturnMessage reply = retMsg as IMethodReturnMessage; AfterAOPHandle afterHandle = FindAfterAOPHandle(methodName); if (afterHandle != null) { afterHandle(reply); } return(retMsg); }
public IMessage SyncProcessMessage(IMessage msg) { IMethodCallMessage methodCallMessage = msg as IMethodCallMessage; string methodName = methodCallMessage.MethodName.ToUpper(); bool flag = this.FindbeforeAOPMethod(methodCallMessage); BeforeAOPHandle beforeAOPHandle = this.FindBeforeAOPHandle(methodName); if (beforeAOPHandle != null && flag) { beforeAOPHandle(methodCallMessage); } IMessage message = this.m_NextSink.SyncProcessMessage(msg); IMethodReturnMessage replyMsg = message as IMethodReturnMessage; AfterAOPHandle afterAOPHandle = this.FindAfterAOPHandle(methodName); if (afterAOPHandle != null && flag) { afterAOPHandle(replyMsg); } return(message); }