Ejemplo n.º 1
0
        /// <summary>
        /// 上传文件
        /// </summary>
        /// <param name="storageNode">GetStorageNode方法返回的存储节点</param>
        /// <param name="contentByte">文件内容</param>
        /// <param name="fileExt">文件扩展名(注意:不包含".")</param>
        /// <returns>文件名</returns>
        public static string UploadFile(StorageNode storageNode, byte[] contentByte, string fileExt)
        {
            FDFSRequest storageReqeust = UPLOAD_FILE.Instance.GetRequest(storageNode.EndPoint, storageNode.StorePathIndex, contentByte.Length, fileExt, contentByte);

            UPLOAD_FILE.Response storageResponse = new UPLOAD_FILE.Response(storageReqeust.GetResponse());
            return(storageResponse.FileName);
        }
Ejemplo n.º 2
0
 /// <summary>
 /// 上传文件
 /// </summary>
 /// <param name="storageNode">GetStorageNode方法返回的存储节点</param>
 /// <param name="contentByte">文件内容</param>
 /// <param name="fileExt">文件扩展名(注意:不包含".")</param>
 /// <returns>文件名</returns>
 public static string UploadFile(StorageNode storageNode, byte[] contentByte, string fileExt)
 {
     FDFSRequest storageRequest = UPLOAD_FILE.Instance.GetRequest(storageNode.EndPoint, storageNode.StorePathIndex, contentByte.Length, fileExt, contentByte);
     UPLOAD_FILE.Response storageResponse = new UPLOAD_FILE.Response();
     storageRequest.GetResponse(storageResponse);
     return storageResponse.FileName;
 }
Ejemplo n.º 3
0
 public static string UploadFile(StorageNode storageNode, byte[] contentByte, string fileExt)
 {
     UPLOAD_FILE.Response response =
         new UPLOAD_FILE.Response(
             UPLOAD_FILE.Instance.GetRequest(new object[]
                                             { storageNode.EndPoint, storageNode.StorePathIndex, contentByte.Length, fileExt, contentByte })
             .GetResponse());
     return(response.FileName);
 }
Ejemplo n.º 4
0
 public static string UploadFileByName(StorageNode storageNode, string filename)
 {
     using (FileStream fs = new FileStream(filename, FileMode.Open, FileAccess.Read, FileShare.Read))
     {
         string               extension       = Path.GetExtension(filename).Substring(1);
         FDFSRequest          storageRequest  = UPLOAD_FILE.Instance.GetRequest(storageNode.EndPoint, storageNode.StorePathIndex, fs.Length, extension, fs);
         UPLOAD_FILE.Response storageResponse = new UPLOAD_FILE.Response();
         storageRequest.GetResponse(storageResponse);
         return(storageResponse.FileName);
     }
 }
Ejemplo n.º 5
0
 public static string UploadFileByName(StorageNode storageNode, string filename)
 {
     using (FileStream fs = new FileStream(filename, FileMode.Open, FileAccess.Read, FileShare.Read))
     {
         string extension = Path.GetExtension(filename).Substring(1);
         FDFSRequest storageRequest = UPLOAD_FILE.Instance.GetRequest(storageNode.EndPoint, storageNode.StorePathIndex, fs.Length, extension, fs);
         UPLOAD_FILE.Response storageResponse = new UPLOAD_FILE.Response();
         storageRequest.GetResponse(storageResponse);
         return storageResponse.FileName;
     }
 }
Ejemplo n.º 6
0
        /// <summary>
        /// 上传从文件
        /// </summary>
        /// <param name="groupName"></param>
        /// <param name="contentByte">文件内容</param>
        /// <param name="masterFilename">主文件名</param>
        /// <param name="prefixName">从文件后缀</param>
        /// <param name="fileExt">文件扩展名(注意:不包含".")</param>
        /// <returns>文件名</returns>
        public static string UploadSlaveFile(string groupName, byte[] contentByte, string masterFilename, string prefixName, string fileExt)
        {
            FDFSRequest trackerRequest = QUERY_UPDATE.Instance.GetRequest(groupName, masterFilename);

            QUERY_UPDATE.Response trackerResponse = new QUERY_UPDATE.Response(trackerRequest.GetResponse());
            IPEndPoint            storeEndPoint   = new IPEndPoint(IPAddress.Parse(trackerResponse.IPStr), trackerResponse.Port);

            FDFSRequest storageReqeust = UPLOAD_SLAVE_FILE.Instance.GetRequest(storeEndPoint, contentByte.Length, masterFilename, prefixName, fileExt, contentByte);

            UPLOAD_FILE.Response storageResponse = new UPLOAD_FILE.Response(storageReqeust.GetResponse());
            return(storageResponse.FileName);
        }
Ejemplo n.º 7
0
 public static string UploadSlaveFile(string groupName, byte[] contentByte, string masterFilename, string prefixName, string fileExt)
 {
     using (var updateFile = new QUERY_UPDATE())
     {
         var trackerRequest  = updateFile.GetRequest(groupName, masterFilename);
         var trackerResponse = new QUERY_UPDATE.Response(trackerRequest.GetTrackerResponse());
         var storeEndPoint   = new IPEndPoint(IPAddress.Parse(trackerResponse.IpStr), trackerResponse.Port);
         var storageReqeust  = UPLOAD_SLAVE_FILE.Instance.GetRequest(storeEndPoint, contentByte.Length, masterFilename, prefixName, fileExt, contentByte);
         var storageResponse = new UPLOAD_FILE.Response(storageReqeust.GetStorageResponse());
         return(storageResponse.FileName);
     }
 }
Ejemplo n.º 8
0
        public static async Task <string> UploadFileAsync(StorageNode storageNode, byte[] contentByte, string fileExt)
        {
            var req = UPLOAD_FILE.Instance.GetRequest(
                storageNode.EndPoint,
                storageNode.StorePathIndex,
                contentByte.Length,
                fileExt,
                contentByte);
            var response = new UPLOAD_FILE.Response(await req.GetResponseAsync());

            return(response.FileName);
        }
Ejemplo n.º 9
0
 /// <summary>
 /// 上传文件
 /// </summary>
 /// <param name="storageNode">GetStorageNode方法返回的存储节点</param>
 /// <param name="contentByte">文件内容</param>
 /// <param name="fileExt">文件扩展名(注意:不包含".")</param>
 /// <returns>文件名</returns>
 public static string UploadFile(StorageNode storageNode, byte[] contentByte, string fileExt)
 {
     Console.WriteLine($"{DateTime.Now.ToString("yyyyMMdd hh:mm:ss:fff")} => start upload fastdfs = > {storageNode.EndPoint.Address.ToString()} => contentByte.length= {contentByte.Length}");
     using (var storageReqeust = UPLOAD_FILE.CreateRequest(
                storageNode.EndPoint,
                storageNode.StorePathIndex,
                contentByte.Length,
                fileExt,
                contentByte))
     {
         var storageResponse = new UPLOAD_FILE.Response(storageReqeust.GetStorageResponse());
         Console.WriteLine($"{DateTime.Now.ToString("yyyyMMdd hh:mm:ss:fff")} => sucess upload fastdfs = > {storageNode.EndPoint.Address.ToString()} => {storageResponse.FileName}");
         return(storageResponse.FileName);
     }
 }
Ejemplo n.º 10
0
        /// <summary>
        /// 上传文件
        /// </summary>
        /// <param name="storageNode">GetStorageNode方法返回的存储节点</param>
        /// <param name="contentByte">文件内容</param>
        /// <param name="fileExt">文件扩展名(注意:不包含".")</param>
        /// <returns>文件名</returns>
        public static string UploadFile(StorageNode storageNode, byte[] contentByte, string fileExt, Action <string> beginCallback = null, Action <string> afterCallback = null)
        {
            if (beginCallback != null)
            {
                beginCallback(fileExt);
            }
            var storageReqeust = UPLOAD_FILE.Instance.GetRequest(storageNode.EndPoint, storageNode.StorePathIndex, contentByte.Length, fileExt, contentByte);

            var storageResponse = new UPLOAD_FILE.Response(storageReqeust.GetResponse());

            //测试的时候追踪一下
            if (afterCallback != null)
            {
                afterCallback(GetFormatUrl(storageNode.EndPoint.Address.ToString(), storageNode.GroupName, storageResponse.FileName));
            }

            return(storageResponse.FileName);
        }
Ejemplo n.º 11
0
        /// <summary>
        /// 上传从文件
        /// </summary>
        /// <param name="storageNode">GetStorageNode方法返回的存储节点</param>
        /// <param name="contentByte">文件内容</param>
        /// <param name="master_filename">主文件名</param>
        /// <param name="prefix_name">从文件后缀</param>
        /// <param name="fileExt">文件扩展名(注意:不包含".")</param>
        /// <returns>文件名</returns>
        public static string UploadSlaveFile(string groupName, byte[] contentByte, string master_filename, string prefix_name, string fileExt)
        {
            FDFSRequest trackerRequest = QUERY_UPDATE.Instance.GetRequest(groupName, master_filename);
            QUERY_UPDATE.Response trackerResponse = new QUERY_UPDATE.Response();
            trackerRequest.GetResponse(trackerResponse);
            IPEndPoint storeEndPoint = new IPEndPoint(IPAddress.Parse(trackerResponse.IPStr), trackerResponse.Port);

            FDFSRequest storageRequest = UPLOAD_SLAVE_FILE.Instance.GetRequest(storeEndPoint, contentByte.Length, master_filename, prefix_name, fileExt, contentByte);
            UPLOAD_FILE.Response storageResponse = new UPLOAD_FILE.Response();
            storageRequest.GetResponse(storageResponse);
            return storageResponse.FileName;
        }