Source code for kadi_apy.cli.lib.users

# Copyright 2020 Karlsruhe Institute of Technology
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
from kadi_apy.cli.commons import RaiseRequestErrorMixin
from kadi_apy.lib.resources.users import User


[docs]class CLIUser(User, RaiseRequestErrorMixin): """User class to be used in a CLI. A user can either be clearly identified via its id or the combination of username and identity type. :param manager: Manager to use for all API requests. :type manager: CLIManager :param id: The ID of an existing user. :type id: int, optional :param username: The username. :type username: str, optional :param identity_type: The identity type of the user. :type identity_type: str, optional :param use_pat: Flag to indicate that the pat stored in the CLIKadiManager should be used for instantiating the user. :type use_pat: bool, optional :raises KadiAPYRequestError: If retrieving the user was not successful. """
[docs] def print_info(self): """Print user infos using a CLI.""" self.info( f"Displayname: {self.meta['displayname']}\n" f"ID: {self.id}\n" f"Username: {self.meta['identity']['username']}\n" f"Identity type: {self.meta['identity']['identity_type']}" )