public void Dispose() { if (eventArgs != null) { eventArgs.Dispose(); } }
private void DoWork(ServerAsyncEventArgs e, int transactionKId, int action) { if ((action & Transaction.Action.SendOutgoingMessage) > 0) { SendAsync(e); } else { e.Dispose(); } DoWork(transactionKId, action); }
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); }