509318396
Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­
<!DOCTYPE html>
<html>
3
í«„^  ã               @   sH   d dl Z ddlmZmZ ddlmZ ddlmZ G dd„ deeeƒZdS )é    Né   )ÚMatchContextÚ	MatchName)ÚPolicyQuery)Úmatch_regexc                   sF   e Zd ZdZdZedd„ ƒZejdd„ ƒZ‡ fdd„Zdd	„ Z	‡  Z
S )
ÚIbendportconQueryav  
    Infiniband endport context query.

    Parameter:
    policy          The policy to query.

    Keyword Parameters/Class attributes:
    name            The name of the network interface to match.
    name_regex      If true, regular expression matching will
                    be used for matching the name.
    port            The port number to match.
    user            The criteria to match the context's user.
    user_regex      If true, regular expression matching
                    will be used on the user.
    role            The criteria to match the context's role.
    role_regex      If true, regular expression matching
                    will be used on the role.
    type_           The criteria to match the context's type.
    type_regex      If true, regular expression matching
                    will be used on the type.
    range_          The criteria to match the context's range.
    range_subset    If true, the criteria will match if it is a subset
                    of the context's range.
    range_overlap   If true, the criteria will match if it overlaps
                    any of the context's range.
    range_superset  If true, the criteria will match if it is a superset
                    of the context's range.
    range_proper    If true, use proper superset/subset operations.
                    No effect if not using set operations.
    Nc             C   s   | j S )N)Ú_port)Úself© r
   ú)/usr/lib64/python3.6/ibendportconquery.pyÚport=   s    zIbendportconQuery.portc             C   s>   |r4t |ƒ}d|  k odk n  s,tdƒ‚|| _nd | _d S )Nr   é   zEndport value must be 1-255.)ÚintÚ
ValueErrorr   )r	   ÚvalueZpending_valuer
   r
   r   r   A   s    c                s$   t t| ƒj|f|Ž tjtƒ| _d S )N)Úsuperr   Ú__init__ÚloggingZ	getLoggerÚ__name__Úlog)r	   ÚpolicyÚkwargs)Ú	__class__r
   r   r   L   s    zIbendportconQuery.__init__c             c   sœ   | j jdj| ƒƒ | j| j ƒ | j jdj| ƒƒ | j| j ƒ xZ| jjƒ D ]L}| jrht	|j| j| j
ƒ rhqH| jdk	r€| j|jkr€qH| j|jƒsŽqH|V  qHW dS )z2Generator which yields all matching ibendportcons.z/Generating ibendportcon results from {0.policy}zPort: {0.port!r}N)r   ÚinfoÚformatZ_match_name_debugÚdebugZ_match_context_debugr   ZibendportconsÚnamer   Z
name_regexr   Z_match_contextÚcontext)r	   Zendportr
   r
   r   ÚresultsP   s    
zIbendportconQuery.results)r   Ú
__module__Ú__qualname__Ú__doc__r   Úpropertyr   Úsetterr   r   Ú__classcell__r
   r
   )r   r   r      s   r   )	r   Zmixinsr   r   Zqueryr   Úutilr   r   r
   r
   r
   r   Ú<module>   s   