From 649f864236ab5bb398b46235a81dcf781964abce Mon Sep 17 00:00:00 2001 From: David Sparer Date: Wed, 27 Jul 2016 12:11:17 -0600 Subject: [PATCH] Extracted some methods from the sql connection loader --- .../Connections/SqlConnectionsLoader.cs | 170 +++++++++--------- 1 file changed, 86 insertions(+), 84 deletions(-) diff --git a/mRemoteV1/Config/Connections/SqlConnectionsLoader.cs b/mRemoteV1/Config/Connections/SqlConnectionsLoader.cs index 9227e03d..b6717704 100644 --- a/mRemoteV1/Config/Connections/SqlConnectionsLoader.cs +++ b/mRemoteV1/Config/Connections/SqlConnectionsLoader.cs @@ -170,88 +170,12 @@ namespace mRemoteNG.Config.Connections while (_sqlDataReader.Read()) { var tNode = new TreeNode(Convert.ToString(_sqlDataReader["Name"])); - switch (ConnectionTreeNode.GetNodeTypeFromString(Convert.ToString(_sqlDataReader["Type"]))) - { - case TreeNodeType.Connection: - { - var conI = GetConnectionInfoFromSql(); - conI.TreeNode = tNode; - ConnectionList.Add(conI); - tNode.Tag = conI; + var nodeType = ConnectionTreeNode.GetNodeTypeFromString(Convert.ToString(_sqlDataReader["Type"])); - if (DatabaseUpdate) - { - var prevCon = PreviousConnectionList.FindByConstantID(conI.ConstantID); - if (prevCon != null) - { - foreach (ProtocolBase prot in prevCon.OpenConnections) - { - prot.InterfaceControl.Info = conI; - conI.OpenConnections.Add(prot); - } - - if (conI.OpenConnections.Count > 0) - { - tNode.ImageIndex = (int)TreeImageType.ConnectionOpen; - tNode.SelectedImageIndex = (int)TreeImageType.ConnectionOpen; - } - else - { - tNode.ImageIndex = (int)TreeImageType.ConnectionClosed; - tNode.SelectedImageIndex = (int)TreeImageType.ConnectionClosed; - } - } - else - { - tNode.ImageIndex = (int)TreeImageType.ConnectionClosed; - tNode.SelectedImageIndex = (int)TreeImageType.ConnectionClosed; - } - - if (conI.ConstantID == PreviousSelected) - _selectedTreeNode = tNode; - } - else - { - tNode.ImageIndex = (int)TreeImageType.ConnectionClosed; - tNode.SelectedImageIndex = (int)TreeImageType.ConnectionClosed; - } - } - break; - case TreeNodeType.Container: - { - var contI = new ContainerInfo - { - TreeNode = tNode, - Name = Convert.ToString(_sqlDataReader["Name"]) - }; - - var conI = GetConnectionInfoFromSql(); - conI.Parent = contI; - conI.IsContainer = true; - contI.ConnectionInfo = conI; - - if (DatabaseUpdate) - { - var prevCont = PreviousContainerList.FindByConstantID(conI.ConstantID); - if (prevCont != null) - contI.IsExpanded = prevCont.IsExpanded; - - if (conI.ConstantID == PreviousSelected) - _selectedTreeNode = tNode; - } - else - { - contI.IsExpanded = Convert.ToBoolean(_sqlDataReader["Expanded"]); - } - - ContainerList.Add(contI); - ConnectionList.Add(conI); - tNode.Tag = contI; - tNode.ImageIndex = (int)TreeImageType.Container; - tNode.SelectedImageIndex = (int)TreeImageType.Container; - } - break; - } + if (nodeType == TreeNodeType.Connection) + AddConnectionToList(tNode); + else if (nodeType == TreeNodeType.Container) + AddContainerToList(tNode); var parentId = Convert.ToString(_sqlDataReader["ParentID"].ToString().Trim()); if (string.IsNullOrEmpty(parentId) || parentId == "0") @@ -268,10 +192,10 @@ namespace mRemoteNG.Config.Connections switch (ConnectionTreeNode.GetNodeType(tNode)) { case TreeNodeType.Connection: - (tNode.Tag as ConnectionInfo).Parent = (ContainerInfo)pNode.Tag; + ((ConnectionInfo) tNode.Tag).Parent = (ContainerInfo)pNode.Tag; break; case TreeNodeType.Container: - (tNode.Tag as ContainerInfo).Parent = (ContainerInfo)pNode.Tag; + ((ContainerInfo) tNode.Tag).Parent = (ContainerInfo)pNode.Tag; break; } } @@ -288,6 +212,85 @@ namespace mRemoteNG.Config.Connections } } + private void AddConnectionToList(TreeNode tNode) + { + var conI = GetConnectionInfoFromSql(); + conI.TreeNode = tNode; + ConnectionList.Add(conI); + tNode.Tag = conI; + + if (DatabaseUpdate) + { + var prevCon = PreviousConnectionList.FindByConstantID(conI.ConstantID); + if (prevCon != null) + { + foreach (ProtocolBase prot in prevCon.OpenConnections) + { + prot.InterfaceControl.Info = conI; + conI.OpenConnections.Add(prot); + } + + if (conI.OpenConnections.Count > 0) + { + tNode.ImageIndex = (int) TreeImageType.ConnectionOpen; + tNode.SelectedImageIndex = (int) TreeImageType.ConnectionOpen; + } + else + { + tNode.ImageIndex = (int) TreeImageType.ConnectionClosed; + tNode.SelectedImageIndex = (int) TreeImageType.ConnectionClosed; + } + } + else + { + tNode.ImageIndex = (int) TreeImageType.ConnectionClosed; + tNode.SelectedImageIndex = (int) TreeImageType.ConnectionClosed; + } + + if (conI.ConstantID == PreviousSelected) + _selectedTreeNode = tNode; + } + else + { + tNode.ImageIndex = (int) TreeImageType.ConnectionClosed; + tNode.SelectedImageIndex = (int) TreeImageType.ConnectionClosed; + } + } + + private void AddContainerToList(TreeNode tNode) + { + var contI = new ContainerInfo + { + TreeNode = tNode, + Name = Convert.ToString(_sqlDataReader["Name"]) + }; + + var conI = GetConnectionInfoFromSql(); + conI.Parent = contI; + conI.IsContainer = true; + contI.ConnectionInfo = conI; + + if (DatabaseUpdate) + { + var prevCont = PreviousContainerList.FindByConstantID(conI.ConstantID); + if (prevCont != null) + contI.IsExpanded = prevCont.IsExpanded; + + if (conI.ConstantID == PreviousSelected) + _selectedTreeNode = tNode; + } + else + { + contI.IsExpanded = Convert.ToBoolean(_sqlDataReader["Expanded"]); + } + + ContainerList.Add(contI); + ConnectionList.Add(conI); + tNode.Tag = contI; + tNode.ImageIndex = (int)TreeImageType.Container; + tNode.SelectedImageIndex = (int)TreeImageType.Container; + } + private ConnectionInfo GetConnectionInfoFromSql() { try @@ -470,7 +473,6 @@ namespace mRemoteNG.Config.Connections Windows.treeForm.tvConnections.SelectedNode = treeNode; } - private bool Authenticate(string value, bool compareToOriginalValue, RootNodeInfo rootInfo = null) { var passwordName = "";