From d8fca496b2ad500c6778c60164bb2e1478ae8dcd Mon Sep 17 00:00:00 2001 From: Tony Mack Date: Tue, 16 Jan 2007 22:50:49 +0000 Subject: [PATCH] - call GetSlices and GetPersons --- PLC/Methods/SliceUsersList.py | 29 ++++++++--------------------- 1 file changed, 8 insertions(+), 21 deletions(-) diff --git a/PLC/Methods/SliceUsersList.py b/PLC/Methods/SliceUsersList.py index 9100691..2b10a88 100644 --- a/PLC/Methods/SliceUsersList.py +++ b/PLC/Methods/SliceUsersList.py @@ -4,10 +4,12 @@ from PLC.Filter import Filter from PLC.Auth import Auth from PLC.Slices import Slice, Slices from PLC.Persons import Person, Persons +from PLC.Methods.GetSlices import GetSlices +from PLC.Methods.GetPersons import GetPersons -class SliceUsersList(Method): +class SliceUsersList(GetSlices, GetPersons): """ - Deprecated. Can be implemented with GetSlices. + Deprecated. Can be implemented with GetSlices and GetPersons. List users that are members of the named slice. @@ -28,29 +30,14 @@ class SliceUsersList(Method): def call(self, auth, slice_name): - # If we are not admin, make sure to return only viewable - # slices. + slice_filter = [slice_name] - slices = Slices(self.api, slice_filter) + slices = GetSlices.call(self, auth, slice_filter) if not slices: - raise PLCInvalidArgument, "No such slice" + return [] slice = slices[0] - if 'admin' not in self.caller['roles']: - # Get slices that we are able to view - valid_slice_ids = self.caller['slice_ids'] - if 'pi' in self.caller['roles'] and self.caller['site_ids']: - sites = Sites(self.api, self.caller['site_ids']) - for site in sites: - valid_slice_ids += site['slice_ids'] - - if not valid_slice_ids: - return [] - - if slice['slice_id'] not in valid_slice_ids: - return [] - - persons = Persons(self.api, slice['person_ids']) + persons = GetPersons.call(self, auth, slice['person_ids']) person_names = [person['email'] for person in persons] return person_names -- 2.43.0