Newer
Older
Import / projects / LGN-IP3870 / t / new / telephoneNumberPolicy.py
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