8.2.34 | Linux | www-data (uid:33)
👁 View: prober.py
📁 /snap/core18/current/usr/lib/python3/dist-packages/probert/prober.py
# Copyright 2015 Canonical, Ltd. # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU Affero General Public License as # published by the Free Software Foundation, either version 3 of the # License, or (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU Affero General Public License for more details. # # You should have received a copy of the GNU Affero General Public License # along with this program. If not, see <http://www.gnu.org/licenses/>. from probert.storage import Storage from probert.network import Network class Prober(): def __init__(self, options, results={}): self.options = options self.results = results ''' build a list of probe_ methods of this class, excluding probe_all so we don't recurse. This allows probe_all method to call all probe_ methods as we add it without maintaining a list in the code. ''' exclude = ['probe_all'] self.probes = [getattr(self, fn) for fn in filter(lambda x: callable(getattr(self, x)) and x.startswith('probe_') and x not in exclude, dir(self))] def probe(self): # find out what methods to call by looking options for fn in [x for x in dir(self.options) if self.options.__getattribute__(x) is True]: getattr(self, fn)() def probe_all(self): for fn in self.probes: fn() def probe_storage(self): storage = Storage() results = storage.probe() self.results['storage'] = results def probe_network(self): network = Network() results = network.probe() self.results['network'] = results def get_results(self): return self.results
← Back
💻 Terminal
📤 Upload
📂
Click or Drag & Drop
📁 /snap/core18/current/usr/lib/python3/dist-packages/probert
NameSizePermModifiedActions
📁 __pycache__/-07552026-09-01 05:19🗑 Delete
📁 tests/-07552026-09-01 05:19🗑 Delete
__init__.py731B06442016-11-08 23:35👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
_nl80211.cpython-36m-x86_64-linux-gnu.so23.2K06442018-10-15 10:49👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
_nl80211module.c18.1K06442018-10-14 21:27👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
_rtnetlink.cpython-36m-x86_64-linux-gnu.so19K06442018-10-15 10:49👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
_rtnetlinkmodule.c10.1K06442018-10-14 21:27👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
log.py1.4K06442016-07-27 11:12👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
network.py15.6K06442017-02-17 01:05👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
prober.py2K06442016-12-21 21:06👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
storage.py5.5K06442016-11-21 01:43👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del
utils.py7.9K06442016-12-21 21:06👁 View ✏️ Edit 📝 Rename 📦 Move 🗑 Del