o
    È·eÁ  ã                   @   sP   d Z ddlmZ ddlmZ G dd„ deƒZG dd„ deƒZG dd	„ d	eƒZd
S )z
Represents a Route Table
é    )ÚTaggedEC2Object)Ú	ResultSetc                       s:   e Zd Zd
‡ fdd„	Zdd„ Z‡ fdd„Zdd	„ Z‡  ZS )Ú
RouteTableNc                    s,   t t| ƒ |¡ d | _d | _g | _g | _d S ©N)Úsuperr   Ú__init__ÚidÚvpc_idÚroutesÚassociations©ÚselfÚ
connection©Ú	__class__© úJ/var/www/ideatree/venv/lib/python3.10/site-packages/boto/vpc/routetable.pyr      s
   
zRouteTable.__init__c                 C   ó
   d| j  S )NzRouteTable:%s©r   ©r   r   r   r   Ú__repr__&   ó   
zRouteTable.__repr__c                    s`   t t| ƒ |||¡}|d ur|S |dkrtdtfgƒ| _| jS |dkr.tdtfgƒ| _| jS d S )NÚrouteSetÚitemÚassociationSet)r   r   ÚstartElementr   ÚRouter
   ÚRouteAssociationr   )r   ÚnameÚattrsr   Úresultr   r   r   r   )   s   zRouteTable.startElementc                 C   s4   |dkr	|| _ d S |dkr|| _d S t| ||ƒ d S )NÚrouteTableIdÚvpcId)r   r	   Úsetattr©r   r   Úvaluer   r   r   r   Ú
endElement9   s
   

zRouteTable.endElementr   )Ú__name__Ú
__module__Ú__qualname__r   r   r   r&   Ú__classcell__r   r   r   r   r      s
    r   c                   @   ó.   e Zd Zd
dd„Zdd„ Zdd„ Zdd	„ ZdS )r   Nc                 C   s.   d | _ d | _d | _d | _d | _d | _d | _d S r   ©Údestination_cidr_blockÚ
gateway_idÚinstance_idÚinterface_idÚvpc_peering_connection_idÚstateÚoriginr   r   r   r   r   B   s   
zRoute.__init__c                 C   r   )NzRoute:%s)r-   r   r   r   r   r   K   r   zRoute.__repr__c                 C   ó   d S r   r   ©r   r   r   r   r   r   r   r   N   ó   zRoute.startElementc                 C   s‚   |dkr	|| _ d S |dkr|| _d S |dkr|| _d S |dkr$|| _d S |dkr-|| _d S |dkr6|| _d S |dkr?|| _d S d S )NÚdestinationCidrBlockÚ	gatewayIdÚ
instanceIdÚnetworkInterfaceIdÚvpcPeeringConnectionIdr2   r3   r,   r$   r   r   r   r&   Q   s   






ÿzRoute.endElementr   ©r'   r(   r)   r   r   r   r&   r   r   r   r   r   A   s
    
	r   c                   @   r+   )r   Nc                 C   s   d | _ d | _d | _d| _d S )NF©r   Úroute_table_idÚ	subnet_idÚmainr   r   r   r   r   b   s   
zRouteAssociation.__init__c                 C   r   )NzRouteAssociation:%sr   r   r   r   r   r   h   r   zRouteAssociation.__repr__c                 C   r4   r   r   r5   r   r   r   r   k   r6   zRouteAssociation.startElementc                 C   sP   |dkr	|| _ d S |dkr|| _d S |dkr|| _d S |dkr&|dk| _d S d S )NÚrouteTableAssociationIdr!   ÚsubnetIdr@   Útruer=   r$   r   r   r   r&   n   s   


ÿzRouteAssociation.endElementr   r<   r   r   r   r   r   a   s
    
r   N)	Ú__doc__Úboto.ec2.ec2objectr   Úboto.resultsetr   r   Úobjectr   r   r   r   r   r   Ú<module>   s   $ 