Beispiel #1
0
    def _setDetailText(self):
        text = ""
        for service in self._nm.getServices():
            if service.connected():
                if text:
                    text = "\n\n%s" % (text)

                text = "%s" % (service.name())
                Log.w(service.wol())
                if service.wol() != eNetworkService.WAKE_FLAG_NEVER:
                    Log.w(service.wol())
                    text = "%s (Wake-on-Lan enabled)" % (text, )
                text = "%s\n\n" % (text, )
                ni = NetworkInterface(service)

                ip4 = ni.getIpv4()
                ip6 = ni.getIpv6()
                iptext = _(
                    "%s IPv%s\n  Address: %s\n  %s: %s\n  Gateway: %s\n\n")
                #IPv4
                if ip4.method != eNetworkService.METHOD_OFF:
                    addr = ip4.address
                    mask = ip4.netmask
                    gw = ip4.gateway
                    text = iptext % (
                        text,
                        4,
                        addr,
                        _("Netmask"),
                        mask,
                        gw,
                    )
                #IPv6
                if ip6.method != eNetworkService.METHOD_OFF:
                    addr = ip6.address
                    mask = ip6.netmask
                    gw = ip6.gateway
                    text = iptext % (
                        text,
                        6,
                        addr,
                        _("Prefix length"),
                        mask,
                        gw,
                    )
                ns = self._textFormatIpList(service.nameservers())
                text = _("%sName server\n%s\n") % (text, ns)
                ts = self._textFormatIpList(service.timeservers())
                text = _("%s\nTime server\n%s\n") % (text, ts)

                mac = ni.ethernet.mac
                text = ("%s\n" + _("Hardware address") + "\n%s\n") % (text,
                                                                      mac)
                break
        self["details"].setText(text)
Beispiel #2
0
	def _setDetailText(self):
		text = ""
		for service in self._nm.getServices():
			if service.connected():
				if text:
					text = "\n\n%s" %(text)

				text = "%s\n\n" %(service.name())
				ni = NetworkInterface(service)

				ip4 = ni.getIpv4()
				ip6 = ni.getIpv6()
				iptext = _("%s IPv%s\n  Address: %s\n  %s: %s\n  Gateway: %s\n\n")
				#IPv4
				if ip4.method != eNetworkService.METHOD_OFF:
					addr = ip4.address
					mask = ip4.netmask
					gw = ip4.gateway
					text = iptext %(
							text,
							4,
							addr,
							_("Netmask"),
							mask,
							gw,
						)
				#IPv6
				if ip6.method != eNetworkService.METHOD_OFF:
					addr = ip6.address
					mask = ip6.netmask
					gw = ip6.gateway
					text = iptext %(
							text,
							6,
							addr,
							_("Prefix length"),
							mask,
							gw,
						)
				ns = self._textFormatIpList( service.nameservers() )
				text = _("%sNameserver\n%s\n") %(text, ns)
				ts = self._textFormatIpList( service.timeservers() )
				text = _("%s\nTimeserver\n%s\n") %(text, ts)

				mac = ni.ethernet.mac
				text = ("%s\n" + _("Hardware address") + "\n%s\n") %(text, mac)
				break
		self["details"].setText(text)
Beispiel #3
0
    def prerequisiteMet(self, prerequisites):

        # TODO: we need to implement a hardware detection here...
        print "prerequisites:", prerequisites
        met = True
        if self.neededTag is None:
            if prerequisites.has_key("tag"):
                return False
        elif self.neededTag == 'ALL_TAGS':
            return True
        else:
            if prerequisites.has_key("tag"):
                if not self.neededTag in prerequisites["tag"]:
                    return False
            else:
                return False

        if self.neededFlag is None:
            if prerequisites.has_key("flag"):
                return False
        else:
            if prerequisites.has_key("flag"):
                if not self.neededFlag in prerequisites["flag"]:
                    return False
            else:
                return True  # No flag found, assuming all flags valid

        if prerequisites.has_key("satellite"):
            for sat in prerequisites["satellite"]:
                if int(sat) not in nimmanager.getConfiguredSats():
                    return False
        if prerequisites.has_key("bcastsystem"):
            has_system = False
            for bcastsystem in prerequisites["bcastsystem"]:
                if nimmanager.hasNimType(bcastsystem):
                    has_system = True
            if not has_system:
                return False
        if prerequisites.has_key("hardware"):
            hardware_found = False
            for hardware in prerequisites["hardware"]:
                if hardware == self.hardware_info.device_name:
                    hardware_found = True
            if not hardware_found:
                return False
        if prerequisites.has_key("eth0mac"):
            nm = eNetworkManager.getInstance()
            for service in nm.getServices():
                ethernet = NetworkInterface(service).ethernet
                if ethernet.interface == "eth0":
                    if ethernet.mac != prerequisites["eth0mac"]:
                        return False
        return True
Beispiel #4
0
 def _updateSummary(self):
     text = ""
     service = self._currentService
     if not service:
         self["summary_list"].setText(text)
         return
     if isinstance(service, eNetworkServicePtr):
         text = service.name()
         if service.connected():
             ni = NetworkInterface(service)
             ip = ni.getIpv4()
             if not ip:
                 ip = ni.getIpv6()
             if ip:
                 ip = ip.address
             else:
                 ip = self.translateState(service.state())
             text = "%s\n%s" % (text, ip)
         else:
             text = "%s\n%s" % (text, self.translateState(service.state()))
     else:
         powered = _("On") if service.powered() else _("Off")
         text = "%s - %s" % (service.name(), powered)
     self["summary_list"].setText(text)
Beispiel #5
0
	def _updateSummary(self):
		text = ""
		service = self._currentService
		if not service:
			self["summary_list"].setText(text)
			return
		if isinstance(service, eNetworkServicePtr):
			text = service.name()
			if service.connected():
				ni = NetworkInterface(service)
				ip = ni.getIpv4()
				if not ip:
					ip = ni.getIpv6()
				if ip:
					ip = ip.address
				else:
					ip = self.translateState(service.state())
				text = "%s\n%s" %(text, ip)
			else:
				text = "%s\n%s" %(text, self.translateState(service.state()))
		else:
			powered = _("On") if service.powered() else _("Off")
			text = "%s - %s" %(service.name(), powered)
		self["summary_list"].setText(text)
 def getServiceIF(self, service):
     key = None
     if service.state() == eNetworkManager.STATE_ONLINE:
         iface = NetworkInterface(service)
         key = iface.ethernet.interface
     return key