MCPcopy Create free account
hub / github.com/ActiveState/code / close_file

Method close_file

recipes/Python/492211_dal3py/recipe-492211.py:356–394  ·  view source on GitHub ↗
(self, block)

Source from the content-addressed store, hash-verified

354
355 # Close A File
356 def close_file(self, block):
357 assert type(block) is int and 1 <= block <= self.__blocks
358 status = self.__disk.status(block)
359 assert self.STATUS.f1 <= status <= self.STATUS.fZ
360 if status == self.STATUS.fA:
361 temp = self.__disk.read(block)
362 self.__disk.close(block)
363 block = (ord(temp[-2]) << 8) + ord(temp[-1])
364 while self.__disk.status(block) == self.STATUS.fB:
365 temp = self.__disk.read(block)
366 self.__disk.close(block)
367 block = (ord(temp[-2]) << 8) + ord(temp[-1])
368 self.__disk.close(block)
369 elif status == self.STATUS.fB:
370 temp = self.__disk.read(block)
371 self.__disk.close(block)
372 dirA = (ord(temp[0]) << 8) + ord(temp[1])
373 dirZ = (ord(temp[-2]) << 8) + ord(temp[-1])
374 while self.__disk.status(dirA) == self.STATUS.fB:
375 temp = self.__disk.read(dirA)
376 self.__disk.close(dirA)
377 dirA = (ord(temp[0]) << 8) + ord(temp[1])
378 self.__disk.close(dirA)
379 while self.__disk.status(dirZ) == self.STATUS.fB:
380 temp = self.__disk.read(dirZ)
381 self.__disk.close(dirZ)
382 dirZ = (ord(temp[-2]) << 8) + ord(temp[-1])
383 self.__disk.close(dirZ)
384 elif status == self.STATUS.fZ:
385 temp = self.__disk.read(block)
386 self.__disk.blose(block)
387 block = (ord(temp[0]) << 8) + ord(temp[1])
388 while self.__disk.status(block) == self.STATUS.fB:
389 temp = self.__disk.read(block)
390 self.__disk.close(block)
391 block = (ord(temp[0]) << 8) + ord(temp[1])
392 self.__disk.close(block)
393 else:
394 self.__disk.close(block)
395
396 # Open A Block
397 def open_block(self):

Callers 1

remove_fileMethod · 0.80

Calls 3

statusMethod · 0.45
readMethod · 0.45
closeMethod · 0.45

Tested by

no test coverage detected