
    Vhv"                     t    d dl mZmZmZ eZdZdZdZd dl	Z	d dl
mZ d dlmZ d dlmZ d	 Zed
k(  r e        yy)    )absolute_importdivisionprint_functionat  
---
module: rule
short_description: Manage state of QRadar Rules, with filter options
description:
  - Manage state of QRadar Rules, with filter options
version_added: "1.0.0"
deprecated:
  alternative: qradar_analytics_rules
  why: Newer and updated modules released with more functionality.
  removed_at_date: '2024-09-01'
options:
  id:
    description:
      - Manage state of a QRadar Rule by ID
    required: false
    type: int
  name:
    description:
      - Manage state of a QRadar Rule by name
    required: false
    type: str
  state:
    description:
      - Manage state of a QRadar Rule
    required: True
    choices: [ "enabled", "disabled", "absent" ]
    type: str
  owner:
    description:
      - Manage ownership of a QRadar Rule
    required: false
    type: str

author: Ansible Security Automation Team (@maxamillion) <https://github.com/ansible-security>

zy
- name: Enable Rule 'Ansible Example DDoS Rule'
  qradar_rule:
    name: 'Ansible Example DDOS Rule'
    state: enabled
N)AnsibleModule)quote)QRadarRequestc            
         t        t        dd      t        dd      t        dg dd      t        dd            } t        | dd	gd	g
      }t        |g d      }i |j                  d<   |j                  d   r>|j	                  dj                  |j                  d               \  }|j                  d<   n|j                  d   rq|j	                  dj                  t        dj                  |j                  d                           \  }}|r'|d   |j                  d<   |d   d   |j                  d<   |j                  d   dk(  r|j                  d   rw|j                  d   d   du r|j                  d   r0|j                  dj                  |j                  d         i d       |j                  d   r|j                  dj                  |j                  d         i d       y d|j                  d   d<   |j                  dj                  |j                  d   d         t        j                  |j                  d               }|j                  d   r0|j                  dj                  |j                  d         |d       |j                  d   r|j                  dj                  |j                  d         |d       y |j                  d   r.|j                  dj                  |j                  d                |j                  d   r/|j                  dj                  |j                  d                y y y y |j                  d   dk(  r|j                  d   rw|j                  d   d   du r|j                  d   r0|j                  dj                  |j                  d         i d       |j                  d   r|j                  dj                  |j                  d         i d       y d|j                  d   d<   |j                  dj                  |j                  d   d         t        j                  |j                  d               }|j                  d   r0|j                  dj                  |j                  d         |d       |j                  d   r|j                  d j                  |j                  d         |d       y |j                  d   r.|j                  dj                  |j                  d                |j                  d   r/|j                  dj                  |j                  d                y y y y |j                  d   d!k(  r|j                  d   r|j                  dj                  |j                  d   d               \  }}|j                  d   r0|j                  d"j                  |j                  d         |d       |j                  d   rC|j                  d#j                  |j                  d         |d       n|j                  d$       |j                  d%       y y )&NFint)requiredtypestrT)enableddisabledabsent)r   choicesr   )idnamestateowner)r   r   )argument_specsupports_check_moderequired_one_ofmutually_exclusive)not_rest_data_keysruler   z/api/analytics/rules/{0}r   z/api/analytics/rules?filter={0}z"{0}"r   r   r   z!No change needed for rule ID: {0})msgqradar_return_datachangedz$Successfully enabled rule named: {0}zapi/analytics/rules/{0})dataz!Successfully enabled rule ID: {0}zUnable to find rule ID: {0})r   z Unable to find rule named: "{0}"r   z"Successfully disabled rule ID: {0}z%Successfully disabled rule named: {0}r   z!Successfully deleted rule ID: {0}z$Successfully deleted rule named: {0}zNothing to do, rule not found.)rulesr   )dictr   r	   paramsgetformatr   	exit_jsonpost_by_pathjsondumps	fail_jsondelete)argspecmoduleqradar_requestcoder!   r   s         j/home/dcms/DCMS/lib/python3.12/site-packages/ansible_collections/ibm/qradar/plugins/modules/qradar_rule.pymainr1   E   s   U+5u-5

 E.	G  '(*+	F #;N FMM&}}T&4&8&8&--fmmD.AB'
#fmmF# 
v	$((-44gnnV]]6%:;<
e
 $)!HFMM&!"'(4.FMM$}}W*== }}V$Y/47==&$$?FF"MM$/ ,. % %  ==($$BII"MM&1 ,. % %  48f%i0%3%@%@-44f-d3 FMM&$9:	 &A &" ==&$$?FF"MM$/ ,> $ %  ==($$BII"MM&1 ,> $ %  }}T"  5<<d+ ! 
 }}V$  :AAf- !  % )5 )` 
w	:	-== }}V$Y/58==&$$?FF"MM$/ ,. % %  ==($$BII"MM&1 ,. % %  49f%i0%3%@%@-44f-d3 FMM&$9:	 &A &" ==&$$@GG"MM$/ ,> $ %  ==($$CJJ"MM&1 ,> $ %  }}T"  5<<d+ ! 
 }}V$  :AAf- !  % )5 )` 
w	8	+== '5'<'<*11&--2G2MN($D$ }}T"  ;BBd+ (:  !  }}V$  >EEf- (:  !  !ABue41 
,    __main__)
__future__r   r   r   r   __metaclass__DOCUMENTATIONRETURNEXAMPLESr(   ansible.module_utils.basicr   +ansible.module_utils.six.moves.urllib.parser   :ansible_collections.ibm.qradar.plugins.module_utils.qradarr	   r1   __name__ r2   r0   <module>r>      sT    A @ #N
  4 = T|5~ zF r2   