/// <summary> /// Publishes the on next. /// </summary> /// <param name="value">The value.</param> public void PublishOnNext(T value) { if (!VisualRxSettings.Enable) { return; } var candidate = new MarbleCandidate(_name, MarbleKind.OnNext, _keyworkds); VisualRxProxyWrapper[] proxies = VisualRxSettings.GetProxies(candidate); #region Validation if (proxies.Length == 0) { return; } #endregion // Validation object item = _surrogate.Mapping(value, candidate) ?? value; // TODO: Marble base should have a virtual method for the surrogate var marbleItem = MarbleNext.Create(_name, _surrogate.SerializationStrategy, item, SafeStopwatch.Elapsed(), _machineName); Publish(marbleItem, proxies); }
/// <summary> /// Publishes the error. /// </summary> /// <param name="ex">The ex.</param> public void PublishError(Exception ex) { if (!VisualRxSettings.Enable) { return; } var candidate = new MarbleCandidate(_name, MarbleKind.OnError, _keyworkds); VisualRxProxyWrapper[] proxies = VisualRxSettings.GetProxies(candidate); #region Validation if (proxies.Length == 0) { return; } #endregion // Validation var marbleItem = MarbleError.Create(_name, _surrogate.SerializationStrategy, ex, SafeStopwatch.Elapsed() , _machineName); Publish(marbleItem, proxies); }