3 \¼meØ ã @ sT d dl mZ d dlmZmZmZ G dd„ deƒZG dd„ deƒZG dd„ deƒZd S ) é )Ú BootProtoEnum)ÚNicBaseÚStaticIpv4BaseÚStaticIpv6Basec @ sˆ e Zd ZdZdd„ Zdd„ Zdd„ Zedd „ ƒZed d„ ƒZ edd „ ƒZ edd„ ƒZedd„ ƒZedd„ ƒZ edd„ ƒZedd„ ƒZdS )ÚNiczd Holds the information about each NIC specified in the customization specification file c C s || _ || _d S )N)Ú_nameÚ_configFile)ÚselfÚnameZ configFile© r ú/usr/lib/python3.6/nic.pyÚ__init__ s zNic.__init__c C s | j j| jd | d ƒS )Nú|)r Úgetr )r Zwhatr r r Ú_get s zNic._getc C s | j j| j| ƒS )N)r Zget_count_with_prefixr )r Úprefixr r r Ú_get_count_with_prefix s zNic._get_count_with_prefixc C s | j S )N)r )r r r r r s zNic.namec C s | j dƒjƒ S )NZMACADDR)r Úlower)r r r r Úmac$ s zNic.macc C s. | j dƒ}|r&|jƒ }|dkp$|dkS dS d S )NZPRIMARYÚyesÚtrueF)r r )r Úvaluer r r Úprimary( s zNic.primaryc C s. | j dƒ}|r&|jƒ }|dkp$|dkS dS d S )NZONBOOTr r F)r r )r r r r r Úonboot1 s z Nic.onbootc C s | j dƒ}|r|jƒ S dS d S )NZ BOOTPROTOÚ )r r )r r r r r Ú bootProto: s z Nic.bootProtoc C s | j dƒ}|r|jƒ S dS d S )NZ IPv4_MODEr )r r )r r r r r Ú ipv4_modeB s z Nic.ipv4_modec C s | j tjkrt| ƒgS dS dS )z‡ Checks the BOOTPROTO property and returns StaticIPv4Addr configuration object if STATIC configuration is set. N)r r ZSTATICÚStaticIpv4Addr)r r r r Ú staticIpv4J s zNic.staticIpv4c C sB | j dƒ}|sd S g }x&td|d ƒD ]}|jt| |ƒƒ q&W