コード例 #1
0
ファイル: LLFileTransfer.cs プロジェクト: imdongchen/CySim
        private bool StartUpload(XferUploadHandler uploader, UploadComplete uploadCompleteCallback, UploadAborted abortCallback)
        {
            uploader.UploadDone += uploadCompleteCallback;
            uploader.UploadDone += RemoveXferUploadHandler;

            if (abortCallback != null)
            {
                uploader.UploadAborted += abortCallback;
            }

            lock (m_uploadHandlersLock)
            {
                if (!m_uploadHandlers.ContainsKey(uploader.XferID))
                {
                    m_uploadHandlers.Add(uploader.XferID, uploader);
                    uploader.RequestStartXfer(m_clientAPI);
                    return(true);
                }
                else
                {
                    // something went wrong with the xferID allocation
                    uploader.UploadDone -= uploadCompleteCallback;
                    uploader.UploadDone -= RemoveXferUploadHandler;
                    if (abortCallback != null)
                    {
                        uploader.UploadAborted -= abortCallback;
                    }
                    return(false);
                }
            }
        }
コード例 #2
0
ファイル: LLFileTransfer.cs プロジェクト: imdongchen/CySim
        public bool RequestUpload(UUID fileID, UploadComplete uploadCompleteCallback, UploadAborted abortCallback)
        {
            if ((fileID == UUID.Zero) || (uploadCompleteCallback == null))
            {
                return(false);
            }

            XferUploadHandler uploader = new XferUploadHandler(m_clientAPI, fileID);

            return(StartUpload(uploader, uploadCompleteCallback, abortCallback));
        }
コード例 #3
0
ファイル: LLFileTransfer.cs プロジェクト: imdongchen/CySim
        public bool RequestUpload(string clientFileName, UploadComplete uploadCompleteCallback, UploadAborted abortCallback)
        {
            if ((String.IsNullOrEmpty(clientFileName)) || (uploadCompleteCallback == null))
            {
                return(false);
            }

            XferUploadHandler uploader = new XferUploadHandler(m_clientAPI, clientFileName);

            return(StartUpload(uploader, uploadCompleteCallback, abortCallback));
        }
コード例 #4
0
ファイル: LLFileTransfer.cs プロジェクト: BogusCurry/halcyon
        public bool RequestUpload(UUID fileID, UploadComplete uploadCompleteCallback, UploadAborted abortCallback)
        {
            if ((fileID == UUID.Zero) || (uploadCompleteCallback == null))
            {
                return false;
            }

            XferUploadHandler uploader = new XferUploadHandler(m_clientAPI, fileID);

            return StartUpload(uploader, uploadCompleteCallback, abortCallback);
        }
コード例 #5
0
ファイル: LLFileTransfer.cs プロジェクト: BogusCurry/halcyon
        public bool RequestUpload(string clientFileName, UploadComplete uploadCompleteCallback, UploadAborted abortCallback)
        {
            if ((String.IsNullOrEmpty(clientFileName)) || (uploadCompleteCallback == null))
            {
                return false;
            }

            XferUploadHandler uploader = new XferUploadHandler(m_clientAPI, clientFileName);

            return StartUpload(uploader, uploadCompleteCallback, abortCallback);
        }
コード例 #6
0
ファイル: LLFileTransfer.cs プロジェクト: BogusCurry/halcyon
        private bool StartUpload(XferUploadHandler uploader, UploadComplete uploadCompleteCallback, UploadAborted abortCallback)
        {
            uploader.UploadDone += uploadCompleteCallback;
            uploader.UploadDone += RemoveXferUploadHandler;

            if (abortCallback != null)
            {
                uploader.UploadAborted += abortCallback;
            }

            lock (m_uploadHandlersLock)
            {
                if (!m_uploadHandlers.ContainsKey(uploader.XferID))
                {
                    m_uploadHandlers.Add(uploader.XferID, uploader);
                    uploader.RequestStartXfer(m_clientAPI);
                    return true;
                }
                else
                {
                    // something went wrong with the xferID allocation
                    uploader.UploadDone -= uploadCompleteCallback;
                    uploader.UploadDone -= RemoveXferUploadHandler;
                    if (abortCallback != null)
                    {
                        uploader.UploadAborted -= abortCallback;
                    }
                    return false;
                }
            }
        }