Beispiel #1
1
 public IMegaRequest DownloadFile(MegaNode node, string filename, Action<DownloadHandle> OnHandleReady, Action<int> OnError)
 {
     var req = new MRequestGetDownloadUrl<MResponseGetDownloadUrl>(User, node.Id);
     DownloadHandle handle = null;
     req.Success += (s, a) =>
     {
         handle = MegaDownloader.GetHandle(filename, a.FileSize, a.Url, node);
         if (OnHandleReady != null) { Util.StartThread(() => OnHandleReady(handle), "transfer_handle_ready_handler"); }
         downloader.StartTransfer(handle);
     };
     req.Error += (s, e) => { if (OnError != null) { OnError(e.Error); } };
     transport.EnqueueRequest(req);
     return req;
 }
Beispiel #2
0
        public IMegaRequest DownloadFile(MegaNode node, string filename, Action <DownloadHandle> OnHandleReady, Action <int> OnError)
        {
            var            req    = new MRequestGetDownloadUrl <MResponseGetDownloadUrl>(User, node.Id);
            DownloadHandle handle = null;

            req.Success += (s, a) =>
            {
                handle = MegaDownloader.GetHandle(filename, a.FileSize, a.Url, node);
                if (OnHandleReady != null)
                {
                    Util.StartThread(() => OnHandleReady(handle), "transfer_handle_ready_handler");
                }
                downloader.StartTransfer(handle);
            };
            req.Error += (s, e) => { if (OnError != null)
                                     {
                                         OnError(e.Error);
                                     }
            };
            transport.EnqueueRequest(req);
            return(req);
        }