a h@sPddlZddlZddlmZdgZejZGdddeZ GdddeZ dS)N)consts Inventoryc@s\eZdZdZdddZddZdd Zd d Zd d ZddZ ddZ ddZ dddZ dS)rz Inventory object can handle information about available hardware devices. It also informs the plugins about related hardware events. NTcCs|dur||_n t|_|dur(tj}||j|_|durDtj}|rvz|j|Wnt ytt dYn0|durt }||_ d|_i|_dS)Nzcannot set udev monitor receive buffer size, we are probably running inside container or with limited capabilites, TuneD functionality may be limited) _udev_contextpyudevZContextZMonitorZ from_netlink _udev_monitorrZCFG_DEF_UDEV_BUFFER_SIZEset_receive_buffer_sizeEnvironmentErrorlogZwarning_MonitorObserverFactory_monitor_observer_factory_monitor_observer_subscriptions)selfZ udev_contextZudev_monitor_clsZmonitor_observer_factoryZ buffer_sizerrs   q