
    Vh                    b    d dl mZ d dlZd dlmZmZ d dlmZ  G d dee      Z G d de      Z	y)	    )annotationsN)VirtualVirtualCollector)VirtualSysctlDetectionMixinc                      e Zd ZdZdZd Zy)FreeBSDVirtualzy
    This is a FreeBSD-specific subclass of Virtual.  It defines
    - virtualization_type
    - virtualization_role
    FreeBSDc                   i }t               }t               }d|d<   d|d<   t        j                  j                  d      r|j	                  d       d|d<   d|d<   | j                  d      }|j                  |d          |j                  |d	          | j                  d
      }|j                  |d          |j                  |d	          | j                  d      }|j                  |d          |j                  |d	          |d   dk(  r|xs |xs |}|j                  |       | j                  d      }|j                  |d          |j                  |d	          |d   dk(  r|j                  |       ||d<   ||d	<   |S )N virtualization_typevirtualization_rolez/dev/xen/xenstorexenguestzkern.vm_guestvirtualization_tech_guestvirtualization_tech_hostzhw.hv_vendorzsecurity.jail.jailedzhw.model)setospathexistsadddetect_virt_productupdatedetect_virt_vendor)	selfvirtual_facts	host_tech
guest_techkern_vm_guesthw_hv_vendorsec_jail_jailedsysctlvirtual_vendor_factss	            Z/home/dcms/DCMS/lib/python3.12/site-packages/ansible/module_utils/facts/virtual/freebsd.pyget_virtual_factsz FreeBSDVirtual.get_virtual_facts    s   E	U
 02+,/1+,77>>-.NN5!38M/03:M/000A-(CDE'ABC//?,'BCD&@AB223IJ/*EFG)CDE./25"ElEoF   (#66zB./JKL-.HIJ./25  !565?124=01    N)__name__
__module____qualname____doc__platformr$    r%   r#   r   r      s    
 H)r%   r   c                      e Zd ZeZdZy)FreeBSDVirtualCollectorr	   N)r&   r'   r(   r   _fact_class	_platformr+   r%   r#   r-   r-   L   s     KIr%   r-   )

__future__r   r   'ansible.module_utils.facts.virtual.baser   r   )ansible.module_utils.facts.virtual.sysctlr   r   r-   r+   r%   r#   <module>r3      s0     # 	 M Q1W9 1h. r%   