private void GetGroups() { DataTable tblGroups = ExecuteCommand("group lookup_groups"); FabricGroups.Clear(); foreach (DataRow row in tblGroups.Rows) { FabricGroup group = new FabricGroup() { GroupId = row["group_id"] as string, Description = row["description"] as string, FailureDetector = row["failure_detector"] as int?, MasterUuid = row["master_uuid"] as string }; FabricGroups.Add(group.GroupId, group); DataTable tblServers = ExecuteCommand("group lookup_servers", group.GroupId); foreach (DataRow rowSrv in tblServers.Rows) { string[] addressSrv = (rowSrv["address"] as string).Split(':'); string host = addressSrv[0]; int port = int.Parse(addressSrv[1]); FabricServer server = new FabricServer( new Guid(rowSrv["server_uuid"] as string), group.GroupId, host, port, (FabricServerModeEnum)Enum.Parse(typeof(FabricServerModeEnum), rowSrv["mode"] as string, true), (FabricServerStatusEnum)Enum.Parse(typeof(FabricServerStatusEnum), rowSrv["status"] as string, true), float.Parse(rowSrv["weight"] as string), username, password); group.Servers.Add(server); } } }