mirror of
https://salsa.debian.org/freeipa-team/freeipa.git
synced 2025-02-25 18:55:28 -06:00
Removed PluginProxy and all its uses
This commit is contained in:
committed by
Rob Crittenden
parent
b7b9f9b6a6
commit
c0f558d98b
@@ -382,7 +382,7 @@ class NameSpace(ReadOnly):
|
||||
examples, see the `plugable.API` and the `frontend.Command` classes.
|
||||
"""
|
||||
|
||||
def __init__(self, members, sort=True):
|
||||
def __init__(self, members, sort=True, name_attr='name'):
|
||||
"""
|
||||
:param members: An iterable providing the members.
|
||||
:param sort: Whether to sort the members by member name.
|
||||
@@ -394,14 +394,14 @@ class NameSpace(ReadOnly):
|
||||
self.__sort = sort
|
||||
if sort:
|
||||
self.__members = tuple(
|
||||
sorted(members, key=lambda m: m.name)
|
||||
sorted(members, key=lambda m: getattr(m, name_attr))
|
||||
)
|
||||
else:
|
||||
self.__members = tuple(members)
|
||||
self.__names = tuple(m.name for m in self.__members)
|
||||
self.__names = tuple(getattr(m, name_attr) for m in self.__members)
|
||||
self.__map = dict()
|
||||
for member in self.__members:
|
||||
name = check_name(member.name)
|
||||
name = check_name(getattr(member, name_attr))
|
||||
if name in self.__map:
|
||||
raise AttributeError(OVERRIDE_ERROR %
|
||||
(self.__class__.__name__, name, self.__map[name], member)
|
||||
|
||||
Reference in New Issue
Block a user