public static void UpdateServiceBusNamespace(ConfigFileUse configFileUse, string key, string newKey, string newValue,
                                                     WriteToLogDelegate writeToLog)
        {
            var configuration = TwoFilesConfiguration.Create(configFileUse, writeToLog);

            configuration.UpdateEntryInDictionarySection(SERVICEBUS_SECTION_NAME, key, newKey, newValue, writeToLog);
        }
        public static void GetMessageTextAndFile(TwoFilesConfiguration configuration,
                                                 out string messageText, out string messageFile)
        {
            messageText = ReadMessage();
            messageFile = string.Empty;

            if (string.IsNullOrWhiteSpace(messageText))
            {
                messageText = configuration.GetStringValue(ConfigurationParameters.MessageParameter,
                                                           DefaultMessageText);
            }

            messageFile = configuration.GetStringValue(ConfigurationParameters.FileParameter, messageFile);
            if (!string.IsNullOrWhiteSpace(messageFile) && File.Exists(messageFile))
            {
                using (var streamReader = new StreamReader(messageFile))
                {
                    var text = streamReader.ReadToEnd();
                    if (!string.IsNullOrWhiteSpace(text))
                    {
                        messageText = text;
                    }
                }
            }
        }
        public static MainSettings GetMainProperties(ConfigFileUse configFileUse,
                                                     MainSettings currentSettings, WriteToLogDelegate writeToLog)
        {
            var configuration = TwoFilesConfiguration.Create(configFileUse, writeToLog);

            return(GetMainSettingsUsingConfiguration(configuration, currentSettings, writeToLog));
        }
        static List <string> GetListFromSettings(TwoFilesConfiguration configuration, string configurationKey, List <string> allowedItems, List <string> defaultItems)
        {
            var selectedItems = new List <string>();
            var parameter     = configuration.GetStringValue(configurationKey);

            if (!string.IsNullOrEmpty(parameter))
            {
                var items = GetParameterValueAsList(parameter);
                if (items.Count == 0)
                {
                    selectedItems.AddRange(defaultItems);
                }
                else
                {
                    foreach (var item in items)
                    {
                        if (allowedItems.Contains(item, StringComparer.OrdinalIgnoreCase))
                        {
                            selectedItems.Add(item);
                        }
                    }
                }
            }
            else
            {
                selectedItems.AddRange(defaultItems);
            }

            return(selectedItems);
        }
 static List <string> GetSelectedMessageCounts(TwoFilesConfiguration configuration)
 {
     return(GetListFromSettings(configuration, ConfigurationParameters.SelectedMessageCountsParameter, messageCounts,
                                new List <string> {
         Constants.ActiveMessages, Constants.DeadLetterMessages, Constants.TransferDeadLetterMessages
     }
                                ));
 }
Пример #6
0
        public static Dictionary <string, ServiceBusNamespace> GetMessagingNamespaces
            (TwoFilesConfiguration configuration, WriteToLogDelegate writeToLog)
        {
            var hashtable = configuration.GetHashtableFromSection(ServiceBusNamespaces);

            if (hashtable == null || hashtable.Count == 0)
            {
                writeToLog(ServiceBusNamespacesNotConfigured);
            }

            var serviceBusNamespaces = new Dictionary <string, ServiceBusNamespace>();

            if (hashtable == null)
            {
                return(serviceBusNamespaces);
            }

            var e = hashtable.GetEnumerator();

            while (e.MoveNext())
            {
                if (!(e.Key is string) || !(e.Value is string))
                {
                    continue;
                }

                var serviceBusNamespace = ServiceBusNamespace.GetServiceBusNamespace((string)e.Key, (string)e.Value, writeToLog);

                if (serviceBusNamespace != null)
                {
                    serviceBusNamespaces.Add((string)e.Key, serviceBusNamespace);
                }
            }

            var microsoftServiceBusConnectionString =
                configuration.GetStringValue(ConfigurationParameters.MicrosoftServiceBusConnectionString);

            if (!string.IsNullOrWhiteSpace(microsoftServiceBusConnectionString))
            {
                var serviceBusNamespace = ServiceBusNamespace.GetServiceBusNamespace(ConfigurationParameters.MicrosoftServiceBusConnectionString, microsoftServiceBusConnectionString, writeToLog);

                if (serviceBusNamespace != null)
                {
                    serviceBusNamespaces.
                    Add(ConfigurationParameters.MicrosoftServiceBusConnectionString, serviceBusNamespace);
                }
            }

            return(serviceBusNamespaces);
        }
 static List <string> GetSelectedEntities(TwoFilesConfiguration configuration)
 {
     return(GetListFromSettings(configuration, ConfigurationParameters.SelectedEntitiesParameter, entities, entities));
 }
        public static void RemoveServiceBusNamespace(ConfigFileUse configFileUse, string key, WriteToLogDelegate writeToLog)
        {
            var configuration = TwoFilesConfiguration.Create(configFileUse, writeToLog);

            configuration.RemoveEntryFromDictionarySection(SERVICEBUS_SECTION_NAME, key, writeToLog);
        }
        public static void AddServiceBusNamespace(ConfigFileUse configFileUse, string key, string value, WriteToLogDelegate writeToLog)
        {
            var configuration = TwoFilesConfiguration.Create(configFileUse, writeToLog);

            configuration.AddEntryToDictionarySection(SERVICEBUS_SECTION_NAME, key, value);
        }
        static MainSettings GetMainSettingsUsingConfiguration(TwoFilesConfiguration configuration,
                                                              MainSettings currentSettings, WriteToLogDelegate writeToLog)
        {
            var resultProperties = new MainSettings();

            resultProperties.LogFontSize = configuration.GetDecimalValue(ConfigurationParameters.LogFontSize,
                                                                         currentSettings.LogFontSize, writeToLog);

            resultProperties.TreeViewFontSize = configuration.GetDecimalValue(ConfigurationParameters.TreeViewFontSize,
                                                                              currentSettings.TreeViewFontSize, writeToLog);

            resultProperties.RetryCount = configuration.GetIntValue(ConfigurationParameters.RetryCountParameter,
                                                                    currentSettings.RetryCount, writeToLog);

            resultProperties.RetryTimeout = configuration.GetIntValue(ConfigurationParameters.RetryTimeoutParameter,
                                                                      currentSettings.RetryTimeout, writeToLog);

            resultProperties.ReceiveTimeout = configuration.GetIntValue(ConfigurationParameters.ReceiveTimeoutParameter,
                                                                        currentSettings.ReceiveTimeout, writeToLog);

            resultProperties.ServerTimeout = configuration.GetIntValue(ConfigurationParameters.ServerTimeoutParameter,
                                                                       currentSettings.ServerTimeout, writeToLog);

            resultProperties.PrefetchCount = configuration.GetIntValue(ConfigurationParameters.PrefetchCountParameter,
                                                                       currentSettings.PrefetchCount, writeToLog);

            resultProperties.TopCount = configuration.GetIntValue(ConfigurationParameters.TopParameter,
                                                                  currentSettings.TopCount, writeToLog);

            resultProperties.SenderThinkTime = configuration.GetIntValue
                                                   (ConfigurationParameters.SenderThinkTimeParameter, currentSettings.SenderThinkTime, writeToLog);

            resultProperties.ReceiverThinkTime = configuration.GetIntValue
                                                     (ConfigurationParameters.ReceiverThinkTimeParameter, currentSettings.ReceiverThinkTime, writeToLog);

            resultProperties.MonitorRefreshInterval = configuration.GetIntValue
                                                          (ConfigurationParameters.MonitorRefreshIntervalParameter,
                                                          currentSettings.MonitorRefreshInterval, writeToLog);

            resultProperties.ShowMessageCount = configuration.GetBoolValue
                                                    (ConfigurationParameters.ShowMessageCountParameter,
                                                    currentSettings.ShowMessageCount, writeToLog);

            resultProperties.UseAscii = configuration.GetBoolValue(ConfigurationParameters.UseAsciiParameter,
                                                                   currentSettings.UseAscii, writeToLog);

            resultProperties.SaveMessageToFile = configuration.GetBoolValue
                                                     (ConfigurationParameters.SaveMessageToFileParameter, currentSettings.SaveMessageToFile, writeToLog);

            resultProperties.SavePropertiesToFile = configuration.GetBoolValue
                                                        (ConfigurationParameters.SavePropertiesToFileParameter,
                                                        currentSettings.SavePropertiesToFile, writeToLog);

            resultProperties.SaveCheckpointsToFile = configuration.GetBoolValue
                                                         (ConfigurationParameters.SaveCheckpointsToFileParameter,
                                                         currentSettings.SaveCheckpointsToFile, writeToLog);

            resultProperties.Label = configuration.GetStringValue(ConfigurationParameters.LabelParameter,
                                                                  MainSettings.DefaultLabel);

            MessageAndPropertiesHelper.GetMessageTextAndFile(configuration,
                                                             out string messageText, out string messageFile);
            resultProperties.MessageText = messageText;
            resultProperties.MessageFile = messageFile;

            resultProperties.MessageContentType = configuration.GetStringValue(ConfigurationParameters.MessageContentTypeParameter,
                                                                               string.Empty);

            resultProperties.SelectedEntities      = ConfigurationHelper.GetSelectedEntities(configuration);
            resultProperties.SelectedMessageCounts = ConfigurationHelper.GetSelectedMessageCounts(configuration);

            resultProperties.MessageBodyType = configuration.GetStringValue(ConfigurationParameters.MessageBodyType,
                                                                            BodyType.Stream.ToString());

            resultProperties.ConnectivityMode = configuration.GetEnumValue
                                                    (ConfigurationParameters.ConnectivityMode, currentSettings.ConnectivityMode, writeToLog);
            resultProperties.UseAmqpWebSockets = configuration.GetBoolValue
                                                     (ConfigurationParameters.UseAmqpWebSockets, currentSettings.UseAmqpWebSockets, writeToLog);
            resultProperties.EncodingType = configuration.GetEnumValue
                                                (ConfigurationParameters.Encoding, currentSettings.EncodingType, writeToLog);

            resultProperties.DisableAccidentalDeletionPrevention = configuration.GetBoolValue
                                                                       (ConfigurationParameters.DisableAccidentalDeletionPrevention, currentSettings.DisableAccidentalDeletionPrevention, writeToLog);

            resultProperties.ProxyOverrideDefault       = configuration.GetBoolValue(ConfigurationParameters.ProxyOverrideDefault, currentSettings.ProxyOverrideDefault, writeToLog);
            resultProperties.ProxyUseDefaultCredentials = configuration.GetBoolValue(ConfigurationParameters.ProxyUseDefaultCredentials, currentSettings.ProxyUseDefaultCredentials, writeToLog);
            resultProperties.ProxyBypassOnLocal         = configuration.GetBoolValue(ConfigurationParameters.ProxyBypassOnLocal, currentSettings.ProxyBypassOnLocal, writeToLog);
            resultProperties.ProxyAddress    = configuration.GetStringValue(ConfigurationParameters.ProxyAddress, string.Empty);
            resultProperties.ProxyBypassList = configuration.GetStringValue(ConfigurationParameters.ProxyBypassList, string.Empty);
            resultProperties.ProxyUserName   = configuration.GetStringValue(ConfigurationParameters.ProxyUserName, string.Empty);
            resultProperties.ProxyPassword   = configuration.GetStringValue(ConfigurationParameters.ProxyPassword, string.Empty);
            resultProperties.NodesColors     = NodeColorInfo.ParseAll(configuration.GetStringValue(ConfigurationParameters.NodesColors, string.Empty));

            return(resultProperties);
        }
Пример #11
0
 public static void SaveConnectionString(TwoFilesConfiguration configuration,
                                         string key, string value, WriteToLogDelegate staticWriteToLog)
 {
     configuration.AddEntryToDictionarySection(ServiceBusNamespaces, key, value);
 }