/// <summary> /// Obtiene una conexión /// </summary> private Model.Connections.FtpConnectionModel SearchConnection(string name) { SourceEditor.Model.Messages.MessageGetProjects messageProjects; // Crea el mensaje de obtención de proyectos messageProjects = new SourceEditor.Model.Messages.MessageGetProjects(FtpManagerViewModel.Instance.SourceEditorPluginManager.Definition); // Lanza el mensaje para obtener los nombres de los archivos de proyecto abiertos FtpManagerViewModel.Instance.HostController.Messenger.Send(FtpManagerViewModel.Instance.ModuleName, "GetProjects", "GetProjects", messageProjects); // Obtiene los archivos de proyecto foreach (string project in messageProjects.ProjectFiles) { System.Collections.Generic.List <string> files = LibCommonHelper.Files.HelperFiles.ListRecursive(System.IO.Path.GetDirectoryName(project)); foreach (string fileName in files) { if (fileName.EndsWith($".{SourceEditorPluginManager.ExtensionConnection}", StringComparison.CurrentCultureIgnoreCase)) { Model.Connections.FtpConnectionModel ftpConnection = new Application.Bussiness.FtpConnectionBussiness().Load(fileName); if (ftpConnection.Name.EqualsIgnoreCase(name)) { return(ftpConnection); } } } } // Si ha llegado hasta aquí es porque no ha encontrado la conexión return(null); }
/// <summary> /// Abre la conexión a un servidor Ftp /// </summary> private void OpenConnection(FileModel file) { if (file == null) { FtpManagerViewModel.Instance.ControllerWindow.ShowMessage("Seleccione la conexión que desea abrir"); } else if (file.Extension.EqualsIgnoreCase(ExtensionConnection)) { Model.Connections.FtpConnectionModel ftpConnection = new Application.Bussiness.FtpConnectionBussiness().Load(file.FullFileName); if (ftpConnection.Name.IsEmpty()) { FtpManagerViewModel.Instance.ControllerWindow.ShowMessage("No se pueden cargar los datos de la conexión"); } else { FtpManagerViewModel.Instance.ViewsController.OpenFormFtp(ftpConnection); } } }