File: //lib/python3.6/site-packages/cloudinit/sources/helpers/vmware/imc/__pycache__/nic.cpython-36.pyc
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 |S )Nz
|IPv6ADDR|� )r �range�append�StaticIpv6Addr)r Zcnt�result�indexr r r �
staticIpv6U s
zNic.staticIpv6N)�__name__�
__module__�__qualname__�__doc__r
r r �propertyr
r r r r r r r% r r r r r s r c @ s<