added ~objectcount and ~aiobjectcount

This commit is contained in:
Darren Ranalli 2007-03-07 03:40:22 +00:00
parent a88183a033
commit 1e5fdf94f6
2 changed files with 28 additions and 0 deletions

View File

@ -80,6 +80,32 @@ class DoCollectionManager:
distObj.dclass.getName(),
distObj.__dict__.get("name"))
def _printObjects(self, table):
class2count = {}
for obj in self.getDoTable(ownerView=False).values():
className = obj.__class__.__name__
class2count.setdefault(className, 0)
class2count[className] += 1
count2classes = invertDictLossless(class2count)
counts = count2classes.keys()
counts.sort()
counts.reverse()
for count in counts:
count2classes[count].sort()
for name in count2classes[count]:
print '%s %s' % (count, name)
def printObjectCount(self):
# print object counts by distributed object type
print '==== OBJECT DUMP ===='
if self.hasOwnerView():
print '== doId2do'
self._printObjects(self.getDoTable(ownerView=False))
if self.hasOwnerView():
print ''
print '== doId2ownerView'
self._printObjects(self.getDoTable(ownerView=True))
def getDoList(self, parentId, zoneId=None, classType=None):
"""
parentId is any distributed object id.

View File

@ -2763,3 +2763,5 @@ __builtin__.DelayedFunctor = DelayedFunctor
__builtin__.FrameDelayedCall = FrameDelayedCall
__builtin__.ArgumentEater = ArgumentEater
__builtin__.ClassTree = ClassTree
__builtin__.invertDict = invertDict
__builtin__.invertDictLossless = invertDictLossless