Code Duplication    Length = 73-73 lines in 2 locations

gvm/protocols/gmpv208/gmpv208.py 1 location

@@ 3879-3951 (lines=73) @@
3876
        cmd.add_element("copy", role_id)
3877
        return self._send_xml_command(cmd)
3878
3879
    def create_scanner(
3880
        self,
3881
        name: str,
3882
        host: str,
3883
        port: int,
3884
        scanner_type: ScannerType,
3885
        credential_id: str,
3886
        *,
3887
        ca_pub: Optional[str] = None,
3888
        comment: Optional[str] = None,
3889
    ) -> Any:
3890
        """Create a new scanner
3891
3892
        Arguments:
3893
            name: Name of the scanner
3894
            host: The host of the scanner
3895
            port: The port of the scanner
3896
            scanner_type: Type of the scanner.
3897
            credential_id: UUID of client certificate credential for the
3898
                scanner
3899
            ca_pub: Certificate of CA to verify scanner certificate
3900
            comment: Comment for the scanner
3901
3902
        Returns:
3903
            The response. See :py:meth:`send_command` for details.
3904
        """
3905
        if not name:
3906
            raise RequiredArgument(
3907
                function=self.create_scanner.__name__, argument='name'
3908
            )
3909
3910
        if not host:
3911
            raise RequiredArgument(
3912
                function=self.create_scanner.__name__, argument='host'
3913
            )
3914
3915
        if not port:
3916
            raise RequiredArgument(
3917
                function=self.create_scanner.__name__, argument='port'
3918
            )
3919
3920
        if not scanner_type:
3921
            raise RequiredArgument(
3922
                function=self.create_scanner.__name__, argument='scanner_type'
3923
            )
3924
3925
        if not credential_id:
3926
            raise RequiredArgument(
3927
                function=self.create_scanner.__name__, argument='credential_id'
3928
            )
3929
3930
        if not isinstance(scanner_type, self.types.ScannerType):
3931
            raise InvalidArgumentType(
3932
                function=self.create_scanner.__name__,
3933
                argument='scanner_type',
3934
                arg_type=self.types.ScannerType.__name__,
3935
            )
3936
3937
        cmd = XmlCommand("create_scanner")
3938
        cmd.add_element("name", name)
3939
        cmd.add_element("host", host)
3940
        cmd.add_element("port", str(port))
3941
        cmd.add_element("type", scanner_type.value)
3942
3943
        if ca_pub:
3944
            cmd.add_element("ca_pub", ca_pub)
3945
3946
        cmd.add_element("credential", attrs={"id": str(credential_id)})
3947
3948
        if comment:
3949
            cmd.add_element("comment", comment)
3950
3951
        return self._send_xml_command(cmd)
3952
3953
    def clone_scanner(self, scanner_id: str) -> Any:
3954
        """Clone an existing scanner

gvm/protocols/gmpv7/gmpv7.py 1 location

@@ 1464-1536 (lines=73) @@
1461
        cmd.add_element("copy", role_id)
1462
        return self._send_xml_command(cmd)
1463
1464
    def create_scanner(
1465
        self,
1466
        name: str,
1467
        host: str,
1468
        port: int,
1469
        scanner_type: ScannerType,
1470
        credential_id: str,
1471
        *,
1472
        ca_pub: Optional[str] = None,
1473
        comment: Optional[str] = None,
1474
    ) -> Any:
1475
        """Create a new scanner
1476
1477
        Arguments:
1478
            name: Name of the scanner
1479
            host: The host of the scanner
1480
            port: The port of the scanner
1481
            scanner_type: Type of the scanner.
1482
            credential_id: UUID of client certificate credential for the
1483
                scanner
1484
            ca_pub: Certificate of CA to verify scanner certificate
1485
            comment: Comment for the scanner
1486
1487
        Returns:
1488
            The response. See :py:meth:`send_command` for details.
1489
        """
1490
        if not name:
1491
            raise RequiredArgument(
1492
                function=self.create_scanner.__name__, argument='name'
1493
            )
1494
1495
        if not host:
1496
            raise RequiredArgument(
1497
                function=self.create_scanner.__name__, argument='host'
1498
            )
1499
1500
        if not port:
1501
            raise RequiredArgument(
1502
                function=self.create_scanner.__name__, argument='port'
1503
            )
1504
1505
        if not scanner_type:
1506
            raise RequiredArgument(
1507
                function=self.create_scanner.__name__, argument='scanner_type'
1508
            )
1509
1510
        if not credential_id:
1511
            raise RequiredArgument(
1512
                function=self.create_scanner.__name__, argument='credential_id'
1513
            )
1514
1515
        if not isinstance(scanner_type, self.types.ScannerType):
1516
            raise InvalidArgumentType(
1517
                function=self.create_scanner.__name__,
1518
                argument='scanner_type',
1519
                arg_type=self.types.ScannerType.__name__,
1520
            )
1521
1522
        cmd = XmlCommand("create_scanner")
1523
        cmd.add_element("name", name)
1524
        cmd.add_element("host", host)
1525
        cmd.add_element("port", str(port))
1526
        cmd.add_element("type", scanner_type.value)
1527
1528
        if ca_pub:
1529
            cmd.add_element("ca_pub", ca_pub)
1530
1531
        cmd.add_element("credential", attrs={"id": str(credential_id)})
1532
1533
        if comment:
1534
            cmd.add_element("comment", comment)
1535
1536
        return self._send_xml_command(cmd)
1537
1538
    def clone_scanner(self, scanner_id: str) -> Any:
1539
        """Clone an existing scanner