public void CreateUploadCommit(string[] pathArray, VersionData versionData)
        {
            var uploadFileObjectList = new List<UploadFileObject>();

            var st = new StringBuilder();
            st.Append("[Update Data] ");

            foreach (var path in pathArray)
            {
                var fileName = Path.GetFileNameWithoutExtension(path);
                var fileExtension = Path.GetExtension(path);

                if (versionData.GetVersionValue(fileName) == null)
                {
                    versionData.AddNewVerionData(fileName);
                }

                var fileVersionName = versionData.GetNextVersion(fileName);
                var fileFullName = string.Format("{0}{1}", fileVersionName, fileExtension);

                fileExtension = fileExtension.Replace(".", "");

                var byteArray = File.ReadAllBytes(path);
                var fullPath = string.Format("{0}/{1}/{2}/{3}", BaseDataPath, fileExtension, fileName, fileFullName);

                uploadFileObjectList.Add(new UploadFileObject(fullPath, fileFullName, byteArray));

                st.AppendFormat(" {0}, ", fileFullName);
            }

            CommitObjectList.Add(new CommitObject(st.ToString(), uploadFileObjectList));
        }
Exemplo n.º 2
0
        public override async Task <VersionData> GetVersionFile(string[] fileArray, Action <string> updateLabel)
        {
            var versionData = new VersionData();

            try
            {
                updateLabel?.Invoke("Get Repository..");
                GetRepository = await Client.Repository.Get(OwnerSpaceName, RepositoryName);

                updateLabel?.Invoke("Check Version Data..");
                var existingFile = await Client.Repository.Content.GetAllContentsByRef(OwnerSpaceName, RepositoryName, VersionDataPath, ReferenceName);

                var versionInfo = existingFile.First().Content;
                versionData.AddVerionData(versionInfo);
            }
            catch (NotFoundException)
            {
                foreach (var path in fileArray)
                {
                    var fileName = Path.GetFileNameWithoutExtension(path);
                    versionData.AddNewVerionData(fileName);
                }
            }

            return(versionData);
        }
        public override async Task<VersionData> GetVersionFile(string[] fileArray, Action<string> updateLabel)
        {
            var versionData = new VersionData();
            string responseString = string.Empty;

            try
            {
                updateLabel?.Invoke("Get Master Branches..");
                await RequestUpdateHash();

                updateLabel?.Invoke("Check Version Data..");
                responseString = await RequestFindFile(VersionDataPath);
            }
            catch (Exception e)
            {

            }

            if (responseString == string.Empty)
            {
                foreach (var path in fileArray)
                {
                    var fileName = Path.GetFileNameWithoutExtension(path);
                    versionData.AddNewVerionData(fileName);
                }
            }
            else versionData.AddVerionData(responseString);

            return versionData;
        }
Exemplo n.º 4
0
        private async Task <List <NewTreeItem> > CreateNewTreeItemList(StringBuilder sb, IEnumerable <string> pathArray, VersionData versionData)
        {
            var newTreeItemList = new List <NewTreeItem>();

            sb.Append("[Update Data] ");

            foreach (var path in pathArray)
            {
                var fileName      = Path.GetFileNameWithoutExtension(path);
                var fileExtension = Path.GetExtension(path);

                if (versionData.GetVersionValue(fileName) == null)
                {
                    versionData.AddNewVerionData(fileName);
                }
                var fileVersionName = versionData.GetNextVersion(fileName);

                var fileFullName = string.Format("{0}{1}", fileVersionName, fileExtension);

                fileExtension = fileExtension.Replace(".", "");

                var fileToBase64 = Convert.ToBase64String(File.ReadAllBytes(path));
                var newBlob      = new NewBlob
                {
                    Encoding = EncodingType.Base64,
                    Content  = fileToBase64
                };

                var newBlobRef = await Client.Git.Blob.Create(OwnerSpaceName, RepositoryName, newBlob);

                var newTreeItem = new NewTreeItem
                {
                    Path = string.Format("{0}/{1}/{2}/{3}", BaseDataPath, fileExtension, fileName, fileFullName),
                    Mode = "100644",
                    Type = TreeType.Blob,
                    Sha  = newBlobRef.Sha
                };

                newTreeItemList.Add(newTreeItem);
                sb.AppendFormat(" {0} /", fileFullName);
            }

            return(newTreeItemList);
        }