Exemplo n.º 1
0
 private void SimpleUpload()
 {
     putObjectRequest = new PutObjectRequest(bucket, key, srcPath, sendOffset, sendContentLength);
     if (customHeaders != null)
     {
         putObjectRequest.SetRequestHeaders(customHeaders);
     }
     if (progressCallback != null)
     {
         putObjectRequest.SetCosProgressCallback(progressCallback);
     }
     cosXmlServer.PutObject(putObjectRequest, delegate(CosResult cosResult)
     {
         lock (syncExit)
         {
             if (isExit)
             {
                 if (taskState == TaskState.CANCEL)
                 {
                     DeleteObject();
                 }
                 return;
             }
         }
         if (UpdateTaskState(TaskState.COMPLETED))
         {
             PutObjectResult result          = cosResult as PutObjectResult;
             UploadTaskResult copyTaskResult = new UploadTaskResult();
             copyTaskResult.SetResult(result);
             if (successCallback != null)
             {
                 successCallback(copyTaskResult);
             }
         }
     },
                            delegate(CosClientException clientEx, CosServerException serverEx)
     {
         lock (syncExit)
         {
             if (isExit)
             {
                 return;
             }
         }
         if (UpdateTaskState(TaskState.FAILED))
         {
             if (failCallback != null)
             {
                 failCallback(clientEx, serverEx);
             }
         }
     });
 }
Exemplo n.º 2
0
 public void OnCompleted(CompleteMultipartUploadResult result)
 {
     UpdateProgress(sendContentLength, sendContentLength, true);
     //lock (syncExit)
     //{
     //    isExit = true;
     //}
     if (successCallback != null)
     {
         UploadTaskResult uploadTaskResult = new UploadTaskResult();
         uploadTaskResult.SetResult(result);
         successCallback(uploadTaskResult);
     }
 }
Exemplo n.º 3
0
        private void SimpleUpload()
        {
            putObjectRequest = new PutObjectRequest(bucket, key, srcPath, sendOffset, sendContentLength);

            if (customHeaders != null)
            {
                putObjectRequest.SetRequestHeaders(customHeaders);
            }

            if (progressCallback != null)
            {
                putObjectRequest.SetCosProgressCallback(progressCallback);
            }

            if (StorageClass != null)
            {
                putObjectRequest.SetCosStorageClass(StorageClass);
            }

            var task = cosXmlServer.ExecuteAsync <PutObjectResult>(putObjectRequest);

            task.ContinueWith((taskResult) => {
                if (taskResult.IsCompleted)
                {
                    if (UpdateTaskState(TaskState.Completed))
                    {
                        UploadTaskResult copyTaskResult = new UploadTaskResult();

                        copyTaskResult.SetResult(taskResult.Result);

                        if (successCallback != null)
                        {
                            successCallback(copyTaskResult);
                        }
                    }
                }
            });

            cosXmlServer.PutObject(putObjectRequest, delegate(CosResult cosResult)
            {
                lock (syncExit)
                {
                    if (isExit)
                    {
                        if (taskState == TaskState.Cancel)
                        {
                            DeleteObject();
                        }

                        return;
                    }
                }

                if (UpdateTaskState(TaskState.Completed))
                {
                    PutObjectResult result          = cosResult as PutObjectResult;
                    UploadTaskResult copyTaskResult = new UploadTaskResult();

                    copyTaskResult.SetResult(result);

                    if (successCallback != null)
                    {
                        successCallback(copyTaskResult);
                    }
                }
            },

                                   delegate(CosClientException clientEx, CosServerException serverEx)
            {
                lock (syncExit)
                {
                    if (isExit)
                    {
                        return;
                    }
                }

                if (UpdateTaskState(TaskState.Failed))
                {
                    if (failCallback != null)
                    {
                        failCallback(clientEx, serverEx);
                    }
                }
            });
        }