def get_data(self): plugins = [] users = [] # Admin if policy.check((("iot", "iot:list_all_plugins"), ), self.request): try: plugins = iotronic.plugin_list(self.request, None, None, all_plugins=True) users = keystone.user_list(self.request) except Exception: exceptions.handle( self.request, _('Unable to retrieve plugins \ list.')) # Admin_iot_project elif policy.check((("iot", "iot:list_project_plugins"), ), self.request): try: plugins = iotronic.plugin_list(self.request, None, None, with_public=True) except Exception: exceptions.handle(self.request, _('Unable to retrieve user plugins list.')) # Other users else: # FROM """ msg = _("Insufficient privilege level to view plugins information.") messages.info(self.request, msg) """ # TO try: plugins = iotronic.plugin_list(self.request, None, None, with_public=True) except Exception: exceptions.handle(self.request, _('Unable to retrieve user plugins list.')) # Replace owner column values (user.id) with user.name (only Admin # can see human-readable names) for plugin in plugins: for user in users: if plugin.owner == user.id: plugin.owner = user.name break return plugins
def preload_all_users(self): """Preloads all users into dictionary. It's more effective to preload all users, rather than fetching many users by separate API get calls. """ users = keystone.user_list(self._request) # Cache all users on right indexes, this is more effective than to # page large number of users one by one by keystone.user_get for u in users: self._users[u.id] = u
def preload_all_users(self): """Preloads all users into dictionary. It's more effective to preload all users, rather the fetching many users by separate API get calls. """ users = keystone.user_list(self._request) # Cache all users on right indexes, this is more effective than to # obtain large number of users one by one by keystone.user_get for u in users: self._users[u.id] = u