public new void Dispose() { base.Dispose(); if (buffer1 != null) { buffer1.Dispose(); } if (buffer2 != null) { buffer2.Dispose(); } if (e1 != null) { e1.Dispose(); e1 = null; } }
public int ProccessTransactionUser(bool isAck, ServerAsyncEventArgs e) { int action = 0; switch (State) { case Transaction.States.Created: action |= Transaction.Action.SendOutgoingMessage; eventArgs = e.CreateDeepCopy(); action |= SetState(Transaction.States.Calling); break; case Transaction.States.Calling: case Transaction.States.Proceeding: break; case Transaction.States.Completed: if (isAck && IsTransportUnreliable) { if (eventArgs != null) eventArgs.Dispose(); eventArgs = e.CreateDeepCopy(); isAckCached = true; } break; case Transaction.States.Terminated: break; } return action; }