def configure(self, config): set_attribute(self, 'node', REQUIRED, config) config['function'] = 'mpx.lib.node.as_node("%s").get' % self.node PeriodicColumn.configure(self, config) set_attribute(self, 'delta', 0, config, as_boolean) if self.delta: c = Calculator() c.configure({ 'name': 'delta', 'parent': self, 'statement': 'value-last_value', 'variables': [{ 'vn': 'value', 'node_reference': '$value' }, { 'vn': 'last_value', 'node_reference': '$last_value' }] }) set_attribute(self, 'meter_description', self.name, config) set_attribute(self, 'account', REQUIRED, config) set_attribute(self, 'meter_number', REQUIRED, config) set_attribute(self, 'units', '', config)
def test_get_1(self): la = Calculator() config = { 'parent': self.get_fake_ion(), 'name': 'linear_adjustor', 'statement': '(x+y)/z', 'variables': [{ 'vn': 'x', 'node_reference': '1.0' }, { 'vn': 'y', 'node_reference': '2' }, { 'vn': 'z', 'node_reference': '3' }] } la.configure(config) la.start() value = la.get() if value != 1.0: self.fail( 'wrong value returned from simple get. Value returned: ' + str(value)) return
def _create_calculator(self,statement,variables,start=1): config = {'name':'test','parent':self.get_fake_ion(start), 'statement':statement,'variables':[]} for name in variables.keys(): variable = {'vn':name,'node_reference':variables[name]} config['variables'].append(variable) calc = Calculator() calc.configure(config) return calc
def _create_calculator(self, statement, variables, start=1): config = { 'name': 'test', 'parent': self.get_fake_ion(start), 'statement': statement, 'variables': [] } for name in variables.keys(): variable = {'vn': name, 'node_reference': variables[name]} config['variables'].append(variable) calc = Calculator() calc.configure(config) return calc
def test_get_1(self): la = Calculator() config = {'parent':self.get_fake_ion(), 'name':'linear_adjustor', 'statement':'(x+y)/z', 'variables':[{'vn':'x','node_reference':'1.0'}, {'vn':'y','node_reference':'2'}, {'vn':'z','node_reference':'3'}]} la.configure(config) la.start() value = la.get() if value != 1.0: self.fail('wrong value returned from simple get. Value returned: ' + str(value)) return
def configure(self, config): PeriodicColumn.configure(self, config) if not self.has_child("delta"): c = Calculator() c.configure( { "name": "delta", "parent": self, "statement": "value - last_value", "variables": [ {"vn": "value", "node_reference": "$value"}, {"vn": "last_value", "node_reference": "$last_value"}, ], } ) return
def configure(self, config): Calculator.configure(self, config) message = '' if not (config.has_key('message') and config['message']): for var in self.variables: if message: message += ', ' message += '%s = ${%s}' % (var['vn'], var['vn']) set_attribute(self, 'message', message, {}) else: set_attribute(self, 'message', REQUIRED, config) set_attribute(self, 'poll_period', 0.1, config, float) set_attribute(self, 'critical_input', '', config) set_attribute(self, 'send_retries', 3, config, int) set_attribute(self, 'enabled', 1, config, as_boolean) set_attribute(self, 'require_acknowledge', 0, config, as_boolean) self._manager = self.parent.parent
def configure(self,config): PeriodicColumn.configure(self, config) if not self.has_child('average'): c = Calculator() c.configure({'name':'average', 'parent':self, 'statement':'(value + last_value)/2.0', 'variables':[{'vn':'value', 'node_reference':'$value'}, {'vn':'last_value', 'node_reference':'$last_value'}, {'vn':'last_time', 'node_reference':'$last_time'}, {'vn':'now','node_reference':'$now'}, {'vn':'period', 'node_reference':'$period'}]}) return
def configure(self,config): Calculator.configure(self, config) message = '' if not (config.has_key('message') and config['message']): for var in self.variables: if message: message += ', ' message += '%s = ${%s}' % (var['vn'],var['vn']) set_attribute(self, 'message', message, {}) else: set_attribute(self, 'message', REQUIRED, config) set_attribute(self, 'poll_period', 0.1, config, float) set_attribute(self, 'critical_input', '', config) set_attribute(self, 'send_retries', 3, config, int) set_attribute(self, 'enabled', 1, config, as_boolean) set_attribute(self, 'require_acknowledge', 0, config, as_boolean) self._manager = self.parent.parent
def configure(self,config): set_attribute(self,'node',REQUIRED,config) config['function'] = 'mpx.lib.node.as_node("%s").get' % self.node PeriodicColumn.configure(self,config) set_attribute(self,'delta',0,config,as_boolean) if self.delta: c = Calculator() c.configure({'name':'delta', 'parent':self, 'statement':'value-last_value', 'variables':[{'vn':'value', 'node_reference':'$value'}, {'vn':'last_value', 'node_reference':'$last_value'}]}) set_attribute(self,'meter_description',self.name,config) set_attribute(self,'account',REQUIRED,config) set_attribute(self,'meter_number',REQUIRED,config) set_attribute(self,'units','',config)
def configure(self, config): PeriodicColumn.configure(self, config) if not self.has_child("average"): c = Calculator() c.configure( { "name": "average", "parent": self, "statement": "(value + last_value)/2.0", "variables": [ {"vn": "value", "node_reference": "$value"}, {"vn": "last_value", "node_reference": "$last_value"}, {"vn": "last_time", "node_reference": "$last_time"}, {"vn": "now", "node_reference": "$now"}, {"vn": "period", "node_reference": "$period"}, ], } ) return
def configure(self, config): PeriodicColumn.configure(self, config) if not self.has_child('delta'): c = Calculator() c.configure({ 'name': 'delta', 'parent': self, 'statement': 'value - last_value', 'variables': [{ 'vn': 'value', 'node_reference': '$value' }, { 'vn': 'last_value', 'node_reference': '$last_value' }] }) return
def configure(self,config): Calculator.configure(self, config) _Trigger.configure(self, config) message = '' if 'poll_period' in config: try: policy = float(config['poll_period']) except ValueError: raise ValueError('Value of field \'Poll period\' is not numeric') if not (config.has_key('message') and config['message']): for var in self.variables: if message: message += ', ' message += '%s = ${%s}' % (var['vn'],var['vn']) set_attribute(self, 'message', message, {}) else: set_attribute(self, 'message', REQUIRED, config) set_attribute(self, 'poll_period', 2, config, float) set_attribute(self, 'critical_input', '', config) set_attribute(self, 'description', '', config) set_attribute(self, 'enabled', 1, config, as_boolean) self.manager = self.parent
def configure(self, config): Calculator.configure(self, config) _Trigger.configure(self, config) message = '' if 'poll_period' in config: try: policy = float(config['poll_period']) except ValueError: raise ValueError( 'Value of field \'Poll period\' is not numeric') if not (config.has_key('message') and config['message']): for var in self.variables: if message: message += ', ' message += '%s = ${%s}' % (var['vn'], var['vn']) set_attribute(self, 'message', message, {}) else: set_attribute(self, 'message', REQUIRED, config) set_attribute(self, 'poll_period', 2, config, float) set_attribute(self, 'critical_input', '', config) set_attribute(self, 'description', '', config) set_attribute(self, 'enabled', 1, config, as_boolean) self.manager = self.parent