/// <summary> /// Deletes a data object from the data store. /// </summary> /// <typeparam name="TObject">The data object type.</typeparam> /// <param name="uri">The data object URI.</param> /// <param name="objectType">The object type.</param> protected virtual void DeleteEntity <TObject>(EtpUri uri, string objectType) where TObject : class { try { Logger.DebugFormat("Deleting {0} data object.", objectType); foreach (var message in MessageHandler.CreateMessages(objectType, uri)) { var topicName = MessageHandler.GetDeleteTopicName(message, WitsmlSettings.GlobalDeleteTopicName); if (MessageHandler.IsMessageValid(message, topicName)) { SendMessage(message, topicName).Wait(); } } } catch (Exception ex) { Logger.ErrorFormat("Error deleting {0} data object:{1}{2}", objectType, Environment.NewLine, ex); if (ex is WitsmlException) { throw; } throw new WitsmlException(ErrorCodes.ErrorDeletingFromDataStore, ex); } }
/// <summary> /// Replaces a data object in the data store. /// </summary> /// <typeparam name="TObject">The data object type.</typeparam> /// <param name="entity">The object to be replaced.</param> /// <param name="uri">The data object URI.</param> /// <param name="objectType">The object type.</param> private void ReplaceEntity <TObject>(TObject entity, EtpUri uri, string objectType) where TObject : class { try { Logger.DebugFormat("Replacing {0} data object.", objectType); foreach (var message in MessageHandler.CreateMessages(objectType, uri, entity)) { var topicName = MessageHandler.GetReplaceTopicName(message, WitsmlSettings.GlobalReplaceTopicName); if (MessageHandler.IsMessageValid(message, topicName)) { SendMessage(message, topicName).Wait(); } } } catch (Exception ex) { Logger.ErrorFormat("Error replacing {0} data object:{1}{2}", objectType, Environment.NewLine, ex); if (ex is WitsmlException) { throw; } throw new WitsmlException(ErrorCodes.ErrorReplacingInDataStore, ex); } }