
    Vh                    6    d dl mZ dZd dlmZ  G d de      Zy)    )annotationsa  
author: Unknown (!UNKNOWN)
name: context_demo
type: aggregate
short_description: demo callback that adds play/task context
description:
  - Displays some play and task context along with normal output.
  - This is mostly for demo purposes.
requirements:
  - whitelist in configuration
)CallbackBasec                  D     e Zd ZdZdZdZdZdZ fdZd Z	d Z
d	 Z xZS )
CallbackModulez
    This is a very trivial example of how any callback function can get at play and task objects.
    play will be 'None' for runner invocations, and task will be None for 'setup' invocations.
    g       @	aggregatezcommunity.general.context_demoTc                H    t        t        | 
  |i | d | _        d | _        y N)superr   __init__taskplay)selfargskwargs	__class__s      s/home/dcms/DCMS/lib/python3.12/site-packages/ansible_collections/community/general/plugins/callback/context_demo.pyr   zCallbackModule.__init__"   s%    nd,d=f=		    c                   | j                   j                  dt        | j                  dd        d| j                   d       | j                   j                  d       t        |      D ]&  \  }}| j                   j                  d| d|        ( | j                   j                  d       |D ]&  }| j                   j                  d| d||           ( y )	Nz
--- play: namez task: z ---z     --- ARGS z     z: z      --- KWARGS )_displaydisplaygetattrr   r   	enumerate)r   r   r   iaks         r   	v2_on_anyzCallbackModule.v2_on_any'   s    
7499fd+K*LGTXT]T]S^^bcd./dO 	4DAqMM!!E!Bqc"23	4 	12 	<AMM!!E!Bvayk":;	<r   c                    || _         y r	   )r   )r   r   s     r   v2_playbook_on_play_startz(CallbackModule.v2_playbook_on_play_start2   	    	r   c                    || _         y r	   )r   )r   r   is_conditionals      r   v2_playbook_on_task_startz(CallbackModule.v2_playbook_on_task_start5   r    r   )__name__
__module____qualname____doc__CALLBACK_VERSIONCALLBACK_TYPECALLBACK_NAMECALLBACK_NEEDS_WHITELISTr   r   r   r#   __classcell__)r   s   @r   r   r      s4     M4M#
	<r   r   N)
__future__r   DOCUMENTATIONansible.plugins.callbackr   r    r   r   <module>r1      s"    #
 2\ r   