123456789101112131415161718192021222324252627282930313233343536373839 |
- #!/usr/bin/env python3
- import json
- import time
- import lib.helper
- class Respondd:
- def __init__(self, config):
- self._config = config
- self.__cache = {}
- self.__cacheTime = 0
- def getNodeID(self):
- if 'nodeinfo' in self._config and 'node_id' in self._config['nodeinfo']:
- return self._config['nodeinfo']['node_id']
- else:
- return lib.helper.getInterfaceMAC(self._config['batman']).replace(':', '')
- def getStruct(self, rootName=None):
- if 'caching' in self._config and time.time() - self.__cacheTime <= self._config['caching']:
- ret = self.__cache
- else:
- ret = self._get()
- self.__cache = ret
- self.__cacheTime = time.time()
- ret['node_id'] = self.getNodeID()
- if rootName is not None:
- ret_tmp = ret
- ret = {}
- ret[rootName] = ret_tmp
- return ret
- @staticmethod
- def _get():
- return {}
|