class TelephoneNumberPolicy: ONE_NUMBER_BRIDGE = 1 TWO_NUMBER_PERSONALIZATION = 2 BASE = 0 TS1 = 1 TS2 = 2 def __init__(self): self.currentMode = self.ONE_NUMBER_BRIDGE self.telephoneNumber1 = TelephoneNumber() self.telephoneNumber1.setNumber(2000) self.telephoneNumber1.addDevice(self.BASE) self.telephoneNumber1.addDevice(self.TS1) self.telephoneNumber2 = TelephoneNumber() def getCurrentMode(self): return self.currentMode def setCurrentMode(self, currentMode): self.currentMode = currentMode def getTelephoneNumber1(self): return self.telephoneNumber1 def setTelephoneNumber1(self, telephoneNumber1): self.telephoneNumber1 = telephoneNumber1 def getTelephoneNumber2(self): return self.telephoneNumber2 def setTelephoneNumber2(self, telephoneNumber2): self.telephoneNumber2 = telephoneNumber2 def TS1_isFeasible(self): if self.telephoneNumber1.TS1_isFeasible() and self.telephoneNumber2.TS1_isFeasible(): return True else: return False def TS2_isFeasible(self): if self.telephoneNumber1.TS2_isFeasible() and self.telephoneNumber2.TS2_isFeasible(): return True else: return False class TelephoneNumber: def __init__(self): self.number = None self.devices = [] self.vdciConfigPath = None def getNumber(self): return self.number def setNumber(self, number): self.number = number def getDevices(self): return self.devices def setDevices(self, devices): self.devices = devices def addDevice(self, device): self.devices.append(device) def getVdciConfigPath(self): return self.vdciConfigPath def setVdciConfigPath(self, vdciConfigPath): self.vdciConfigPath = vdciConfigPath def deleteDevice(self, device): self.devices.remove(device) def TS1_isFeasible(self): if TelephoneNumberPolicy.TS1 in devies: if TelephoneNumberPolicy.BASE in devices: return False else: return True else: return True def TS2_isFeasible(self): if TelephoneNumberPolicy.TS2 in devies: if TelephoneNumberPolicy.BASE in devices: return False else: return True else: return True