Beispiel #1
0
	def constructor(name,startIp,endIp,netmask,gw,dns1,dns2,isGlobal=True,save=True):
		self = Ip4Range()
		try:
			#Default constructor
			IP4Utils.checkValidIp(startIp) 
			IP4Utils.checkValidIp(endIp) 
			IP4Utils.checkValidNetmask(netmask)
			IP4Utils.checkValidIp(gw)
			IP4Utils.checkValidIp(dns1)
			if not dns2 == "": 
				IP4Utils.checkValidIp(dns2)
		
			self.name = name
			self.isGlobal= isGlobal
			self.startIp = startIp
			self.endIp = endIp
			self.netMask = netmask
			self.gw = gw
			self.dns1 = dns1
			if not dns2 == "":
				self.dns2 = dns2


			#Create an iterator
			it= IP4Utils.getIpIterator(self.startIp,self.endIp,self.netMask)
			self.nextAvailableIp = it.getNextIp()

			#Number of Slots
			try:
				self.numberOfSlots = IP4Utils.getNumberOfSlotsInRange(startIp,endIp,netmask)
			except Exception as e:
				print "Exception doing slot calculation"+str(e)	
				self.numberOfSlots = -1		
	
			self.doSave = save
			if save:
				self.save()
		except Exception as e:
			#self.delete()
			raise e
		return self