public virtual void Commit(ICommittedCallbackDispatcher dispatcher) { lock (Container().Lock()) { DispatchCommittingCallback(); if (!DoCommittedCallbacks(dispatcher)) { CommitListeners(); CommitImpl(); CommitClearAll(); } else { CommitListeners(); Collection4 deleted = CollectCommittedCallbackDeletedInfo(); CommitImpl(); CallbackObjectInfoCollections committedInfo = CollectCommittedCallbackInfo(deleted ); CommitClearAll(); dispatcher.DispatchCommitted(CallbackObjectInfoCollections.Emtpy == committedInfo ? committedInfo : new CallbackObjectInfoCollections(committedInfo.added, committedInfo .updated, new ObjectInfoCollectionImpl(deleted))); } } }
public Msg ReplyFromServer() { IServerMessageDispatcher dispatcher = ServerMessageDispatcher(); lock (ContainerLock()) { ServerTransaction().Commit(dispatcher); committedInfo = dispatcher.CommittedInfo(); } return Msg.Ok; }
private byte[] EncodeInfo(CallbackObjectInfoCollections callbackInfo, ByteArrayOutputStream os) { EncodeObjectInfoCollection(os, callbackInfo.added, new InternalIDEncoder (this)); EncodeObjectInfoCollection(os, callbackInfo.deleted, new FrozenObjectInfoEncoder (this)); EncodeObjectInfoCollection(os, callbackInfo.updated, new InternalIDEncoder (this)); return os.ToByteArray(); }
public virtual MCommittedInfo Encode(CallbackObjectInfoCollections callbackInfo, int dispatcherID) { var os = new ByteArrayOutputStream(); PrimitiveCodec.WriteInt(os, dispatcherID); var bytes = EncodeInfo(callbackInfo, os); var committedInfo = (MCommittedInfo) GetWriterForLength(Transaction(), bytes.Length + Const4.IntLength); committedInfo._payLoad.Append(bytes); return committedInfo; }
private void AddCommittedInfoMsg(CallbackObjectInfoCollections committedInfo, LocalTransaction serverTransaction) { lock (ContainerLock()) { Msg.CommittedInfo.SetTransaction(serverTransaction); MCommittedInfo message = Msg.CommittedInfo.Encode(committedInfo, ServerMessageDispatcher ().DispatcherID()); message.SetMessageDispatcher(ServerMessageDispatcher()); ServerMessageDispatcher().Server().AddCommittedInfoMsg(message); } }
public virtual void CommitOnCompleted(Transaction transaction, CallbackObjectInfoCollections objectInfoCollections, bool isOwnCommit) { }
public virtual void CommitOnStarted(Transaction transaction, CallbackObjectInfoCollections objectInfoCollections) { }
public _IRunnable_111(MCommittedInfo _enclosing, CallbackObjectInfoCollections callbackInfos , int dispatcherID) { this._enclosing = _enclosing; this.callbackInfos = callbackInfos; this.dispatcherID = dispatcherID; }
public _IRunnable_132(EventRegistryImpl _enclosing, Transaction transaction, CallbackObjectInfoCollections objectInfoCollections, bool isOwnCommit) { this._enclosing = _enclosing; this.transaction = transaction; this.objectInfoCollections = objectInfoCollections; this.isOwnCommit = isOwnCommit; }
public virtual void CommitOnCompleted(Transaction transaction, CallbackObjectInfoCollections objectInfoCollections, bool isOwnCommit) { if (!(_committed != null)) { return; } WithExceptionHandlingInCallback(new _IRunnable_132(this, transaction, objectInfoCollections , isOwnCommit)); }
public _IRunnable_121(EventRegistryImpl _enclosing, Transaction transaction, CallbackObjectInfoCollections objectInfoCollections) { this._enclosing = _enclosing; this.transaction = transaction; this.objectInfoCollections = objectInfoCollections; }
public virtual void CommitOnStarted(Transaction transaction, CallbackObjectInfoCollections objectInfoCollections) { if (!(_committing != null)) { return; } WithExceptionHandlingInCallback(new _IRunnable_121(this, transaction, objectInfoCollections )); }
public void DispatchCommitted(CallbackObjectInfoCollections committedInfo) { _enclosing.Callbacks().CommitOnCompleted(_enclosing, committedInfo, false ); }
public void DispatchCommitted(CallbackObjectInfoCollections committedInfo) { _committedInfo = committedInfo; }
public CommitEventArgs(Transaction transaction, CallbackObjectInfoCollections collections , bool isOwnCommit) : base(transaction) { _collections = collections; _isOwnCommit = isOwnCommit; }
public void DispatchCommitted(CallbackObjectInfoCollections committedInfo) { this._enclosing.Callbacks().CommitOnCompleted(this._enclosing, committedInfo, false ); }