예제 #1
0
def MarketListAck(newpacket):
    """
    This is to process responses from Market server.
    """
    global _MarketBids
    global _MarketOffers
    global OnMarketListFunc
    dhnio.Dprint(4, "central_service.MarketListAck")
    buf = ''
    bidORoffer = None
    _MarketBids = []
    _MarketOffers = []
    for line in newpacket.Payload.splitlines():
        if line.startswith('begin bid'):
            bidORoffer = 'bid'
            continue
        if line.startswith('begin offer'):
            bidORoffer = 'offer'
            continue
        if line.startswith('end'):
            if bidORoffer == 'bid':
                _MarketBids.append(dhnio._unpack_dict(buf))
            elif bidORoffer == 'offer':
                _MarketOffers.append(dhnio._unpack_dict(buf))
            buf = ''
            continue
        buf += line + '\n'
    # dhnio.Dprint(4, '    bids:   ' + str(_MarketBids))
    # dhnio.Dprint(4, '    offers: ' + str(_MarketOffers))
    if OnMarketListFunc is not None:
        OnMarketListFunc()   
예제 #2
0
 def _saveRequestedSettings(self, newpacket):
     sd = dhnio._unpack_dict(newpacket.Payload)
     settings.uconfig().set('central-settings.needed-megabytes', sd.get('n', str(settings.DefaultNeededMb()))+'MB')
     settings.uconfig().set('central-settings.shared-megabytes', sd.get('d', str(settings.DefaultDonatedMb()))+'MB')
     settings.uconfig().set('central-settings.desired-suppliers', sd.get('s', '2'))
     settings.uconfig().set('emergency.emergency-email', sd.get('e1', ''))
     settings.uconfig().set('emergency.emergency-phone', sd.get('e2', ''))
     settings.uconfig().set('emergency.emergency-fax', sd.get('e3', ''))
     settings.uconfig().set('emergency.emergency-text', sd.get('e4', '').replace('<br>', '\n'))
     settings.uconfig().update()
     reactor.callLater(0, self.automat, 'request-settings-ack', newpacket)