public void WebTopologyModelProviderDelegate(List <UIModel> uIModels) { //Dok se ne sredi logika za vise root-ova na WEB-u UIModel uIModel; if (uIModels.Count == 0) { uIModel = new UIModel(); } else { uIModel = uIModels.First(); } TopologyForUIMessage message = new TopologyForUIMessage(uIModel); CalculationEnginePublication publication = new CalculationEnginePublication(Topic.TOPOLOGY, message); try { using (PublisherProxy publisherProxy = proxyFactory.CreateProxy <PublisherProxy, IPublisher>(EndpointNames.PublisherEndpoint)) { if (publisherProxy == null) { string errMessage = "WebTopologyModelProviderDelegate => PublisherProxy is null."; logger.LogError(errMessage); throw new NullReferenceException(errMessage); } publisherProxy.Publish(publication, "CE_PUBLISHER"); logger.LogDebug("Topology publisher published new ui model successfully."); } } catch (Exception ex) { logger.LogError($"Topology publisher failed to publish new ui model. Exception: {ex.Message}"); } }
public void TopologyToOMSConvertDelegate(List <IOutageTopologyModel> outageTopologyModels) { IOutageTopologyModel outageTopologyModel; if (outageTopologyModels.Count == 0) { outageTopologyModel = new OutageTopologyModel(); } else { outageTopologyModel = outageTopologyModels.First(); } OMSModelMessage message = new OMSModelMessage(outageTopologyModel); CalculationEnginePublication publication = new CalculationEnginePublication(Topic.OMS_MODEL, message); try { using (PublisherProxy publisherProxy = proxyFactory.CreateProxy <PublisherProxy, IPublisher>(EndpointNames.PublisherEndpoint)) { if (publisherProxy == null) { string errMessage = "TopologyToOMSConvertDelegate => PublisherProxy is null."; logger.LogError(errMessage); throw new NullReferenceException(errMessage); } publisherProxy.Publish(publication, "CE_PUBLICATION"); logger.LogDebug("Topology publisher published new oms model successfully."); } } catch (Exception ex) { logger.LogError($"Topology publisher failed to publish new oms model. Exception: {ex.Message}"); } }