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

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

            return(storageResponse.FileName);
        }
Ejemplo n.º 2
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 string UploadSlaveFile(string groupName, byte[] contentByte, string masterFilename,
                                      string prefixName, string fileExt)
        {
            var trackerRequest = QueryUpdate.Instance.GetRequest(groupName, masterFilename);

            var trackerResponse = new QueryUpdate.Response(trackerRequest.GetResponse());

            var storeEndPoint = new IPEndPoint(IPAddress.Parse(trackerResponse.IpStr), trackerResponse.Port);

            var storageReqeust = Storage.UploadSlaveFile.Instance.GetRequest(storeEndPoint,
                                                                             contentByte.Length, masterFilename, prefixName, fileExt, contentByte);

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

            return(storageResponse.FileName);
        }