@@ -615,13 +615,17 @@ def to_intermediate(self):
615615class Wireless (AirOsConverter ):
616616 netjson_key = 'interfaces'
617617
618+ @property
619+ def wireless (self ):
620+ """
621+ Return all the wireless interfaces
622+ """
623+ return wireless (get_copy (self .netjson , 'interfaces' , []))
624+
618625 def to_intermediate (self ):
619626 result = []
620- original = [
621- i for i in get_copy (self .netjson , self .netjson_key , []) if i ['type' ] == 'wireless'
622- ]
623627 wireless_list = []
624- for w in original :
628+ for w in self . wireless :
625629 wireless_list .append ({
626630 'addmtikie' : 'enabled' ,
627631 'devname' : radio (w ),
@@ -655,6 +659,13 @@ def to_intermediate(self):
655659class Wpasupplicant (AirOsConverter ):
656660 netjson_key = 'interfaces'
657661
662+ @property
663+ def wireless (self ):
664+ """
665+ Return all the wireless interfaces
666+ """
667+ return wireless (get_copy (self .netjson , 'interfaces' , []))
668+
658669 def _station_intermediate (self , original ):
659670 station_auth_protocols = available_mode_authentication ['station' ]
660671 temp_dev = {
@@ -733,11 +744,10 @@ def secondary_network(self):
733744 }
734745
735746 def to_intermediate (self ):
736- original = [
737- i for i in get_copy (self .netjson , self .netjson_key , []) if i ['type' ] == 'wireless'
738- ]
739- if original :
740- head = original [0 ]
747+ try :
748+ head = self .wireless [0 ]
741749 # call either ``_station_intermediate`` or ``_access_point_intermediate``
742750 # and return the result
743- return getattr (self , '_%s_intermediate' % head ['wireless' ]['mode' ])(original )
751+ return getattr (self , '_%s_intermediate' % head ['wireless' ]['mode' ])(self .wireless )
752+ except IndexError :
753+ raise Warning ('Zero wireless interface found' )
0 commit comments