summaryrefslogtreecommitdiff
path: root/qpid/dotnet/client-010/test/Helpers/ConfigHelpers.cs
blob: 92374b5c41b6a344a17b4155392a7ea32bdd24b7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
using System;
using System.Collections.Generic;
using System.IO;
using System.Text;
using System.Xml;
using log4net.Config;

namespace test.Helpers
{
    class ConfigHelpers
    {
        public static Dictionary<string, string> LoadConfig()
        {
            Dictionary<string, string> properties = new Dictionary<string, string>();

            XmlConfigurator.Configure(new FileInfo("/log.xml"));
            // populate default properties
            properties.Add("Username", "guest");
            properties.Add("Password", "guest");
            properties.Add("Host", "localhost");
            properties.Add("Port", "5672");
            properties.Add("VirtualHost", "test");
            //Read the test config file  
            XmlTextReader reader = new XmlTextReader(Environment.CurrentDirectory + "/Qpid Test.dll.config");
            while (reader.Read())
            {
                // if node type is an element
                if (reader.NodeType == XmlNodeType.Element && reader.Name.Equals("add"))
                {
                    if (properties.ContainsKey(reader.GetAttribute("key")))
                    {
                        properties[reader.GetAttribute("key")] = reader.GetAttribute("value");
                    }
                    else
                    {
                        properties.Add(reader.GetAttribute("key"), reader.GetAttribute("value"));
                    }
                }
            }

            return properties;
        }
    }
}