From 3bf471db237b9e28e1888263ea5a86e5d87a26e1 Mon Sep 17 00:00:00 2001 From: gryf Date: Thu, 30 Nov 2006 11:37:19 +0000 Subject: [PATCH] * Resolved issues with array members[]. * Added __str__, which produce nice print out of current catalog structure. --- files.py | 24 ++++++++++++++++++------ 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/files.py b/files.py index decfbb1..4ed9520 100644 --- a/files.py +++ b/files.py @@ -5,21 +5,22 @@ import datetime class fileObj: """Main file object class""" - def __init__(self, name=None, size=0, filetype="r", mtime=0, members=[], tmproot=''): + def __init__(self, name=None, size=0, filetype="r", mtime=0): date = datetime.datetime(datetime.MINYEAR,1,1) self.name = name self.size = size self.filetype = filetype - self.members = members + self.members = [] self.date = date.fromtimestamp(mtime) - self.t = tmproot def add_member(self,member): + """add another fileObj to array""" + self.members.append(member) if self.filetype == 'd': - self.size = calculate_my_size(self) - pass + self.size = self.calculate_my_size() def calculate_my_size(self): + """TODO: fixme!""" size = 0 for member in self.members: size += member.get_size() @@ -29,4 +30,15 @@ class fileObj: return self.size def __str__(self): - return self.name + ' ['+self.t+']' + """show name of main object and his members """ + print "<%s>" % self.name + def showtree(obj,spc): + """how about members?""" + for i in obj.members: + if i.filetype == "d": + print "%s[%s]" % (spc, i.name) + else: + print "%s%s" % (spc, i.name) + showtree(i,spc+".") + showtree(self,".") + return ""