Package ZenModel :: Module VdefGraphPoint
[hide private]
[frames] | no frames]

Source Code for Module ZenModel.VdefGraphPoint

 1  ########################################################################### 
 2  # 
 3  # This program is part of Zenoss Core, an open source monitoring platform. 
 4  # Copyright (C) 2007, Zenoss Inc. 
 5  # 
 6  # This program is free software; you can redistribute it and/or modify it 
 7  # under the terms of the GNU General Public License version 2 as published by 
 8  # the Free Software Foundation. 
 9  # 
10  # For complete information please visit: http://www.zenoss.com/oss/ 
11  # 
12  ########################################################################### 
13   
14  __doc__="""VdefGraphPoint 
15   
16  Handles GraphPoints that define an rrd VDEF 
17  """ 
18   
19  from GraphPoint import GraphPoint 
20  from Globals import InitializeClass 
21   
22   
23 -def manage_addVdefGraphPoint(context, id, REQUEST = None):
24 ''' This is here so than zope will let us copy/paste/rename 25 graphpoints. 26 ''' 27 gp = VdefGraphPoint(id) 28 context._setObject(gp.id, gp) 29 if REQUEST: 30 return context.callZenScreen(REQUEST)
31 32
33 -class VdefGraphPoint(GraphPoint):
34 35 meta_type = 'VdefGraphPoint' 36 37 rpn = '' 38 39 _properties = GraphPoint._properties + ( 40 {'id':'rpn', 'type':'string', 'mode':'w'}, 41 ) 42 43
44 - def getDescription(self):
45 return self.rpn
46 47
48 - def getType(self):
49 return 'VDEF'
50 51
52 - def getGraphCmds(self, cmds, context, rrdDir, addSummary, idx, 53 multiid=-1, prefix=''):
54 ''' Build the graphing commands for this graphpoint 55 ''' 56 from Products.ZenUtils.Utils import unused 57 unused(multiid, prefix, rrdDir) 58 if not self.rpn: 59 return cmds 60 rpn = self.talesEval(self.rpn, context) 61 return cmds + ['VDEF:%s=%s' % ( 62 self.getDsName(self.id, multiid, prefix), rpn)]
63 64 65 InitializeClass(VdefGraphPoint) 66