コード例 #1
0
ファイル: GitHubUpdate.cs プロジェクト: philoushka/ThymeBlog
        public async Task CanProcessPostedWebhook()
        {

            GitHubPostedCommit posted = JsonConvert.DeserializeObject<GitHubPostedCommit>(GitHubJsonMessages.GitHubCommitValidMsg);

            var gh = new Thyme.Web.Data.GitHub();
            var newposts =  await gh.GetItemsForBranchCommit(posted);

            LocalFileCache lfc = new LocalFileCache();

            foreach (var blogPostSlug in posted.RemovedPosts)
            {
                lfc.RemovePost(blogPostSlug);
            }

            foreach (BlogPost blogPost in newposts)
            {
                lfc.SaveLocalItem(blogPost);
            }
            

        }
コード例 #2
0
ファイル: GitHub.cs プロジェクト: philoushka/ThymeBlog
        public async Task SaveAllItemsFromTree(TreeItem subTree)
        {
            var treesClient = new TreesClient(apiConn);
            var tree = await treesClient.Get(Config.GitHubOwner, Config.GitHubRepo, subTree.Sha);
            LocalFileCache local = new LocalFileCache();
            foreach (var item in tree.Tree.Where(x => local.LocalItemExists(subTree.Path, x.Path) == false))
            {
                var blob = await GetBlobContents(item.Sha);

                local.SaveLocalItem(new DiskSaveItem { FileContents = Convert.FromBase64String(blob.Content), SubDirectory = subTree.Path, FileName = item.Path });
            }
        }
コード例 #3
0
ファイル: GitHub.cs プロジェクト: philoushka/ThymeBlog
 public void EnsureExistsOnDisk(DiskSaveItem saveItem)
 {
     LocalFileCache local = new LocalFileCache();
     local.SaveLocalItem(saveItem);
 }