+
     _iQ  c                   sH   ^ RI Ht ]! ]! 4       P                  R4      RR4      '       g$   ]! 4       P                  R4      '       g   R]9   d   ^RIHt M^ RIt ^ RI	t
R tR	 tR
 tR t ! R R]4      t^ RIt^RIHt ^RIHt  ! R R]4      t]P.                  ! ]4        ! R R]4      t]P2                  ! ]4        ! R R]4      t]P6                  ! ]4        ! R R]4      t]P:                  ! ]4        ! R R]4      t]P>                  ! ]4        ! R R]4      t ]PB                  ! ] 4        ! R R]4      t"]PF                  ! ]"4        ! R R]4      t$]PJ                  ! ]$4        ! R  R!]4      t&]PN                  ! ]&4       R" t(R# t)R#   ] d	    ^ RI
t
 ELBi ; i)$    )version_infoZ__spec__ZparentNZ__package__.)_loggerc                 s     R V P                   P                  4       ,           pRV P                  P
                  : RV P                  P                  : RV: R2#   \        P                   d    Rp LPi ; i)z	proxy of  Z<r   z; z >)this__repr____builtin__Z	Exception	__class__
__module____name__)selfZstrthis   & 5/usr/lib64/python3.14/site-packages/libdnf5/logger.py
_swig_reprr      s_    		 2 2 44 "^^668O8OQXZZ    s   !A A43A4c                    a  V 3R  lpV# )c                 s  < VR 8X  d   S! WV4       R# VR8X  d   V P                   P                  V4       R# \        W4      '       d5   \        \	        \        V 4      V4      \        4      '       d   S! WV4       R# \        RV ,          4      h)r   thisownz(You cannot add instance attributes to %sN)r   ownhasattr
isinstancegetattrtypepropertyAttributeError)r   namevalueset   &&&r   set_instance_attrZE_swig_setattr_nondynamic_instance_variable.<locals>.set_instance_attr   si    6>E"YIIMM% T  ZT
D0I8%T%TE" !Kd!RSS     )r   r      f r   *_swig_setattr_nondynamic_instance_variabler       s    T r   c                 r   )c                 s   < \        W4      '       d+   \        \        W4      \        4      '       g   S! WV4       R# \	        R V ,          4      h)z%You cannot add class attributes to %sN)r   r   r   r   r   )clsr   r   r   r   r   set_class_attrZ?_swig_setattr_nondynamic_class_variable.<locals>.set_class_attr)   s:    3j1CX&N&N5! !H3!NOOr   r   )r   r"   r   r   '_swig_setattr_nondynamic_class_variabler#   (   s    P
 r   c                s   a  V 3R lpV# )zlClass decorator for adding a metaclass to a SWIG wrapped class - a slimmed down version of six.add_metaclassc                 sp   < S! V P                   V P                  V P                  P                  4       4      # N)r
   Z	__bases__Z__dict__Zcopy)r!   	metaclasss   &r   wrapperZ$_swig_add_metaclass.<locals>.wrapper3   s'    s}}cll6G6G6IJJr   r   )r%   r&   r   r   _swig_add_metaclassr'   1   s    KNr   c                   s>    ] tR t^8tRt]! ]P                  4      tRtR# )_SwigNonDynamicMetazKMeta class to enforce nondynamic attributes (no new attributes) for a classr   N)	r
   r	   __qualname____firstlineno____doc__r#   r   Z__setattr____static_attributes__r   r   r   r(   r(   8   s    U9$:J:JKKr   r(   )common)	exceptionc                   s   a  ] tR t^At o ]! R R RR7      t]tR tR t	R t
RR	 ltR
 tR tR t]t]P"                  tR tR tR tR tR tR tR tR tR tR tR tRtV tR# )LoggerUniquePtrc                6    V P                   P                  4       # r$   r   r   x   &r   <lambda>LoggerUniquePtr.<lambda>B       r   c                8    V P                   P                  V4      # r$   r1   r3   Zv   &&r   r5   r6   B       AFFJJqMr   The membership flagZdocc                X    \         P                  ! V \         P                  ! V!  4       R # r$   )r   ZLoggerUniquePtr_swiginitZnew_LoggerUniquePtrr   args   &*r   __init__ZLoggerUniquePtr.__init__E   s    ((w/J/JD/QRr   c                .    \         P                  ! V 4      # r$   )r   ZLoggerUniquePtr___deref__r   r4   r   	__deref__ZLoggerUniquePtr.__deref__H       0066r   c                rC   r$   )r   ZLoggerUniquePtr_releaserD   r4   r   releaseZLoggerUniquePtr.releaseK   s    ..t44r   Nc                .    \         P                  ! W4      # r$   )r   ZLoggerUniquePtr_reset)r   Z_LoggerUniquePtr__pr:   r   resetZLoggerUniquePtr.resetN       ,,T77r   c                rH   r$   )r   ZLoggerUniquePtr_swap)r   Z_LoggerUniquePtr__ur:   r   swapZLoggerUniquePtr.swapQ       ++D66r   c                rC   r$   )r   ZLoggerUniquePtr_getrD   r4   r   getZLoggerUniquePtr.getT   s    **400r   c                rC   r$   )r   ZLoggerUniquePtr___nonzero__rD   r4   r   __nonzero__ZLoggerUniquePtr.__nonzero__W   s    22488r   c                rH   r$   )r   ZLoggerUniquePtr_level_to_cstrr   levelr:   r   level_to_cstrZLoggerUniquePtr.level_to_cstr^   s    44TAAr   c                0    \         P                  ! WV4      # r$   )r   ZLoggerUniquePtr_log_liner   rP   message   &&&r   log_lineZLoggerUniquePtr.log_linea   s    //WEEr   c                2    \         P                  ! WW#V4      # r$   )r   ZLoggerUniquePtr_writer   ZtimeZpidrP   rT      &&&&&r   writeZLoggerUniquePtr.writed   s    ,,TWMMr   c                rH   r$   )r   ZLoggerUniquePtr_criticalr   msgr:   r   criticalZLoggerUniquePtr.criticalg       //::r   c                rH   r$   )r   ZLoggerUniquePtr_errorr[   r:   r   errorZLoggerUniquePtr.errorj   rJ   r   c                rH   r$   )r   ZLoggerUniquePtr_warningr[   r:   r   warningZLoggerUniquePtr.warningm       ..t99r   c                rH   r$   )r   ZLoggerUniquePtr_noticer[   r:   r   noticeZLoggerUniquePtr.noticep       --d88r   c                rH   r$   )r   ZLoggerUniquePtr_infor[   r:   r   infoZLoggerUniquePtr.infos   rL   r   c                rH   r$   )r   ZLoggerUniquePtr_debugr[   r:   r   debugZLoggerUniquePtr.debugv   rJ   r   c                rH   r$   )r   ZLoggerUniquePtr_tracer[   r:   r   traceZLoggerUniquePtr.tracey   rJ   r   c                rR   r$   )r   ZLoggerUniquePtr_logr   rP   r\   rU   r   logZLoggerUniquePtr.log|   s    **4<<r   r   r$   ) r
   r	   r)   r*   r   r   r   r   rB   rE   rG   rI   rK   rM   rN   __bool__r   Zdelete_LoggerUniquePtr__swig_destroy__rQ   rV   rZ   r]   r_   r`   rb   rd   re   rf   rh   r,   __classdictcell__Z__classdict__   @r   r/   r/   A   s     -/IOdeGHS758719H 55BFN;8:9788= =r   r/   c                   s   a  ] tR t^t o ]! R R RR7      t]tR tR t	R t
RR	 ltR
 tR tR t]t]P"                  tR tR tR tR tR tR tR tR tR tR tR tR tR tR t R t!Rt"V t#R# )MemoryBufferLoggerUniquePtrc                r0   r$   r1   r2   r4   r   r5   $MemoryBufferLoggerUniquePtr.<lambda>   r7   r   c                r8   r$   r1   r9   r:   r   r5   ro      r;   r   r<   r=   c                r>   r$   )r   Z$MemoryBufferLoggerUniquePtr_swiginitZnew_MemoryBufferLoggerUniquePtrr?   rA   r   rB   Z$MemoryBufferLoggerUniquePtr.__init__   s    44T7;b;bdh;ijr   c                rC   r$   )r   Z%MemoryBufferLoggerUniquePtr___deref__rD   r4   r   rE   Z%MemoryBufferLoggerUniquePtr.__deref__   s    <<TBBr   c                rC   r$   )r   Z#MemoryBufferLoggerUniquePtr_releaserD   r4   r   rG   Z#MemoryBufferLoggerUniquePtr.release   s    ::4@@r   Nc                rH   r$   )r   Z!MemoryBufferLoggerUniquePtr_reset)r   Z_MemoryBufferLoggerUniquePtr__pr:   r   rI   Z!MemoryBufferLoggerUniquePtr.reset       88CCr   c                rH   r$   )r   Z MemoryBufferLoggerUniquePtr_swap)r   Z_MemoryBufferLoggerUniquePtr__ur:   r   rK   Z MemoryBufferLoggerUniquePtr.swap       77BBr   c                rC   r$   )r   ZMemoryBufferLoggerUniquePtr_getrD   r4   r   rM   ZMemoryBufferLoggerUniquePtr.get   s    66t<<r   c                rC   r$   )r   Z'MemoryBufferLoggerUniquePtr___nonzero__rD   r4   r   rN   Z'MemoryBufferLoggerUniquePtr.__nonzero__   s    >>tDDr   c                rW   r$   )r   Z!MemoryBufferLoggerUniquePtr_writerX   rY   r   rZ   Z!MemoryBufferLoggerUniquePtr.write   s    88SQXYYr   c                rC   r$   )r   Z+MemoryBufferLoggerUniquePtr_get_items_countrD   r4   r   get_items_countZ+MemoryBufferLoggerUniquePtr.get_items_count   s    BB4HHr   c                rH   r$   )r   Z$MemoryBufferLoggerUniquePtr_get_itemr   Zitem_idxr:   r   get_itemZ$MemoryBufferLoggerUniquePtr.get_item   s    ;;DKKr   c                rC   r$   )r   Z!MemoryBufferLoggerUniquePtr_clearrD   r4   r   clearZ!MemoryBufferLoggerUniquePtr.clear   s    88>>r   c                rH   r$   )r   Z+MemoryBufferLoggerUniquePtr_write_to_loggerr   loggerr:   r   write_to_loggerZ+MemoryBufferLoggerUniquePtr.write_to_logger   s    BB4PPr   c                rH   r$   )r   Z)MemoryBufferLoggerUniquePtr_level_to_cstrrO   r:   r   rQ   Z)MemoryBufferLoggerUniquePtr.level_to_cstr   s    @@MMr   c                rR   r$   )r   Z$MemoryBufferLoggerUniquePtr_log_linerS   rU   r   rV   Z$MemoryBufferLoggerUniquePtr.log_line   s    ;;DQQr   c                rH   r$   )r   Z$MemoryBufferLoggerUniquePtr_criticalr[   r:   r   r]   Z$MemoryBufferLoggerUniquePtr.critical   s    ;;DFFr   c                rH   r$   )r   Z!MemoryBufferLoggerUniquePtr_errorr[   r:   r   r_   Z!MemoryBufferLoggerUniquePtr.error   rp   r   c                rH   r$   )r   Z#MemoryBufferLoggerUniquePtr_warningr[   r:   r   r`   Z#MemoryBufferLoggerUniquePtr.warning   s    ::4EEr   c                rH   r$   )r   Z"MemoryBufferLoggerUniquePtr_noticer[   r:   r   rb   Z"MemoryBufferLoggerUniquePtr.notice   s    99$DDr   c                rH   r$   )r   Z MemoryBufferLoggerUniquePtr_infor[   r:   r   rd   Z MemoryBufferLoggerUniquePtr.info   rq   r   c                rH   r$   )r   Z!MemoryBufferLoggerUniquePtr_debugr[   r:   r   re   Z!MemoryBufferLoggerUniquePtr.debug   rp   r   c                rH   r$   )r   Z!MemoryBufferLoggerUniquePtr_tracer[   r:   r   rf   Z!MemoryBufferLoggerUniquePtr.trace   rp   r   c                rR   r$   )r   ZMemoryBufferLoggerUniquePtr_logrg   rU   r   rh   ZMemoryBufferLoggerUniquePtr.log   s    66tCHHr   r   r$   )$r
   r	   r)   r*   r   r   r   r   rB   rE   rG   rI   rK   rM   rN   ri   r   Z"delete_MemoryBufferLoggerUniquePtrrj   rZ   rr   rt   ru   rx   rQ   rV   r]   r_   r`   rb   rd   re   rf   rh   r,   rk   rl   rm   r   rn   rn      s     -/IOdeGHkCADC=EH AAZIL?QNRGDFECDDI Ir   rn   c                   s  a  ] tR t^t o Rt]! R R RR7      t]tR t	]
P                  tR tR tR	 tR
 tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR t R t!R t"R t#R t$R t%R  t&R! t'R" t(R#t)V t*R$# )%LogRouterWeakPtra  
WeakPtr is a "smart" pointer. It contains a pointer to resource and to guard of resource.
WeakPtr pointer can be owner of the resource. However, the resource itself may depend on another resource.
WeakPtr registers/unregisters itself at the guard of resource. And the resource guard invalidates
the registered WeakPtrs when the resource is unusable (eg. its dependecny was released).
Note on thread safety:
It is safe to create, access and destroy WeakPtrs in multiple threads simultaneously.
c                r0   r$   r1   r2   r4   r   r5   LogRouterWeakPtr.<lambda>   r7   r   c                r8   r$   r1   r9   r:   r   r5   rz      r;   r   r<   r=   c                r>   r$   )r   ZLogRouterWeakPtr_swiginitZnew_LogRouterWeakPtrr?   rA   r   rB   ZLogRouterWeakPtr.__init__   s    ))$0L0Ld0STr   c                rC   )zRProvides access to the managed object. Generates exception if object is not valid.)r   ZLogRouterWeakPtr___deref__rD   r4   r   rE   ZLogRouterWeakPtr.__deref__   s    11$77r   c                rC   )zTReturns a pointer to the managed object. Generates exception if object is not valid.)r   ZLogRouterWeakPtr_getrD   r4   r   rM   ZLogRouterWeakPtr.get   s    ++D11r   c                rC   )z"Checks if managed object is valid.)r   ZLogRouterWeakPtr_is_validrD   r4   r   is_validZLogRouterWeakPtr.is_valid   s    0066r   c                rH   )z?Checks if the other WeakPtr instance has the same WeakPtrGuard.)r   ZLogRouterWeakPtr_has_same_guardr   Zotherr:   r   has_same_guardZLogRouterWeakPtr.has_same_guard   s    66tCCr   c                rC   r$   )r   ZLogRouterWeakPtr___ref__rD   r4   r   __ref__ZLogRouterWeakPtr.__ref__       //55r   c                rH   r$   )r   ZLogRouterWeakPtr___eq__r|   r:   r   __eq__ZLogRouterWeakPtr.__eq__       ..t;;r   c                rH   r$   )r   ZLogRouterWeakPtr___ne__r|   r:   r   __ne__ZLogRouterWeakPtr.__ne__   r   r   c                rH   r$   )r   ZLogRouterWeakPtr___lt__r|   r:   r   __lt__ZLogRouterWeakPtr.__lt__   r   r   c                rH   r$   )r   ZLogRouterWeakPtr___gt__r|   r:   r   __gt__ZLogRouterWeakPtr.__gt__   r   r   c                rH   r$   )r   ZLogRouterWeakPtr___le__r|   r:   r   __le__ZLogRouterWeakPtr.__le__   r   r   c                rH   r$   )r   ZLogRouterWeakPtr___ge__r|   r:   r   __ge__ZLogRouterWeakPtr.__ge__   r   r   c                rC   r$   )r   ZLogRouterWeakPtr___hash__rD   r4   r   __hash__ZLogRouterWeakPtr.__hash__  rF   r   c                rH   zSMoves (registers) the "logger" into the log router. It gets next free index number.)r   ZLogRouterWeakPtr_add_loggerrv   r:   r   
add_loggerZLogRouterWeakPtr.add_logger  s    224@@r   c                rH   z6Returns pointer to the logger at the "index" position.)r   ZLogRouterWeakPtr_get_loggerr   indexr:   r   
get_loggerZLogRouterWeakPtr.get_logger
  s    224??r   c                rH   z
Removes logger at the "index" position from LogRouter.
The array of the loggers is squeezed. Index of the loggers behind removed logger is decreased by one.
)r   ZLogRouterWeakPtr_release_loggerr   r:   r   release_loggerZLogRouterWeakPtr.release_logger  s    
 66tCCr   c                rR   z?Swaps the logger at the "index" position with another "logger".)r   ZLogRouterWeakPtr_swap_loggerr   rw   r   rU   r   swap_loggerZLogRouterWeakPtr.swap_logger  s    33D%HHr   c                rC   z2Returns number of loggers registered in LogRouter.)r   Z"LogRouterWeakPtr_get_loggers_countrD   r4   r   get_loggers_countZ"LogRouterWeakPtr.get_loggers_count  s    99$??r   c                rR   r$   )r   ZLogRouterWeakPtr_log_linerS   rU   r   rV   ZLogRouterWeakPtr.log_line  s    00gFFr   c                rW   r$   )r   ZLogRouterWeakPtr_writerX   rY   r   rZ   ZLogRouterWeakPtr.write   s    --d#gNNr   c                rH   r$   )r   ZLogRouterWeakPtr_level_to_cstrrO   r:   r   rQ   ZLogRouterWeakPtr.level_to_cstr#  s    55dBBr   c                rH   r$   )r   ZLogRouterWeakPtr_criticalr[   r:   r   r]   ZLogRouterWeakPtr.critical&  s    00;;r   c                rH   r$   )r   ZLogRouterWeakPtr_errorr[   r:   r   r_   ZLogRouterWeakPtr.error)  rc   r   c                rH   r$   )r   ZLogRouterWeakPtr_warningr[   r:   r   r`   ZLogRouterWeakPtr.warning,  r^   r   c                rH   r$   )r   ZLogRouterWeakPtr_noticer[   r:   r   rb   ZLogRouterWeakPtr.notice/  ra   r   c                rH   r$   )r   ZLogRouterWeakPtr_infor[   r:   r   rd   ZLogRouterWeakPtr.info2  rJ   r   c                rH   r$   )r   ZLogRouterWeakPtr_debugr[   r:   r   re   ZLogRouterWeakPtr.debug5  rc   r   c                rH   r$   )r   ZLogRouterWeakPtr_tracer[   r:   r   rf   ZLogRouterWeakPtr.trace8  rc   r   c                rR   r$   )r   ZLogRouterWeakPtr_logrg   rU   r   rh   ZLogRouterWeakPtr.log;  s    ++D==r   r   N)+r
   r	   r)   r*   r+   r   r   r   r   rB   r   Zdelete_LogRouterWeakPtrrj   rE   rM   r{   r}   r~   r   r   r   r   r   r   r   r   r   r   r   r   rV   rZ   rQ   r]   r_   r`   rb   rd   re   rf   rh   r,   rk   rl   rm   r   ry   ry      s      -/IOdeGHU66827D6<<<<<<7A@DI@GOC<9;:899> >r   ry   c                   sZ  a  ] tR tRt o Rt]! R R RR7      t]tR t	]
P                  t]
P                  t]
P                  t]
P"                  t]
P&                  t]
P*                  t]
P.                  t]
P2                  t]R 4       tR	 tR
 tR tR t R t!R t"R t#R t$R t%R t&R t'Rt(V t)R# )Loggeri@  z
Logger is an abstract interface used for logging.
An implementation (inherited class) can call callbacks, log the messages to memory, file, or somewhere else.
c                r0   r$   r1   r2   r4   r   r5   Logger.<lambda>F  r7   r   c                r8   r$   r1   r9   r:   r   r5   r   F  r;   r   r<   r=   c                s    V P                   \        8X  d   R pMT p\        P                  ! V \        P                  ! V4      4       R # r$   )r   r   r   ZLogger_swiginitZ
new_Logger)r   Z_selfr   r   rB   ZLogger.__init__I  s3    >>V#EEg&8&8&ABr   c                rC   r$   )r   ZLogger_level_to_cstr)rP   r4   r   rQ   ZLogger.level_to_cstrX  s    ++E22r   c                rR   r$   )r   ZLogger_log_linerS   rU   r   rV   ZLogger.log_line\  s    &&tG<<r   c                rW   r$   )r   ZLogger_writerX   rY   r   rZ   ZLogger.write_  s    ##DGDDr   c                rH   r$   )r   ZLogger_criticalr[   r:   r   r]   ZLogger.criticalb  s    &&t11r   c                rH   r$   )r   ZLogger_errorr[   r:   r   r_   ZLogger.errore      ##D..r   c                rH   r$   )r   ZLogger_warningr[   r:   r   r`   ZLogger.warningh  s    %%d00r   c                rH   r$   )r   ZLogger_noticer[   r:   r   rb   ZLogger.noticek  s    $$T//r   c                rH   r$   )r   ZLogger_infor[   r:   r   rd   ZLogger.infon  s    ""4--r   c                rH   r$   )r   ZLogger_debugr[   r:   r   re   ZLogger.debugq  r   r   c                rH   r$   )r   ZLogger_tracer[   r:   r   rf   ZLogger.tracet  r   r   c                rR   r$   )r   Z
Logger_logrg   rU   r   rh   Z
Logger.logw  s    !!$s33r   c                s    V P                   P                  4        \        P                  ! V 4       \        P
                  ! V 4      # r$   )r   Zdisownr   Zdisown_LoggerweakrefZproxyrD   r4   r   
__disown__ZLogger.__disown__y  s/    		d#}}T""r   r   N)*r
   r	   r)   r*   r+   r   r   r   r   rB   r   Zdelete_Loggerrj   ZLogger_Level_CRITICALZLevel_CRITICALZLogger_Level_ERRORZLevel_ERRORZLogger_Level_WARNINGZLevel_WARNINGZLogger_Level_NOTICEZLevel_NOTICEZLogger_Level_INFOZ
Level_INFOZLogger_Level_DEBUGZLevel_DEBUGZLogger_Level_TRACEZLevel_TRACEstaticmethodrQ   rV   rZ   r]   r_   r`   rb   rd   re   rf   rh   r   r,   rk   rl   rm   r   r   r   @  s     
 -/IOdeGHC ,,22N,,K00M..L**J,,K,,K3 3=E2/10.//4# #r   r   c                   sb   a  ] tR tRt o ]! R R RR7      tR t]t]	P                  tR tRtV tR	# )
StringLoggeri  c                r0   r$   r1   r2   r4   r   r5   StringLogger.<lambda>  r7   r   c                r8   r$   r1   r9   r:   r   r5   r     r;   r   r<   r=   c                s    \        R 4      h)z*No constructor defined - class is abstract)r   )r   r@   Zkwargss   &*,r   rB   ZStringLogger.__init__  s    IJJr   c                2    \         P                  ! V .VO5!  # r$   )r   ZStringLogger_writer?   rA   r   rZ   ZStringLogger.write  s    ))$666r   r   N)r
   r	   r)   r*   r   r   rB   r   r   r   Zdelete_StringLoggerrj   rZ   r,   rk   rl   rm   r   r   r     s7     -/IOdeGKH227 7r   r   c                   s   a  ] tR tRt o Rt]! R R RR7      t]t]	P                  tR tR tR	 tR
 tR tR tR tR tRtV tR# )	LogRouteri  z
LogRouter is an implementation of logging class that forwards incoming logging messages to several other loggers.
Loggers can be addressed via index. Index is serial number of the logger starting from zero.
c                r0   r$   r1   r2   r4   r   r5   LogRouter.<lambda>  r7   r   c                r8   r$   r1   r9   r:   r   r5   r     r;   r   r<   r=   c                sX    \         P                  ! V \         P                  ! V!  4       R# )z
*Overload 1:*
Constructs a new LogRouter instance with an empty set of destination loggers.

|

*Overload 2:*
Constructs a new LogRouter instance and sets the destination loggers.
N)r   ZLogRouter_swiginitZnew_LogRouterr?   rA   r   rB   ZLogRouter.__init__  s     	""4)>)>)EFr   c                rH   r   )r   ZLogRouter_add_loggerrv   r:   r   r   ZLogRouter.add_logger  s    ++D99r   c                rH   r   )r   ZLogRouter_get_loggerr   r:   r   r   ZLogRouter.get_logger  s    ++D88r   c                rH   r   )r   ZLogRouter_release_loggerr   r:   r   r   ZLogRouter.release_logger  s    
 //<<r   c                rR   r   )r   ZLogRouter_swap_loggerr   rU   r   r   ZLogRouter.swap_logger  s    ,,T5AAr   c                rC   r   )r   ZLogRouter_get_loggers_countrD   r4   r   r   ZLogRouter.get_loggers_count  s    22488r   c                rR   r$   )r   ZLogRouter_log_linerS   rU   r   rV   ZLogRouter.log_line  s    ))$w??r   c                rW   r$   )r   ZLogRouter_writerX   rY   r   rZ   ZLogRouter.write  s    &&t3wGGr   r   N)r
   r	   r)   r*   r+   r   r   r   r   r   Zdelete_LogRouterrj   rB   r   r   r   r   r   rV   rZ   r,   rk   rl   rm   r   r   r     s`     
 -/IOdeGH//
G:9=B9@H Hr   r   c                   s   a  ] tR tRt o Rt]! R R RR7      t]tR t	]
P                  t]R 4       t]R	 4       tR
tV tR# )GlobalLoggeri  z
GlobalLogger contains methods for setting the target (logger) for global messages - messages that are
generated by libraries (eg librepo) without binding to the Base object.
c                r0   r$   r1   r2   r4   r   r5   GlobalLogger.<lambda>  r7   r   c                r8   r$   r1   r9   r:   r   r5   r     r;   r   r<   r=   c                sZ    \         P                  ! V \         P                  ! 4       4       R # r$   )r   ZGlobalLogger_swiginitZnew_GlobalLoggerrD   r4   r   rB   ZGlobalLogger.__init__  s    %%dG,D,D,FGr   c                rH   r$   )r   ZGlobalLogger_set)ZdestinationZ	verbosityr:   r   r   ZGlobalLogger.set  s    ''??r   c                 s,    \         P                  ! 4       # r$   )r   ZGlobalLogger_unsetr   r   r   unsetZGlobalLogger.unset  s    ))++r   r   N)r
   r	   r)   r*   r+   r   r   r   r   rB   r   Zdelete_GlobalLoggerrj   r   r   r   r,   rk   rl   rm   r   r   r     s\     
 -/IOdeGHH22@ @ , ,r   r   c                   s   a  ] tR tRt o Rt]! R R RR7      t]tRR lt	]
P                  tR tR	 tR
 tR tR tRtV tR# )MemoryBufferLoggeri  z
MemoryBufferLogger is an implementation of logging class that stores incoming logging messages into memory buffer.
It is usually used as temporary logger until a final logger is configured.
c                r0   r$   r1   r2   r4   r   r5   MemoryBufferLogger.<lambda>  r7   r   c                r8   r$   r1   r9   r:   r   r5   r     r;   r   r<   r=   c                s\    \         P                  ! V \         P                  ! W4      4       R # r$   )r   ZMemoryBufferLogger_swiginitZnew_MemoryBufferLogger)r   Zmax_items_to_keepZreserverU   r   rB   ZMemoryBufferLogger.__init__  s    ++D'2P2PQb2lmr   c                rW   r$   )r   ZMemoryBufferLogger_writerX   rY   r   rZ   ZMemoryBufferLogger.write  s    //CPPr   c                rC   r$   )r   Z"MemoryBufferLogger_get_items_countrD   r4   r   rr   Z"MemoryBufferLogger.get_items_count  s    99$??r   c                rH   r$   )r   ZMemoryBufferLogger_get_itemrs   r:   r   rt   ZMemoryBufferLogger.get_item  s    224BBr   c                rC   r$   )r   ZMemoryBufferLogger_clearrD   r4   r   ru   ZMemoryBufferLogger.clear  r   r   c                rH   r$   )r   Z"MemoryBufferLogger_write_to_loggerrv   r:   r   rx   Z"MemoryBufferLogger.write_to_logger  s    99$GGr   r   N)r    )r
   r	   r)   r*   r+   r   r   r   r   rB   r   Zdelete_MemoryBufferLoggerrj   rZ   rr   rt   ru   rx   r,   rk   rl   rm   r   r   r     sW     
 -/IOdeGHn88Q@C6H Hr   r   c                   sf   a  ] tR tRt o Rt]! R R RR7      t]tR t	]
P                  tR tR	tV tR
# )RotatingFileLoggeri  z
RotatingFileLogger is an implementation of a rotating file logger.
It can be used simultaneously in multiple processes and threads.
c                r0   r$   r1   r2   r4   r   r5   RotatingFileLogger.<lambda>  r7   r   c                r8   r$   r1   r9   r:   r   r5   r     r;   r   r<   r=   c                s^    \         P                  ! V \         P                  ! WV4      4       R# )a+  
Construct a new instance of the `RotatingFileLogger` class.

It immediately opens (creates) `base_file_path` to detect problems before logging starts.

When `max_bytes` is non-zero and `backup_count` is non-zero, rotation is enabled.
For example, with `backup_count` of 5 and a `base_file_path` of "app.log", we would get "app.log", "app.log.1",
"app.log.2" through "app.log.5". The file written to is always "app.log". If the message being written does not
fit into the file (the size of the resulting file would be greater than `max_bytes`), it is closed and renamed
to "app.log.1", and if there are files "app.log.1", "app.log.2", etc., then they are renamed on "app.log.2",
"app.log.3" etc. Writing is done to a new "app.log" file.
Note: The message being written is not split into multiple files. -> The log file can be larger than `max_bytes`
if the message being written is larger than `max_bytes`. The file then only contains this message.

:type base_file_path: std::filesystem::path
:param base_file_path: path to the file where log messages are written
:type max_bytes: std::size_t
:param max_bytes:      max log file size; 0 - means unlimited; at least one full message can always be written
:type backup_count: std::size_t
:param backup_count:   maximum number of backup files; 0 - means rotation is disabled
N)r   ZRotatingFileLogger_swiginitZnew_RotatingFileLogger)r   Zbase_file_pathZ	max_bytesZbackup_counts   &&&&r   rB   ZRotatingFileLogger.__init__   s#    , 	++D'2P2PQ_lx2yzr   c                r   r$   )r   ZRotatingFileLogger_writer?   rA   r   rZ   ZRotatingFileLogger.write  s    //<t<<r   r   N)r
   r	   r)   r*   r+   r   r   r   r   rB   r   Zdelete_RotatingFileLoggerrj   rZ   r,   rk   rl   rm   r   r   r     s@     
 -/IOdeGH{. 88= =r   r   c                rH   )aG  
Helper method for creating a file logger in `logdir` location with given file name.
:type base: libdnf5::Base
:param base: Reference to Base for loading the configured logger path.
:type filename: string
:param filename: Name of the log file.
:rtype: std::unique_ptr< libdnf5::Logger >
:return: Instance of a new file logger.
)r   create_file_loggerZbaseZfilenamer:   r   r   r     s     %%d55r   c                rH   )aX  
Helper method for creating a rotating file logger in `logdir` location with given file name.
:type base: libdnf5::Base
:param base: Reference to Base for loading the configured parameters.
:type filename: string
:param filename: Name of the log file.
:rtype: std::unique_ptr< libdnf5::Logger >
:return: Instance of a new rotating file logger.
)r   create_rotating_file_loggerr   r:   r   r   r   +  s     ..t>>r   )*Zsysr   Z_swig_python_version_infor   ZglobalsrM   r
   r   r   Zbuiltinsr   ZImportErrorr   r    r#   r'   r   r(   r   r-   r.   Zobjectr/   ZLoggerUniquePtr_swigregisterrn   Z(MemoryBufferLoggerUniquePtr_swigregisterry   ZLogRouterWeakPtr_swigregisterr   ZLogger_swigregisterr   ZStringLogger_swigregisterr   ZLogRouter_swigregisterr   ZGlobalLogger_swigregisterr   ZMemoryBufferLogger_swigregisterr   ZRotatingFileLogger_swigregisterr   r   r   r   r   <module>r      s   :
79==$h55}9U9UY\`hYh"[
L$ L
   <=f <=~  $ $_ 5HI& HIV  0 01L Mo>v o>d  % %&6 7<#V <#~   F #	76 	7  ! !, /1H 1Hh   y ),6 ,,  ! !, /H H:  ' '(: ;#= #=L  ' '(: ;
6
?w  s   F F! F!