public FileTransferWindow(IFileTransfer transfer) : base("FileTransferWindow") { this.transfer = transfer; fileNameLabel.Text = transfer.File.Name; fileSizeLabel.Text = Common.Utils.FormatBytes(transfer.File.Size); peersTreeView.AppendColumn("Node", new CellRendererText(), new TreeCellDataFunc(peersTreeView_NodeFunc)); peersTreeView.AppendColumn("Download Speed", new CellRendererText(), new TreeCellDataFunc(peersTreeView_DownloadSpeedFunc)); peersTreeView.AppendColumn("Upload Speed", new CellRendererText(), new TreeCellDataFunc(peersTreeView_UploadSpeedFunc)); peersTreeView.AppendColumn("Progress", new CellRendererProgress(), new TreeCellDataFunc(peersTreeView_ProgressFunc)); peersTreeView.AppendColumn("Status", new CellRendererText(), new TreeCellDataFunc(peersTreeView_StatusFunc)); peerListStore = new ListStore(typeof(IFileTransferPeer)); peersTreeView.Model = peerListStore; base.Closed += base_Closed; if (transfer.Status == FileTransferStatus.Paused) { pauseButton.Active = true; } pauseButton.Toggled += pauseButton_Toggled; }
/// <summary> /// 上传文件,上传文件的进度只能通过时时获取服务端Read的进度 /// </summary> /// <param name="filepath">文件本地路径</param> /// <returns>上传成功后返回的文件名</returns> public static string UpLoadFile(string filepath, Action <int> action) { ChannelFactory <IFileTransfer> mfileChannelFactory = null; IFileTransfer fileHandlerService = null; try { FileInfo finfo = new FileInfo(filepath); if (finfo.Exists == false) { throw new Exception("文件不存在!"); } mfileChannelFactory = new ChannelFactory <IFileTransfer>("fileendpoint"); fileHandlerService = mfileChannelFactory.CreateChannel(); UpFile uf = new UpFile(); if (AppGlobal.cache.Contains("WCFClientID")) { uf.clientId = AppGlobal.cache.GetData("WCFClientID").ToString(); } uf.UpKey = Guid.NewGuid().ToString(); uf.FileExt = finfo.Extension; uf.FileName = finfo.Name; uf.FileSize = finfo.Length; uf.FileStream = finfo.OpenRead(); if (action != null) { getUpLoadFileProgress(uf.UpKey, action);//获取上传进度条 } UpFileResult result = fileHandlerService.UpLoadFile(uf); //mfileChannelFactory.Close();//关闭会话 if (result.IsSuccess) { return(result.Message); } else { throw new Exception("上传文件失败!"); } } catch (Exception e) { throw new Exception(e.Message + "\n上传文件失败!"); } finally { if (fileHandlerService != null) { (fileHandlerService as IContextChannel).Close(); } if (mfileChannelFactory != null) { mfileChannelFactory.Close(); } } }
public FileTransferWindow(IFileTransfer transfer) : base("FileTransferWindow") { this.transfer = transfer; fileNameLabel.Text = transfer.File.Name; fileSizeLabel.Text = FileFind.Common.FormatBytes(transfer.File.Size); peersTreeView.AppendColumn("Node", new CellRendererText(), new TreeCellDataFunc(peersTreeView_NodeFunc)); peersTreeView.AppendColumn("Download Speed", new CellRendererText(), new TreeCellDataFunc(peersTreeView_DownloadSpeedFunc)); peersTreeView.AppendColumn("Upload Speed", new CellRendererText(), new TreeCellDataFunc(peersTreeView_UploadSpeedFunc)); peersTreeView.AppendColumn("Progress", new CellRendererProgress(), new TreeCellDataFunc(peersTreeView_ProgressFunc)); peersTreeView.AppendColumn("Status", new CellRendererText(), new TreeCellDataFunc(peersTreeView_StatusFunc)); peerListStore = new ListStore(typeof(IFileTransferPeer)); peersTreeView.Model = peerListStore; base.Closed += base_Closed; if (transfer.Status == FileTransferStatus.Paused) { pauseButton.Active = true; } pauseButton.Toggled += pauseButton_Toggled; }
private void MakeProxySubStreaming(string EndpoindAddress, object callbackinstance) { NetTcpBinding netTcpbinding = new NetTcpBinding(); netTcpbinding.MaxReceivedMessageSize = int.MaxValue; netTcpbinding.MaxBufferSize = int.MaxValue; EndpointAddress endpointAddress = new EndpointAddress(EndpoindAddress); netTcpbinding.TransferMode = TransferMode.Streamed; netTcpbinding.MaxBufferSize = 2147483647; netTcpbinding.MaxReceivedMessageSize = 2147483647; netTcpbinding.Security.Mode = SecurityMode.None; netTcpbinding.ReaderQuotas.MaxStringContentLength = 2147483647; netTcpbinding.ReaderQuotas.MaxBytesPerRead = 2147483647; netTcpbinding.ReaderQuotas.MaxArrayLength = 2147483647; InstanceContext context = new InstanceContext(callbackinstance); m_channelFactory = new ChannelFactory <IFileTransfer>(netTcpbinding, endpointAddress); _proxySubStreaming = m_channelFactory.CreateChannel(); keepAlive(); }
private void OnTransferStateChanged(IFileTransfer ft) { if (TransferStateChanged != null) { TransferStateChanged(ft); } }
public TransfersMenu(TreeView transfersList, IFileTransfer transfer) { Glade.XML glade = new Glade.XML(null, "FileFind.Meshwork.GtkClient.meshwork.glade", "TransfersMenu", null); glade.Autoconnect(this); this.menu = (Gtk.Menu) glade.GetWidget("TransfersMenu"); this.transfersList = transfersList; this.transfer = transfer; if (transfer != null) { mnuCancelAndRemoveTransfer.Visible = true; mnuShowTransferDetails.Sensitive = true; mnuClearFinishedFailedTransfers.Sensitive = true; if (transfer.Status == FileTransferStatus.Paused) { mnuPauseTransfer.Visible = false; mnuResumeTransfer.Visible = true; mnuResumeTransfer.Sensitive = true; mnuCancelTransfer.Sensitive = true; } else if (transfer.Status == FileTransferStatus.Canceled || transfer.Status == FileTransferStatus.Completed) { mnuPauseTransfer.Sensitive = false; mnuResumeTransfer.Visible = false; mnuCancelTransfer.Sensitive = false; } } else { mnuCancelAndRemoveTransfer.Visible = false; mnuShowTransferDetails.Sensitive = false; mnuPauseTransfer.Sensitive = false; mnuResumeTransfer.Visible = false; mnuCancelTransfer.Sensitive = false; } }
public FileTransferUiProxy(IFileTransfer ft) { View = new FileTransferViewItem(Path.GetFileName(ft.Name), ft.BytesTotal, ft.Direction); Desc = ft; switch (ft.Direction) { case FileTransferDirection.In: // waiting View.Accept += ViewAccept; View.Decline += ViewDecline; whBound = true; // receiving View.Cancel += ViewCancel; // received View.Open += ViewOpen; View.ShowInFolder += ViewShowInFolder; View.Conceal += ViewConceal; break; case FileTransferDirection.Out: View.Cancel += ViewCancel; View.Conceal += ViewConceal; break; } lastUpdate = DateTime.Now; }
public ReleaseManager(FileTransfer fileTransfer) { this.fileTransfer = fileTransfer; // setting object loads settings from file or displays form Settings = new Settings(); versions = new XmlVersions(); try { // create temp folder (if not exists) if (!Directory.Exists(localPath)) Directory.CreateDirectory(localPath); Valid = true; } catch (Exception e) { ErrorLog.Add(this, e.Message); // fire error event FireError(Strings.UnableToCreateLocalDirectory); } }
private void manager_FileTransferRemoved(object sender, FileTransferEventArgs e) { try { // Remove transfer from list Gtk.TreeIter iter; transferListStore.GetIterFirst(out iter); if (transferListStore.IterIsValid(iter)) { do { IFileTransfer currentItem = (IFileTransfer)transferListStore.GetValue(iter, 0); if (currentItem == e.Transfer) { transferListStore.Remove(ref iter); return; } } while (transferListStore.IterNext(ref iter)); } Gui.MainWindow.RefreshCounts(); } catch (Exception ex) { Core.LoggingService.LogError(ex); Gui.ShowErrorDialog(ex.ToString(), Gui.MainWindow.Window); } }
public ReleaseManager(FileTransfer fileTransfer) { this.fileTransfer = fileTransfer; // setting object loads settings from file or displays form Settings = new Settings(); versions = new XmlVersions(); try { // create temp folder (if not exists) if (!Directory.Exists(localPath)) { Directory.CreateDirectory(localPath); } Valid = true; } catch (Exception e) { ErrorLog.Add(this, e.Message); // fire error event FireError(Strings.UnableToCreateLocalDirectory); } }
private IFileTransfer SetCredentials(ActivityContext context, IFileTransfer transporter) { if (UserName.Get(context).ContainsCharacters() && Password.Get(context).ContainsCharacters()) { transporter.SetUserNameAndPassword(UserName.Get(context), Password.Get(context)); } return(transporter); }
private void LoadServices() { _sb.Options = ServiceRequestOptions.NotifyVerbosely; _fileClient = _sb.FileTransferV2(); _bulkData = _sb.BulkDataV2(); _docClient = _sb.DocumentV2(); _ctClient = _sb.ContentTypeV2(); }
private void RaiseTransferRemoved(IFileTransfer transfer) { LoggingService.LogInfo("Transfer removed: {0}", transfer.File.Name); if (FileTransferRemoved != null) { FileTransferRemoved(transfer); } }
public Message CreateRequestFileMessage(Node node, IFileTransfer transfer) { var remoteFile = (RemoteFile)transfer.File; Message p = new Message(network, MessageType.RequestFile); p.To = node.NodeID; p.Content = new RequestFileInfo(remoteFile.RemoteFullPath, transfer.Id); return(p); }
private void RaiseNewTransfer(IFileTransfer transfer) { LoggingService.LogInfo("Transfer added: {0}", transfer.File.Name); if (NewFileTransfer != null) { NewFileTransfer(transfer); } }
public FTestFTP() { InitializeComponent(); string ftpUrl = @"ftp://192.168.0.102/"; string ftpUserName = string.Empty; string ftpPassword = string.Empty; this._ftp = new FtpFileTransfer(ftpUrl, ftpUserName, ftpPassword); }
public FilesManipulationForm(IFileTransfer fileTransfer) { InitializeComponent(); _fileTransfer = fileTransfer; _settings = new Settings(); SignProgressEvents(); FormatTransferType(); }
public static byte[] SerializaObjetoXMLByteArray(IFileTransfer Objeto) { XmlSerializer x = new XmlSerializer(Objeto.GetType()); MemoryStream St = new MemoryStream(); x.Serialize(St, Objeto); St.Flush(); byte[] ArrayByte = St.ToArray(); return(ArrayByte); }
/// <summary> /// Отправка файла на сервер /// </summary> /// <param name="settingName">название настройки</param> /// <param name="Continue">продолжить с момента разрыва</param> public void UploadFileToServer(string settingName) { Logger logger = LogManager.GetCurrentClassLogger(); logger.Debug(settingName + ": Начало отправки файла на сервер"); var baseConfig = GetBaseConfig(settingName); ChannelFactory <IFileTransfer> factory; SetCurrentStatus(settingName, Job.SendFileToServer, JobStatus.Process); OnExchangeProcess(GetCurrentStatus(settingName)); Status remoteStatus = RemoteGetCurrentStatus(settingName); if (remoteStatus.jobStatus == JobStatus.Error && remoteStatus.description.Contains("Не найдена настройка")) { throw new Exception(remoteStatus.description); } //закорем поток после передачи using (FileData sendData = new FileData()){ sendData.settingName = settingName; sendData.fileByteStream = GetCompressFileStream(settingName); //попробуем загрузить из файла конфигурации try{ factory = new ChannelFactory <IFileTransfer>("IFileTransfer"); } catch { //если нет то создаем вручную NetTcpBinding streamBinding = new NetTcpBinding(SecurityMode.None); streamBinding.CloseTimeout = TimeSpan.FromHours(0.5); streamBinding.OpenTimeout = TimeSpan.FromHours(0.5); streamBinding.SendTimeout = TimeSpan.FromHours(13); streamBinding.TransferMode = TransferMode.Buffered; streamBinding.MaxReceivedMessageSize = 429496729; EndpointAddress endpointAdress = new EndpointAddress(config.HostSetting.Protocol + @"://" + baseConfig.ServerAdress + "/FileTransfer"); factory = new ChannelFactory <IFileTransfer>(streamBinding, endpointAdress); } IFileTransfer channel = factory.CreateChannel(); if (remoteStatus.currentPosInFile > 0) { sendData.fileByteStream.Seek(remoteStatus.currentPosInFile, SeekOrigin.Begin); } channel.UploadFile(sendData); factory.Close(); } logger.Debug(settingName + ": Конец отправки файла на сервер"); SetCurrentStatus(settingName, Job.SendFileToServer, JobStatus.Complite, "", 0); OnExchangeProcess(GetCurrentStatus(settingName)); }
public static IFileTransfer RetornaObjetoFT(string objeto) { Type Tipo = typeof(FileTransfer); XmlSerializer xml = new XmlSerializer(Tipo); StringReader SR = new StringReader(objeto); IFileTransfer oFT = (IFileTransfer)xml.Deserialize(SR); SR.Close(); SR.Dispose(); return(oFT); }
public void RemoveTransfer(IFileTransfer transfer) { if (!transfers.Contains(transfer)) { throw new ArgumentException("Unknown transfer"); } transfer.Cancel(); transfers.Remove(transfer); RaiseTransferRemoved(transfer); }
public void RemoveFileTransfer(IFileTransfer transfer) { if (transfer is BitTorrentFileTransfer) { var manager = ((BitTorrentFileTransfer)transfer).Manager; if (manager != null) { this.loggingService.LogDebug("Removing torrent from engine!"); this.engine.Unregister(manager); } } }
private void Core_FileTransferRemoved(IFileTransfer transfer) { if (transfer is BitTorrentFileTransfer) { var manager = ((BitTorrentFileTransfer)transfer).Manager; if (manager != null) { LoggingService.LogDebug("Removing torrent from engine!"); engine.Unregister(manager); } } }
public static string SerializaObjetoXML(IFileTransfer Objeto) { XmlSerializer x = new XmlSerializer(Objeto.GetType()); MemoryStream St = new MemoryStream(); x.Serialize(St, Objeto); St.Flush(); byte[] ArrayByte = St.ToArray(); string retorno = System.Text.Encoding.ASCII.GetString(ArrayByte); return(retorno); }
public void RemoveTransfer(IFileTransfer transfer) { if (!transfers.Contains(transfer)) { throw new ArgumentException("Unknown transfer"); } transfer.Cancel(); transfers.Remove(transfer); RaiseTransferRemoved(transfer); }
private void TransferIconFunc(TreeViewColumn column, CellRenderer cell, TreeModel model, TreeIter iter) { IFileTransfer transfer = (IFileTransfer)model.GetValue(iter, 0); if (transfer.Direction == FileTransferDirection.Download) { ((CellRendererPixbuf)cell).Pixbuf = downloadImage; } else { ((CellRendererPixbuf)cell).Pixbuf = uploadImage; } }
private void TransferDownSpeedFunc(TreeViewColumn column, CellRenderer cell, TreeModel model, TreeIter iter) { IFileTransfer transfer = (IFileTransfer)model.GetValue(iter, 0); if (transfer.Status == FileTransferStatus.Transfering) { ((CellRendererText)cell).Text = FileFind.Common.FormatBytes(transfer.TotalDownloadSpeed) + "/s"; } else { ((CellRendererText)cell).Text = String.Empty; } }
/// <summary> /// 上传文件,有进度显示 /// </summary> /// <param name="filepath">文件本地路径</param> /// <param name="action">进度0-100</param> /// <returns>上传成功后返回的文件名</returns> public string UpLoadFile(string filepath, Action <int> action) { IFileTransfer fileHandlerService = null; try { FileInfo finfo = new FileInfo(filepath); if (finfo.Exists == false) { throw new Exception("文件不存在!"); } fileHandlerService = mfileChannelFactory.CreateChannel(); UpFile uf = new UpFile(); uf.clientId = mConn == null ? "" : mConn.ClientID; uf.UpKey = Guid.NewGuid().ToString(); uf.FileExt = finfo.Extension; uf.FileName = finfo.Name; uf.FileSize = finfo.Length; uf.FileStream = finfo.OpenRead(); if (action != null) { getupdownprogress(uf.FileStream, uf.FileSize, action);//获取进度条 } UpFileResult result = new UpFileResult(); result = fileHandlerService.UpLoadFile(uf); if (result.IsSuccess) { return(result.Message); } else { throw new Exception("上传文件失败!"); } } catch (Exception e) { throw new Exception(e.Message + "\n上传文件失败!"); } finally { if (fileHandlerService != null) { (fileHandlerService as IContextChannel).Abort(); } } }
private void TransferProgressFunc(TreeViewColumn column, CellRenderer cell, TreeModel model, TreeIter iter) { IFileTransfer transfer = (IFileTransfer)model.GetValue(iter, 0); CellRendererProgress progressCell = (CellRendererProgress)cell; if (transfer.Progress >= 0) { progressCell.Value = Convert.ToInt32(transfer.Progress); progressCell.Visible = true; } else { progressCell.Value = 0; progressCell.Visible = false; } progressCell.Text = String.Format("{0}%", progressCell.Value); }
static void setDownFileProgress(string clientId, string downkey, Func <int> func) { //string _clientId = clientId; //string _downkey = downkey; //int _progressnum = progressnum; new Action <string, string, Func <int> >(delegate(string _clientId, string _downkey, Func <int> _func) { ChannelFactory <IFileTransfer> mfileChannelFactory = null; IFileTransfer fileHandlerService = null; try { mfileChannelFactory = new ChannelFactory <IFileTransfer>("fileendpoint"); fileHandlerService = mfileChannelFactory.CreateChannel(); int _oldprogressnum = 0; int _progressnum = 0; while ((_progressnum = _func()) != 100) { if (_oldprogressnum < _progressnum) { _oldprogressnum = _progressnum; fileHandlerService.SetDownLoadFileProgress(_clientId, _downkey, _progressnum); } System.Threading.Thread.Sleep(100); } fileHandlerService.SetDownLoadFileProgress(_clientId, _downkey, 100); } catch (Exception e) { throw new Exception(e.Message + "\n设置下载文件进度失败!"); } finally { if (fileHandlerService != null) { (fileHandlerService as IContextChannel).Close(); } if (mfileChannelFactory != null) { mfileChannelFactory.Close(); } } }).BeginInvoke(clientId, downkey, func, null, null); }
private void FileTransferStateChanged(IFileTransfer ft) { FileTransferUiProxy proxy; lock (syncUiProxies) { if (!uiProxies.TryGetValue(ft, out proxy)) { Root.Log(LogLevel.Error, "AppController: skipping unknown file transfer session [sid={0}]", ft.Id); return; } } mainDialog.InvokeAsync(() => { proxy.View.ErrorMessage = ft.ErrorMessage; proxy.View.State = ft.State; }); }
private void UpdateFileTransferView(IFileTransfer ft) { lock (syncUiProxies) { FileTransferUiProxy proxy; if (!uiProxies.TryGetValue(ft, out proxy)) { Root.Log(LogLevel.Error, "AppController: skipping unknown file transfer session [sid={0}]", ft.Id); return; } if (proxy.ViewUpdateRequired || ft.BytesDone == ft.BytesTotal) { mainDialog.InvokeAsync(() => { proxy.UpdateView(); }); } } }
static void getUpLoadFileProgress(string upkey, Action <int> action) { new Action <string, Action <int> >(delegate(string _upkey, Action <int> _action) { ChannelFactory <IFileTransfer> mfileChannelFactory = null; IFileTransfer fileHandlerService = null; try { mfileChannelFactory = new ChannelFactory <IFileTransfer>("fileendpoint"); fileHandlerService = mfileChannelFactory.CreateChannel(); int oldnum = 0; int num = 0; while ((num = fileHandlerService.GetUpLoadFileProgress(_upkey)) != 100) { if (oldnum < num) { oldnum = num; action(num); } System.Threading.Thread.Sleep(100); } action(100); } catch (Exception e) { throw new Exception(e.Message + "\n获取上传文件进度失败!"); } finally { if (fileHandlerService != null) { (fileHandlerService as IContextChannel).Close(); } if (mfileChannelFactory != null) { mfileChannelFactory.Close(); } } }).BeginInvoke(upkey, action, null, null); }
private void TransferStatusFunc(TreeViewColumn column, CellRenderer cell, TreeModel model, TreeIter iter) { IFileTransfer transfer = (IFileTransfer)model.GetValue(iter, 0); CellRendererText textCell = (CellRendererText)cell; if (!String.IsNullOrEmpty(transfer.StatusDetail)) { textCell.Text = String.Format("{0} - {1}", transfer.Status, transfer.StatusDetail); } else { textCell.Text = transfer.Status.ToString(); } string color = null; switch (transfer.Status) { //case FileTransferStatus.Failed: case FileTransferStatus.Canceled: color = "red"; break; case FileTransferStatus.Transfering: color = "black"; break; case FileTransferStatus.Completed: color = "darkgreen"; break; case FileTransferStatus.AllPeersBusy: case FileTransferStatus.Hashing: case FileTransferStatus.Paused: case FileTransferStatus.Queued: color = "gold"; break; } textCell.Foreground = color; }
private void manager_FileTransferRemoved(IFileTransfer transfer) { try { // Remove transfer from list Gtk.TreeIter iter; transferListStore.GetIterFirst(out iter); if (transferListStore.IterIsValid(iter)) { do { IFileTransfer currentItem = (IFileTransfer)transferListStore.GetValue (iter, 0); if (currentItem == transfer) { transferListStore.Remove (ref iter); return; } } while (transferListStore.IterNext(ref iter)); } Gui.MainWindow.RefreshCounts(); } catch (Exception ex) { LoggingService.LogError(ex); Gui.ShowErrorDialog(ex.ToString(), Gui.MainWindow.Window); } }
public Message CreateRequestFileMessage(Node node, IFileTransfer transfer) { var remoteFile = (RemoteFile)transfer.File; Message p = new Message(network, MessageType.RequestFile); p.To = node.NodeID; p.Content = new RequestFileInfo(remoteFile.RemoteFullPath, transfer.Id); return p; }
private void manager_NewFileTransfer(IFileTransfer transfer) { try { // Add transfer to list transferListStore.AppendValues(transfer); // Watch a few other events transfer.PeerAdded += (FileTransferPeerEventHandler)DispatchService.GuiDispatch( new FileTransferPeerEventHandler(transfer_PeerAdded) ); transfer.Error += (FileTransferErrorEventHandler)DispatchService.GuiDispatch( new FileTransferErrorEventHandler(transfer_Error) ); Gui.MainWindow.RefreshCounts(); } catch (Exception ex) { LoggingService.LogError(ex); Gui.ShowErrorDialog(ex.ToString(), Gui.MainWindow.Window); } }
// FIXME: Nothing calls this! private void transfer_Error(IFileTransfer transfer, Exception ex) { LoggingService.LogError(String.Format("Transfer error ({0})", transfer.File.Name), ex); }
private void Skype_FileTransferStatusChanged(IFileTransfer ifiletransfer, TFileTransferStatus status) { this.Logger.Debug(System.Reflection.MethodBase.GetCurrentMethod().Name); }
// FIXME: Nothing calls this! private void transfer_PeerAdded(IFileTransfer transfer, IFileTransferPeer peer) { LoggingService.LogDebug("New Transfer Peer ({0}): {1}", transfer.File.Name, peer.Node); }
private void RaiseNewTransfer(IFileTransfer transfer) { LoggingService.LogInfo("Transfer added: {0}", transfer.File.Name); if (NewFileTransfer != null) NewFileTransfer(transfer); }
private void ClosePod() { try { if (VMuktiAPI.VMuktiInfo.CurrentPeer.CurrPeerType == VMuktiAPI.PeerType.NodeWithNetP2P || VMuktiAPI.VMuktiInfo.CurrentPeer.CurrPeerType == VMuktiAPI.PeerType.SuperNode || VMuktiAPI.VMuktiInfo.CurrentPeer.CurrPeerType == VMuktiAPI.PeerType.BootStrap) { if (NetP2PChannel != null) { NetP2PChannel.svcUnJoin(VMuktiAPI.VMuktiInfo.CurrentPeer.DisplayName); } } else { if (HttpChannel != null) { HttpChannel.svcHttpUnJoin(VMuktiAPI.VMuktiInfo.CurrentPeer.DisplayName); } } if (NetP2PChannel != null) { NetP2PChannel = null; } if (HttpChannel != null) { HttpChannel = null; } } catch (Exception ex) { VMuktiAPI.VMuktiHelper.ExceptionHandler(ex, "ClosePod", "FileSearch.xaml.cs"); } }
public FileTransferResponse(IFileTransfer fileTransfer, string fileName) : this(fileTransfer, fileName, null) { }
public FileTransferResponse(IFileTransfer fileTransfer, string fileName, string type) { this.fileTransfer = fileTransfer; this.fileName = fileName; this.type = type; }
private void RaiseTransferRemoved(IFileTransfer transfer) { LoggingService.LogInfo("Transfer removed: {0}", transfer.File.Name); if (FileTransferRemoved != null) FileTransferRemoved(transfer); }
private byte[] GetFile(IFileTransfer host, string fileName) { RemoteFileInfo fileInfo = new RemoteFileInfo(); byte[] file = new byte[0]; try { DownloadRequest requestData = new DownloadRequest(); requestData.FileName = fileName; fileInfo = host.DownloadFile(requestData); using (MemoryStream stream = new MemoryStream()) { fileInfo.FileByteStream.CopyTo(stream); file = stream.ToArray(); } } catch (Exception ex) { MessageBox.Show("Error : " + ex.Message); } finally { fileInfo.FileByteStream.Close(); } return file; }
internal FileTransferOperation(ITransport transport, IFileTransfer transfer, IFileTransferPeer peer) { this.transport = transport; this.transfer = transfer; this.peer = peer; }
// **** There is no TFileTransferStatus to text conversion supplied. **** public void OurFileTransferStatusChanged(IFileTransfer ifiletransfer, TFileTransferStatus status) { // Always use try/catch with ANY Skype calls. try { // Write File Transfer Status Changed to Window. AddTextToTextBox1(DateTime.Now.ToLocalTime() + ": " + "File Transfer Status Changed - File Transfer Filename: " + ifiletransfer.Filename + " - TFileTransferStatus Status: " + status + "\r\n"); } catch (Exception e) { // Possibly old Skype4COM version, log an error, drop into debug if wanted. AddTextToTextBox1(DateTime.Now.ToLocalTime() + ": " + "File Transfer Status Changed Event Fired - Bad Text" + " - Exception Source: " + e.Source + " - Exception Message: " + e.Message + "\r\n"); // If the "Use Auto Debug" check box is checked and we are in debug, drop into debug here when retry, otherwise, prompt for action. Debug.Assert(!this.UseAutoDebug.Checked); } }
private void FncHostFileSearchService(object lstParams) { try { List<object> lstTempObj = (List<object>)lstParams; strUri = lstTempObj[1].ToString(); if ((VMuktiAPI.PeerType)lstTempObj[0] == VMuktiAPI.PeerType.NodeWithNetP2P || (VMuktiAPI.PeerType)lstTempObj[0] == VMuktiAPI.PeerType.BootStrap || (VMuktiAPI.PeerType)lstTempObj[0] == VMuktiAPI.PeerType.SuperNode) { NetPeerClient npcFileSearch = new NetPeerClient(); ((clsNetTcpFileSearch)objNetTcpFileSearch).EntsvcJoin+=new clsNetTcpFileSearch.delsvcJoin(FileSearch_EntsvcJoin); ((clsNetTcpFileSearch)objNetTcpFileSearch).EntsvcRequestFile+=new clsNetTcpFileSearch.delsvcRequestFile(FileSearch_EntsvcRequestFile); ((clsNetTcpFileSearch)objNetTcpFileSearch).EntsvcSearchQuery+=new clsNetTcpFileSearch.delsvcSearchQuery(FileSearch_EntsvcSearchQuery); ((clsNetTcpFileSearch)objNetTcpFileSearch).EntsvcSearchResult+=new clsNetTcpFileSearch.delsvcSearchResult(FileSearch_EntsvcSearchResult); ((clsNetTcpFileSearch)objNetTcpFileSearch).EntsvcSendFileBlock+=new clsNetTcpFileSearch.delsvcSendFileBlock(FileSearch_EntsvcSendFileBlock); ((clsNetTcpFileSearch)objNetTcpFileSearch).EntsvcGetUserList += new clsNetTcpFileSearch.delsvcGetUserList(FileSearch_EntsvcGetUserList); ((clsNetTcpFileSearch)objNetTcpFileSearch).EntsvcSetUserList += new clsNetTcpFileSearch.delsvcSetUserList(FileSearch_EntsvcSetUserList); ((clsNetTcpFileSearch)objNetTcpFileSearch).EntsvcUnJoin+=new clsNetTcpFileSearch.delsvcUnJoin(FileSearch_EntsvcUnJoin); NetP2PChannel = (IFileTransferChannel)npcFileSearch.OpenClient<IFileTransferChannel>(strUri, strUri.ToString().Split(':')[2].Split('/')[2], ref objNetTcpFileSearch); //**Opening NetP2p Client for FileSearch. while (Counter < 20) { try { NetP2PChannel.svcJoin(VMuktiAPI.VMuktiInfo.CurrentPeer.DisplayName); Counter = 20; NetP2PChannel.svcGetUserList(VMuktiAPI.VMuktiInfo.CurrentPeer.DisplayName); } catch { Counter++; System.Threading.Thread.Sleep(1000); } } } else { BasicHttpClient BasicFileSearchClient = new BasicHttpClient(); HttpChannel = (IHttpFileSearchChannel)BasicFileSearchClient.OpenClient<IHttpFileSearchChannel>(strUri); //**opening Http client for FileSearch module while (tempcounter < 20) { try { HttpChannel.svcHttpJoin(VMuktiAPI.VMuktiInfo.CurrentPeer.DisplayName); tempcounter = 20; } catch { tempcounter++; System.Threading.Thread.Sleep(1000); } } dt.Interval = TimeSpan.FromSeconds(5); dt.Tick += new EventHandler(dt_Tick); dt.Start(); dtGetFileList.Interval = TimeSpan.FromSeconds(10); dtGetFileList.Tick += new EventHandler(dtGetFileList_Tick); dtGetFileList.Start(); } } catch (Exception ex) { VMuktiAPI.VMuktiHelper.ExceptionHandler(ex, "FncHostFileSearchService", "FileSearch.xaml.cs"); if (ex.InnerException != null) { VMuktiAPI.VMuktiHelper.ExceptionHandler(ex, "FncHostFileSearchService", "FileSearch.xaml.cs"); } } }
private void Core_FileTransferRemoved(IFileTransfer transfer) { if (transfer is BitTorrentFileTransfer) { TorrentManager manager = ((BitTorrentFileTransfer)transfer).Manager; if (manager != null) { LoggingService.LogDebug("Removing torrent from engine!"); engine.Unregister(manager); } } }
static void OnFileStatusChanged(IFileTransfer pTransfer, TFileTransferStatus Status) { string lowerpath = pTransfer.FilePath.ToLower(); if (Status == TFileTransferStatus.fileTransferStatusCompleted) { if ((lowerpath.EndsWith(".png") || lowerpath.EndsWith(".jpg") || lowerpath.EndsWith(".gif"))) { Console.WriteLine("Uploading file: " + pTransfer.FilePath); string url = UploadImage(pTransfer.FilePath); SendMessage(String.Format("{0}: {1}", pTransfer.Filename, url)); } else { Console.WriteLine("Invalid file extension for file: " + pTransfer.Filename); } Console.WriteLine("Deleting " + pTransfer.Filename); File.Delete(pTransfer.FilePath); } }