class TFSGraph::Populators::ForProject
incremental updates for a project, its branches, changesets and merges
Public Class Methods
new(project, since=Time.at(0).utc)
click to toggle source
# File lib/tfs_graph/populators/for_project.rb, line 10 def initialize(project, since=Time.at(0).utc) @project = project @branch_store = BranchStore.new(@project) end
Public Instance Methods
populate()
click to toggle source
# File lib/tfs_graph/populators/for_project.rb, line 15 def populate new_branches = @branch_store.fetch_since_last_update @branch_store.cache_all(new_branches) active_branches = @project.active_branches changesets = active_branches.map do |branch| ForBranch.new(@project, branch).populate branch.changesets end # Add merges active_branches.each {|branch| ChangesetMergeStore.new(branch).fetch_and_cache } ChangesetTreeBuilder.set_branch_merges(changesets.flatten) BranchArchiveHandler.hide_moved_archives_for_project(@project) @project.updated! end