scm: darcs: code clean up model.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@5432 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
Toshi MARUYAMA 2011-04-12 05:44:48 +00:00
parent c4616e0ae0
commit fbf23a14b8
1 changed files with 10 additions and 8 deletions

View File

@ -40,30 +40,32 @@ class Repository::Darcs < Repository
patch = identifier.nil? ? nil : changesets.find_by_revision(identifier) patch = identifier.nil? ? nil : changesets.find_by_revision(identifier)
scm.entry(path, patch.nil? ? nil : patch.scmid) scm.entry(path, patch.nil? ? nil : patch.scmid)
end end
def entries(path=nil, identifier=nil) def entries(path=nil, identifier=nil)
patch = identifier.nil? ? nil : changesets.find_by_revision(identifier) patch = identifier.nil? ? nil : changesets.find_by_revision(identifier)
entries = scm.entries(path, patch.nil? ? nil : patch.scmid) entries = scm.entries(path, patch.nil? ? nil : patch.scmid)
if entries if entries
entries.each do |entry| entries.each do |entry|
# Search the DB for the entry's last change # Search the DB for the entry's last change
changeset = changesets.find_by_scmid(entry.lastrev.scmid) if entry.lastrev && !entry.lastrev.scmid.blank? if entry.lastrev && !entry.lastrev.scmid.blank?
changeset = changesets.find_by_scmid(entry.lastrev.scmid)
end
if changeset if changeset
entry.lastrev.identifier = changeset.revision entry.lastrev.identifier = changeset.revision
entry.lastrev.name = changeset.revision entry.lastrev.name = changeset.revision
entry.lastrev.time = changeset.committed_on entry.lastrev.time = changeset.committed_on
entry.lastrev.author = changeset.committer entry.lastrev.author = changeset.committer
end end
end end
end end
entries entries
end end
def cat(path, identifier=nil) def cat(path, identifier=nil)
patch = identifier.nil? ? nil : changesets.find_by_revision(identifier.to_s) patch = identifier.nil? ? nil : changesets.find_by_revision(identifier.to_s)
scm.cat(path, patch.nil? ? nil : patch.scmid) scm.cat(path, patch.nil? ? nil : patch.scmid)
end end
def diff(path, rev, rev_to) def diff(path, rev, rev_to)
patch_from = changesets.find_by_revision(rev) patch_from = changesets.find_by_revision(rev)
return nil if patch_from.nil? return nil if patch_from.nil?
@ -73,7 +75,7 @@ class Repository::Darcs < Repository
end end
patch_from ? scm.diff(path, patch_from.scmid, patch_to ? patch_to.scmid : nil) : nil patch_from ? scm.diff(path, patch_from.scmid, patch_to ? patch_to.scmid : nil) : nil
end end
def fetch_changesets def fetch_changesets
scm_info = scm.info scm_info = scm.info
if scm_info if scm_info