Exemplo n.º 1
0
        private bool LogSessionContractCall(
            [EventLogMethodParameter(Title = "Session", OrdinalInStruct = 0, TypeInStruct = "ushort")]
            uint sessionId,
            [EventLogMethodParameter(Title = "SessionState", OrdinalInStruct = 1, TypeInStruct = "byte")]
            TcpStateEnum sessionState,
            [EventLogMethodParameter(Title = "CallName", OrdinalInStruct = 2, TypeInStruct = "byte")]
            TcpSessionContractEntrypoints contractEntrypoint,
            uint flag)
        {
            if ((debugOptions & flag /* To Debugger */) != 0)
            {
                Core.Log("TCP: Ses{0,3} ({1}) Contract EP '{2}' called.",
                         sessionId,
                         TcpState.TcpStateNames[(uint)sessionState],
                         TcpSessionEventsSource.ContractCallNames[(uint)contractEntrypoint]);
            }

            if ((ControlFlags & flag) != 0)
            {
                ContractCallEntry contractCallEntry =
                    new ContractCallEntry(sessionId, sessionState, contractEntrypoint);

                unsafe
                {
                    return(LogEntry(ControlFlags,
                                    contractCallTypeHandle,
                                    (byte *)&contractCallEntry,
                                    sizeof(ContractCallEntry)) != 0);
                }
            }

            return(false);
        }
Exemplo n.º 2
0
 public ContractCallEntry(uint sessionId, TcpStateEnum sessionState,
                          TcpSessionContractEntrypoints callId)
 {
     this.sessionId    = (ushort)sessionId;
     this.sessionState = (byte)sessionState;
     this.callId       = (byte)callId;
 }
Exemplo n.º 3
0
 internal bool LogSessionInfoContractCall(
     [EventLogMethodParameter(Title = "Session", OrdinalInStruct = 0, TypeInStruct = "ushort")]
     uint sessionId,
     [EventLogMethodParameter(Title = "SessionState", OrdinalInStruct = 1, TypeInStruct = "byte")]
     TcpStateEnum sessionState,
     [EventLogMethodParameter(Title = "CallId", OrdinalInStruct = 2, TypeInStruct = "byte")]
     TcpSessionContractEntrypoints contractEntrypoint)
 {
     return(this.LogSessionContractCall(sessionId, sessionState,
                                        contractEntrypoint,
                                        LogInfoContractCalls));
 }