def __init__(self,resultQueue):
        IServerObserver.__init__(self)
        IObserverController.__init__(self)
        IObserver.__init__(self)
        IObservable.__init__(self)

        self.resultQueue = resultQueue
        self.nodeBenchQueue = Queue()

        self.idGenerator = IDGenerator()
        self.server = ServerWrapper(self.idGenerator)
        self.nodes = {} 
        self.nodeId = ''
        
        self.charset = PrintableASCIIGeneratorUpper().getCharset()
        self.passwords = ['~~']
        self.length = 5
        self.benchLength = 3
        self.primer = []
        self.prefix = []
        self.hashFunction = 'lanman'
        
        self.results = Queue()
        self.runningWork = False
        self.finished = 0
        self.logger = Logger()
 def __init__(self):
     IObservable.__init__(self)
     self.logger = Logger()