1
2
3
4
5
6
7
8
9
10
11 from ZenossSecurity import ZEN_VIEW
12 from Products.ZenUtils.Utils import getDisplayType, getDisplayId
13 from Products.ZenMessaging.audit import audit
14
16 """
17 Default implementation of IDeviceManager interface. This interface
18 is implemented by classes that have a device relationship to allow them
19 to manage their device relations.
20 """
21
25
27 """see IManageDevice"""
28 raise NotImplementedError
29
30 - def removeDevices(self, deviceNames=None, deleteStatus=False,
31 deleteHistory=False, deletePerf=False,REQUEST=None):
32 """see IManageDevice"""
33 from Products.ZenUtils.Utils import unused
34 unused(deleteHistory, deletePerf, deleteStatus)
35 if not deviceNames: return self()
36 if isinstance(deviceNames, basestring): deviceNames = (deviceNames,)
37 for devname in deviceNames:
38 self.devices._delObject(devname)
39 if REQUEST:
40 if self.meta_type == 'PerformanceConf':
41 actionName = 'RemoveFromCollector'
42 objId = self.id
43 else:
44 actionName = 'Remove'
45 objId = self.getPrimaryId()
46 objType = getDisplayType(self)
47 audit(['UI.Device', actionName], devname, data_={objType:objId})
48 if REQUEST:
49 return self()
50