Code Duplication    Length = 90-91 lines in 2 locations

gvm/protocols/gmpv7/__init__.py 2 locations

@@ 968-1058 (lines=91) @@
965
        cmd.add_element("copy", note_id)
966
        return self._send_xml_command(cmd)
967
968
    def create_override(
969
        self,
970
        text: str,
971
        nvt_oid: str,
972
        *,
973
        seconds_active: Optional[int] = None,
974
        hosts: Optional[List[str]] = None,
975
        port: Optional[int] = None,
976
        result_id: Optional[str] = None,
977
        severity: Optional[Severity] = None,
978
        new_severity: Optional[Severity] = None,
979
        task_id: Optional[str] = None,
980
        threat: Optional[SeverityLevel] = None,
981
        new_threat: Optional[SeverityLevel] = None
982
    ) -> Any:
983
        """Create a new override
984
985
        Arguments:
986
            text: Text of the new override
987
            nvt_id: OID of the nvt to which override applies
988
            seconds_active: Seconds override will be active. -1 on always, 0 off
989
            hosts: A list of host addresses
990
            port: Port to which the override applies
991
            result_id: UUID of a result to which override applies
992
            severity: Severity to which override applies
993
            new_severity: New severity for result
994
            task_id: UUID of task to which override applies
995
            threat: Severity level to which override applies. Will be converted
996
                to severity.
997
            new_threat: New severity level for results. Will be converted to
998
                new_severity.
999
1000
        Returns:
1001
            The response. See :py:meth:`send_command` for details.
1002
        """
1003
        if not text:
1004
            raise RequiredArgument(
1005
                function=self.create_override.__name__, argument='text'
1006
            )
1007
1008
        if not nvt_oid:
1009
            raise RequiredArgument(
1010
                function=self.create_override.__name__, argument='nvt_oid'
1011
            )
1012
1013
        cmd = XmlCommand("create_override")
1014
        cmd.add_element("text", text)
1015
        cmd.add_element("nvt", attrs={"oid": nvt_oid})
1016
1017
        if not seconds_active is None:
1018
            cmd.add_element("active", str(seconds_active))
1019
1020
        if hosts:
1021
            cmd.add_element("hosts", _to_comma_list(hosts))
1022
1023
        if port:
1024
            cmd.add_element("port", str(port))
1025
1026
        if result_id:
1027
            cmd.add_element("result", attrs={"id": result_id})
1028
1029
        if severity:
1030
            cmd.add_element("severity", str(severity))
1031
1032
        if new_severity:
1033
            cmd.add_element("new_severity", str(new_severity))
1034
1035
        if task_id:
1036
            cmd.add_element("task", attrs={"id": task_id})
1037
1038
        if threat is not None:
1039
            if not isinstance(threat, SeverityLevel):
1040
                raise InvalidArgumentType(
1041
                    function=self.create_override.__name__,
1042
                    argument="threat",
1043
                    arg_type=SeverityLevel.__name__,
1044
                )
1045
1046
            cmd.add_element("threat", threat.value)
1047
1048
        if new_threat is not None:
1049
            if not isinstance(new_threat, SeverityLevel):
1050
                raise InvalidArgumentType(
1051
                    function=self.create_override.__name__,
1052
                    argument="new_threat",
1053
                    arg_type=SeverityLevel.__name__,
1054
                )
1055
1056
            cmd.add_element("new_threat", new_threat.value)
1057
1058
        return self._send_xml_command(cmd)
1059
1060
    def clone_override(self, override_id: str) -> Any:
1061
        """Clone an existing override
@@ 4968-5057 (lines=90) @@
4965
4966
        return self._send_xml_command(cmd)
4967
4968
    def modify_override(
4969
        self,
4970
        override_id: str,
4971
        text: str,
4972
        *,
4973
        seconds_active: Optional[int] = None,
4974
        hosts: Optional[List[str]] = None,
4975
        port: Optional[int] = None,
4976
        result_id: Optional[str] = None,
4977
        severity: Optional[Severity] = None,
4978
        new_severity: Optional[Severity] = None,
4979
        task_id: Optional[str] = None,
4980
        threat: Optional[SeverityLevel] = None,
4981
        new_threat: Optional[SeverityLevel] = None
4982
    ) -> Any:
4983
        """Modifies an existing override.
4984
4985
        Arguments:
4986
            override_id: UUID of override to modify.
4987
            text: The text of the override.
4988
            seconds_active: Seconds override will be active. -1 on always,
4989
                0 off.
4990
            hosts: A list of host addresses
4991
            port: Port to which override applies.
4992
            result_id: Result to which override applies.
4993
            severity: Severity to which override applies.
4994
            new_severity: New severity score for result.
4995
            task_id: Task to which override applies.
4996
            threat: Threat level to which override applies.
4997
                Will be converted to severity.
4998
            new_threat: New threat level for results. Will be converted to
4999
                new_severity.
5000
5001
        Returns:
5002
            The response. See :py:meth:`send_command` for details.
5003
        """
5004
        if not override_id:
5005
            raise RequiredArgument(
5006
                function=self.modify_override.__name__, argument='override_id'
5007
            )
5008
        if not text:
5009
            raise RequiredArgument(
5010
                function=self.modify_override.__name__, argument='text'
5011
            )
5012
5013
        cmd = XmlCommand("modify_override")
5014
        cmd.set_attribute("override_id", override_id)
5015
        cmd.add_element("text", text)
5016
5017
        if not seconds_active is None:
5018
            cmd.add_element("active", str(seconds_active))
5019
5020
        if hosts:
5021
            cmd.add_element("hosts", _to_comma_list(hosts))
5022
5023
        if port:
5024
            cmd.add_element("port", str(port))
5025
5026
        if result_id:
5027
            cmd.add_element("result", attrs={"id": result_id})
5028
5029
        if severity:
5030
            cmd.add_element("severity", str(severity))
5031
5032
        if new_severity:
5033
            cmd.add_element("new_severity", str(new_severity))
5034
5035
        if task_id:
5036
            cmd.add_element("task", attrs={"id": task_id})
5037
5038
        if threat is not None:
5039
            if not isinstance(threat, SeverityLevel):
5040
                raise InvalidArgumentType(
5041
                    function=self.modify_override.__name__,
5042
                    argument='threat',
5043
                    arg_type=SeverityLevel.__name__,
5044
                )
5045
            cmd.add_element("threat", threat.value)
5046
5047
        if new_threat is not None:
5048
            if not isinstance(new_threat, SeverityLevel):
5049
                raise InvalidArgumentType(
5050
                    function=self.modify_override.__name__,
5051
                    argument='new_threat',
5052
                    arg_type=SeverityLevel.__name__,
5053
                )
5054
5055
            cmd.add_element("new_threat", new_threat.value)
5056
5057
        return self._send_xml_command(cmd)
5058
5059
    def modify_permission(
5060
        self,