@@ -1396,39 +1396,6 @@ def bulk_delete(self, workspace_name, **kwargs):
1396
1396
workspace_name = workspace_name , ** kwargs ), 200
1397
1397
bulk_delete .__doc__ = BulkDeleteWorkspacedMixin .bulk_delete .__doc__
1398
1398
1399
- def _perform_bulk_delete (self , values , ** kwargs ):
1400
- # Get host and service ids in order to update host stats
1401
- host_ids = db .session .query (
1402
- VulnerabilityGeneric .host_id ,
1403
- VulnerabilityGeneric .service_id
1404
- )
1405
-
1406
- by_severity = kwargs .get ('by' , None )
1407
- if by_severity == 'severity' :
1408
- for severity in values :
1409
- if severity not in VulnerabilityABC .SEVERITIES :
1410
- flask .abort (http .client .BAD_REQUEST , "Severity type not valid" )
1411
-
1412
- host_ids = host_ids .filter (
1413
- VulnerabilityGeneric .severity .in_ (values )
1414
- ).all ()
1415
- else :
1416
- host_ids = host_ids .filter (
1417
- VulnerabilityGeneric .id .in_ (values )
1418
- ).all ()
1419
-
1420
- response = super ()._perform_bulk_delete (values , ** kwargs )
1421
- deleted = response .json .get ('deleted' , 0 )
1422
- if deleted > 0 :
1423
- from faraday .server .tasks import update_host_stats # pylint:disable=import-outside-toplevel
1424
- host_id_list = [data [0 ] for data in host_ids if data [0 ]]
1425
- service_id_list = [data [1 ] for data in host_ids if data [1 ]]
1426
- if faraday_server .celery_enabled :
1427
- update_host_stats .delay (host_id_list , service_id_list )
1428
- else :
1429
- update_host_stats (host_id_list , service_id_list )
1430
- return response
1431
-
1432
1399
def _bulk_update_query (self , ids , ** kwargs ):
1433
1400
# It IS better to as is but warn of ON CASCADE
1434
1401
query = self .model_class .query .filter (self .model_class .id .in_ (ids ))
@@ -1510,5 +1477,38 @@ def _post_bulk_update(self, ids, extracted_data, workspace_name, **kwargs):
1510
1477
else :
1511
1478
update_host_stats (host_id_list , service_id_list )
1512
1479
1480
+ def _perform_bulk_delete (self , values , ** kwargs ):
1481
+ # Get host and service ids in order to update host stats
1482
+ host_ids = db .session .query (
1483
+ VulnerabilityGeneric .host_id ,
1484
+ VulnerabilityGeneric .service_id
1485
+ )
1486
+
1487
+ by_severity = kwargs .get ('by' , None )
1488
+ if by_severity == 'severity' :
1489
+ for severity in values :
1490
+ if severity not in VulnerabilityABC .SEVERITIES :
1491
+ flask .abort (http .client .BAD_REQUEST , "Severity type not valid" )
1492
+
1493
+ host_ids = host_ids .filter (
1494
+ VulnerabilityGeneric .severity .in_ (values )
1495
+ ).all ()
1496
+ else :
1497
+ host_ids = host_ids .filter (
1498
+ VulnerabilityGeneric .id .in_ (values )
1499
+ ).all ()
1500
+
1501
+ response = super ()._perform_bulk_delete (values , ** kwargs )
1502
+ deleted = response .json .get ('deleted' , 0 )
1503
+ if deleted > 0 :
1504
+ from faraday .server .tasks import update_host_stats # pylint:disable=import-outside-toplevel
1505
+ host_id_list = [data [0 ] for data in host_ids if data [0 ]]
1506
+ service_id_list = [data [1 ] for data in host_ids if data [1 ]]
1507
+ if faraday_server .celery_enabled :
1508
+ update_host_stats .delay (host_id_list , service_id_list )
1509
+ else :
1510
+ update_host_stats (host_id_list , service_id_list )
1511
+ return response
1512
+
1513
1513
1514
1514
VulnerabilityView .register (vulns_api )
0 commit comments