Changeset 2371

Show
Ignore:
Timestamp:
07/31/07 00:47:42 (1 year ago)
Author:
abaumann
Message:

move common event init code out of PhoneEventSimpleMoto? constructor,
because python won't let us cheat and call it on the "wrong" class in
the extended event init path (Issue #523)

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • plugins/moto-sync/motosync.py

    r2360 r2371  
    13491349 
    13501350 
     1351def moto_event_simple_init(event, data, exceptions): 
     1352    """grab stuff out of the list of values from the phone""" 
     1353    assert(type(data) == list and len(data) >= 10) 
     1354    event.pos = data[0] 
     1355    event.name = data[1] 
     1356    timeflag = data[2] 
     1357    alarmflag = data[3] 
     1358    timestr = data[4] 
     1359    datestr = data[5] 
     1360    event.duration = timedelta(0, 0, 0, 0, data[6]) 
     1361    alarmtime = data[7] 
     1362    alarmdate = data[8] 
     1363    event.repeat_type = data[9] 
     1364    event.exceptions = exceptions 
     1365    event.exceptions.sort() # just in case 
     1366 
     1367    if timeflag: 
     1368        event.eventdt = parse_moto_time(datestr, timestr) 
     1369    else: 
     1370        event.eventdt = parse_moto_time(datestr) 
     1371 
     1372    if alarmflag: 
     1373        event.alarmdt = parse_moto_time(alarmdate, alarmtime) 
     1374    else: 
     1375        event.alarmdt = None 
     1376 
    13511377class PhoneEventSimpleMoto(PhoneEventSimple): 
    13521378    """Constructor for the PhoneEventSimple object with data in Motorola format""" 
    13531379    def __init__(self, data, exceptions): 
    1354         """grab stuff out of the list of values from the phone""" 
    13551380        PhoneEventSimple.__init__(self) 
    1356         assert(type(data) == list and len(data) >= 10) 
    1357         self.pos = data[0] 
    1358         self.name = data[1] 
    1359         timeflag = data[2] 
    1360         alarmflag = data[3] 
    1361         timestr = data[4] 
    1362         datestr = data[5] 
    1363         self.duration = timedelta(0, 0, 0, 0, data[6]) 
    1364         alarmtime = data[7] 
    1365         alarmdate = data[8] 
    1366         self.repeat_type = data[9] 
    1367         self.exceptions = exceptions 
    1368         self.exceptions.sort() # just in case 
    1369  
    1370         if timeflag: 
    1371             self.eventdt = parse_moto_time(datestr, timestr) 
    1372         else: 
    1373             self.eventdt = parse_moto_time(datestr) 
    1374  
    1375         if alarmflag: 
    1376             self.alarmdt = parse_moto_time(alarmdate, alarmtime) 
    1377         else: 
    1378             self.alarmdt = None 
     1381        moto_event_simple_init(self, data, exceptions) 
    13791382 
    13801383 
     
    15101513 
    15111514        # reuse simple constructor to initialise common fields 0-9 
    1512         PhoneEventSimpleMoto.__init__(self, data, exceptions) 
     1515        moto_event_simple_init(self, data, exceptions) 
    15131516 
    15141517        endtime = data[10]