Rev 4351: Move ContentFilterAwareSHA1Provider where tests expect it. in file:///home/vila/src/bzr/bugs/355454-unicode-warning/
Vincent Ladeuil
v.ladeuil+lp at free.fr
Mon May 11 14:53:14 BST 2009
At file:///home/vila/src/bzr/bugs/355454-unicode-warning/
------------------------------------------------------------
revno: 4351
revision-id: v.ladeuil+lp at free.fr-20090511135314-jl9q1mlnqnkcj06e
parent: pqm at pqm.ubuntu.com-20090511073632-ti658145fo07a4vw
committer: Vincent Ladeuil <v.ladeuil+lp at free.fr>
branch nick: 355454-unicode-warning
timestamp: Mon 2009-05-11 15:53:14 +0200
message:
Move ContentFilterAwareSHA1Provider where tests expect it.
* bzrlib/workingtree_4.py:
(ContentFilterAwareSHA1Provider): Moved to bzrlib/dirstate.py.
* bzrlib/dirstate.py:
(ContentFilterAwareSHA1Provider): Moved from bzrlib/workingtree_4.py.
-------------- next part --------------
=== modified file 'bzrlib/dirstate.py'
--- a/bzrlib/dirstate.py 2009-05-06 05:36:28 +0000
+++ b/bzrlib/dirstate.py 2009-05-11 13:53:14 +0000
@@ -304,6 +304,32 @@
return statvalue, sha1
+class ContentFilterAwareSHA1Provider(SHA1Provider):
+
+ def __init__(self, tree):
+ self.tree = tree
+
+ def sha1(self, abspath):
+ """See dirstate.SHA1Provider.sha1()."""
+ filters = self.tree._content_filter_stack(
+ self.tree.relpath(osutils.safe_unicode(abspath)))
+ return internal_size_sha_file_byname(abspath, filters)[1]
+
+ def stat_and_sha1(self, abspath):
+ """See dirstate.SHA1Provider.stat_and_sha1()."""
+ filters = self.tree._content_filter_stack(
+ self.tree.relpath(osutils.safe_unicode(abspath)))
+ file_obj = file(abspath, 'rb', 65000)
+ try:
+ statvalue = os.fstat(file_obj.fileno())
+ if filters:
+ file_obj = filtered_input_file(file_obj, filters)
+ sha1 = osutils.size_sha_file(file_obj)[1]
+ finally:
+ file_obj.close()
+ return statvalue, sha1
+
+
class DirState(object):
"""Record directory and metadata state for fast access.
=== modified file 'bzrlib/workingtree_4.py'
--- a/bzrlib/workingtree_4.py 2009-05-05 05:39:41 +0000
+++ b/bzrlib/workingtree_4.py 2009-05-11 13:53:14 +0000
@@ -259,7 +259,7 @@
form of files, i.e. after read filters are applied.
"""
if self.supports_content_filtering():
- return ContentFilterAwareSHA1Provider(self)
+ return dirstate.ContentFilterAwareSHA1Provider(self)
else:
return None
@@ -1295,32 +1295,6 @@
self.flush()
-class ContentFilterAwareSHA1Provider(dirstate.SHA1Provider):
-
- def __init__(self, tree):
- self.tree = tree
-
- def sha1(self, abspath):
- """See dirstate.SHA1Provider.sha1()."""
- filters = self.tree._content_filter_stack(
- self.tree.relpath(osutils.safe_unicode(abspath)))
- return internal_size_sha_file_byname(abspath, filters)[1]
-
- def stat_and_sha1(self, abspath):
- """See dirstate.SHA1Provider.stat_and_sha1()."""
- filters = self.tree._content_filter_stack(
- self.tree.relpath(osutils.safe_unicode(abspath)))
- file_obj = file(abspath, 'rb', 65000)
- try:
- statvalue = os.fstat(file_obj.fileno())
- if filters:
- file_obj = filtered_input_file(file_obj, filters)
- sha1 = osutils.size_sha_file(file_obj)[1]
- finally:
- file_obj.close()
- return statvalue, sha1
-
-
class WorkingTree4(DirStateWorkingTree):
"""This is the Format 4 working tree.
More information about the bazaar-commits
mailing list