21
from cStringIO import StringIO
24
23
from bzrlib.trace import mutter, note
25
from bzrlib.errors import BzrError, BzrCheckError
24
from bzrlib.errors import BzrError
26
25
from bzrlib.inventory import Inventory
27
26
from bzrlib.osutils import pumpfile, appendpath, fingerprint_file
95
92
"store is probably damaged/corrupt"])
98
def print_file(self, file_id):
99
"""Print file with id `file_id` to stdout."""
95
def print_file(self, fileid):
96
"""Print file with id `fileid` to stdout."""
101
sys.stdout.write(self.get_file_text(file_id))
98
pumpfile(self.get_file(fileid), sys.stdout)
104
101
def export(self, dest, format='dir', root=None):
122
119
or at least passing a description to the constructor.
125
def __init__(self, weave_store, inv, revision_id):
126
self._weave_store = weave_store
122
def __init__(self, store, inv):
127
124
self._inventory = inv
128
self._revision_id = revision_id
130
def get_weave(self, file_id):
131
return self._weave_store.get_weave(file_id)
134
def get_file_lines(self, file_id):
135
ie = self._inventory[file_id]
136
weave = self.get_weave(file_id)
137
return weave.get(ie.text_version)
140
def get_file_text(self, file_id):
141
return ''.join(self.get_file_lines(file_id))
144
126
def get_file(self, file_id):
145
return StringIO(self.get_file_text(file_id))
127
ie = self._inventory[file_id]
128
f = self._store[ie.text_id]
129
mutter(" get fileid{%s} from %r" % (file_id, self))
130
self._check_retrieved(ie, f)
147
133
def get_file_size(self, file_id):
148
134
return self._inventory[file_id].text_size