+
     [;i  c                   s     ! R  R] 4      tR# )c                   sZ   a  ] tR t^t o R tR tR tR tR tR t	R t
]R 4       tR	tV tR
# )IPackageManagerc                    \         h)z9This class is 'interface' so you can't create an instanceZNotImplementedError)selfZkwargss   &,K/usr/lib/python3.14/site-packages/tracer/packageManagers/ipackageManager.py__init__ZIPackageManager.__init__           c                r   )z
Returns list of packages which were modified between unix_time and present
Packages in list should be dictionaries with keys {"name", "modified"}
r   )r   Z	unix_time   &&r   packages_newer_thanZ#IPackageManager.packages_newer_than   s
    
 	r   c                r   )z)Returns list of files provided by packager   )r   pkg_namer   r   package_filesZIPackageManager.package_files!   r   r   c                r   )zFFrom database load informations about given package and set them to itr   )r   Zpackager   r   load_package_infoZ!IPackageManager.load_package_info%   r   r   c                r   )z8Returns name of package which provides given applicationr   )r   Zappr   r   provided_byZIPackageManager.provided_by)   r   r   c                r   )z4Find a package by name and some other input criteriar   )r   r
   Zsearch   &&&r   find_packageZIPackageManager.find_package-   r   r   c                r   )z
Compares two packages by their version information
Returns:
0 if they are equal
1 if package1 > package2
-1 if package2 > package1
r   )r   Zpackage1Zpackage2r   r   compare_packagesZ IPackageManager.compare_packages1   s
     	r   c                s|     V R V P                  R4       p V R V P                  R4       p V #   \         d     T # i ; i)NZ.Z-)ZindexZrindexZ
ValueError)r
   s   &r   _pkg_name_without_versionZ)IPackageManager._pkg_name_without_version;   sN    +s+,8,,-8	/ 
T	/ s   (, ;; N)Z__name__Z
__module__Z__qualname__Z__firstlineno__r   r	   r   r   r   r   r   Zstaticmethodr   Z__static_attributes__Z__classdictcell__)Z__classdict__s   @r   r    r       s<       r   r    N)Zobjectr    r   r   r   <module>r      s   (-f -r   