From ea79bdc287429791e70f2e855d70cbbbe463dd3c Mon Sep 17 00:00:00 2001 From: Gauvain Pocentek Date: Sat, 24 Jun 2017 09:49:46 +0200 Subject: build submanagers for v3 only --- gitlab/__init__.py | 31 ++++++++++++++++--------------- 1 file changed, 16 insertions(+), 15 deletions(-) diff --git a/gitlab/__init__.py b/gitlab/__init__.py index d5aa92d..3f61c5f 100644 --- a/gitlab/__init__.py +++ b/gitlab/__init__.py @@ -118,21 +118,22 @@ class Gitlab(object): else: self.dockerfiles = objects.DockerfileManager(self) - # build the "submanagers" - for parent_cls in six.itervalues(vars(objects)): - if (not inspect.isclass(parent_cls) - or not issubclass(parent_cls, objects.GitlabObject) - or parent_cls == objects.CurrentUser): - continue - - if not parent_cls.managers: - continue - - for var, cls_name, attrs in parent_cls.managers: - var_name = '%s_%s' % (self._cls_to_manager_prefix(parent_cls), - var) - manager = getattr(objects, cls_name)(self) - setattr(self, var_name, manager) + if self._api_version == '3': + # build the "submanagers" + for parent_cls in six.itervalues(vars(objects)): + if (not inspect.isclass(parent_cls) + or not issubclass(parent_cls, objects.GitlabObject) + or parent_cls == objects.CurrentUser): + continue + + if not parent_cls.managers: + continue + + for var, cls_name, attrs in parent_cls.managers: + prefix = self._cls_to_manager_prefix(parent_cls) + var_name = '%s_%s' % (perfix, var) + manager = getattr(objects, cls_name)(self) + setattr(self, var_name, manager) @property def api_version(self): -- cgit v1.2.1