jd|dZddlZddlmZddlmZmZmZmZm Z m Z ddl m Z ddl mZedeed d ed eed dd edeeddd edeeddd edeeddd edeeddd ed eed!d"d# ed$eed%d&d' ed(ee ed)eed*d+d, i Zedeed-d. ed/e eded0eed1eiZd2ed3efd4Zd5ed3efd6ZdS)7zF This module contains validation schema for config file loaded values N) Namespace)SchemaAndOptionalUse SchemaErrorOr)_validate_ignore_list)SSAErrorcommandc |dvS)N)z set-configz get-configzget-ssa-statusz get-reportz enable-ssaz disable-ssazget-statcs P/opt/cloudlinux/venv/lib64/python3.11/site-packages/ssa/ssa_utils/validations.pyrs!(4#4zInvalid command)errordomains_numberc t|SNintns rrr #a&&rc|dkSNrrrs rrrs a1frz.number of domains should be a positive integer urls_numberc t|Srrrs rrrs s1vvrc|dkSrrrs rrrs 1q5rz+number of URLs should be a positive integerrequests_durationc t|Srfloatrs rrr!s U1XXrc|dkS)Nrrs rrr"s Srz#request duration should be positiverequest_numberc t|Srrrs rrr$rrc|dkSrrrs rrr%s a!erz/number of requests should be a positive integertimec t|Srrrs rrr's Arc"d|cxkodkncS)Nr rrs rrr(sALLLLbLLLLrz8time should be a positive integer between 1 and 12, or 0 correlationc*|Sr capitalizess rrr*sq||~~rc |dvSN)OnOffrr4s rrr*s !}J\rz*bad correlation value, should be On or Offcorrelation_coefficientc t|Srr%rs rrr,s 588rc"d|cxkodkncS)Nr(g?rrs rrr-ssQ~~~~#~~~~rz?correlation coefficient could not be negative or greater than 1 ignore_listsummary_notification_enabledc*|Srr2r4s rrr1sallnnrc |dvSr7rr4s rrr1s m1Crz+bad notification value, should be On or Offc |dvS)N)enabledisablestatusrrs rrr7s !'F"FrzInvalid autotracing commanduserall list_disableddatareturnc t|}|d}|d=||fS#t$r$}tdt |d}~wwxYw)zs Validate given data. Return: tuple with 2 elements: command string and list of the validated options r zInvalid configuration: N)cmdline_schemavalidaterr str)rHdcmdes rrLrL?so ;  # #D ) ) l iLAv ;;;9Q99:::;s(+ AAA input_argsc  tdit|S#t$r8}t t jddt|id}~wwxYw)z Validate given input with schema Input arguments expected in s dict form :param input_args: dict with input data resultzInput validation error: Nr)rautotracing_cmdline_schemarLr SystemExitjsondumpsrM)rQrPs rvalidate_autotracingrXMs  MM6?? KKMMM     9Q99%       s#& A(3A##A()__doc__rVargparserschemarrrrrr configuration.validationr internal.exceptionsr rMrKboolrTdicttuplerLrXrrrras >>>>>>>>>>>>>>>><<<<<<****** ss344+ ,,,  H CC(8(8$9$9$4$4*Z!\!\!\ H]SS%5%5!6!6!0'TVVV H !!33ss+=+='>'>'8'8-R$T$T$T H CC(8(8$9$9$3O*[!]!]!] HVcc##..//00 Z\\\ H]SS%=%=!>!>@\@\'SUUU H &''SS1C1C-D-D-E-E3t*v*v*v H]SS!677 H +,,cc  $ $%%'C'C;/=/=/=7B$V ss3FF6888 HVbbdmm HUOOT H_t % ;4 ;E ; ; ; ;  T  i       r