public void Build()
        {
            ConnectionStringsSectionNode node = hierarchy.FindNodeByType(typeof(ConnectionStringsSectionNode)) as ConnectionStringsSectionNode;
            if (null == node)
            {
                LogError(hierarchy.RootNode, Resources.ExceptionMissingConnectionStrings);
                return;
            }

            for (int index = 0; index < oracleConnectionSettings.OracleConnectionsData.Count; ++index)
            {
                OracleConnectionData oracleConnection = oracleConnectionSettings.OracleConnectionsData.Get(index);
                ConnectionStringSettingsNode connectionStringNode = hierarchy.FindNodeByName(node, oracleConnection.Name) as ConnectionStringSettingsNode;
                if (null == connectionStringNode)
                {
                    LogError(node, string.Format(CultureInfo.CurrentUICulture, Resources.ExceptionConnectionStringMissing, oracleConnection.Name));
                    continue;
                }
                OracleConnectionElementNode oracleElementNode = new OracleConnectionElementNode();
                foreach (OraclePackageData packageData in oracleConnection.Packages)
                {
                    oracleElementNode.AddNode(new OraclePackageElementNode(packageData));
                }
                connectionStringNode.AddNode(oracleElementNode);
            }
        }
        public void Build()
        {
            ConnectionStringsSectionNode node = hierarchy.FindNodeByType(typeof(ConnectionStringsSectionNode)) as ConnectionStringsSectionNode;

            if (null == node)
            {
                LogError(hierarchy.RootNode, Resources.ExceptionMissingConnectionStrings);
                return;
            }

            for (int index = 0; index < oracleConnectionSettings.OracleConnectionsData.Count; ++index)
            {
                OracleConnectionData         oracleConnection     = oracleConnectionSettings.OracleConnectionsData.Get(index);
                ConnectionStringSettingsNode connectionStringNode = hierarchy.FindNodeByName(node, oracleConnection.Name) as ConnectionStringSettingsNode;
                if (null == connectionStringNode)
                {
                    LogError(node, string.Format(CultureInfo.CurrentUICulture, Resources.ExceptionConnectionStringMissing, oracleConnection.Name));
                    continue;
                }
                OracleConnectionElementNode oracleElementNode = new OracleConnectionElementNode();
                foreach (OraclePackageData packageData in oracleConnection.Packages)
                {
                    oracleElementNode.AddNode(new OraclePackageElementNode(packageData));
                }
                connectionStringNode.AddNode(oracleElementNode);
            }
        }
        protected override void OnExecuted(EventArgs e)
        {
            base.OnExecuted(e);
            OracleConnectionElementNode node = ChildNode as OracleConnectionElementNode;

            Debug.Assert(null != node, "Expected OracleConnectionElementNode");
            node.AddNode(new OraclePackageElementNode());
        }