protected IDisposable EstablishMessageContext() { var headers = new Dictionary <string, object> { { Headers.ReturnAddress, "none" }, { Headers.MessageId, "just_some_message_id" }, }; var result = new NoTransaction(); //_messageContext = _MessageContextEstablishAccessor(headers); Disposables.TrackDisposable(EnterAFakeMessageContext(headers: headers)); return(result); }
public void SemiDispose(bool disposing, DbConn aDbConn) { //トランザクションを終了する try { //GCによる回収時にはCommitAtFinalizingの設定によりCOMMITまたはROLLBACKする if (disposing || aDbConn._commitAtFinalizing) { aDbConn.Commit(); } else { aDbConn.Rollback(); } } catch (Exception ex) { //GCによる回収時には例外を送出しない if (disposing) { //Error1状態に遷移して例外を再送出する aDbConn.GoToError1AndThrow(ex, true); } } //次の状態に遷移する aDbConn.GoToNextState(NoTransaction.GetInstance()); }
public void SemiDispose(bool disposing, DbConn aDbConn) { //次の状態に遷移する aDbConn.GoToNextState(NoTransaction.GetInstance()); }
public bool IsAvailable() { return(object.ReferenceEquals(_state, NoTransaction.GetInstance())); }