from data import model from endpoints.api.repotoken_models_interface import RepoTokenDataInterface, RepositoryToken def _token(t): return RepositoryToken(friendly_name=t.friendly_name, code=t.code, role=t.role) class RepoTokenPreOCIModel(RepoTokenDataInterface): def get_repository_tokens(self, namespace_name, repository_name): tokens = model.token.get_repository_delegate_tokens(namespace_name, repository_name) return [_token(t) for t in tokens] def create_repository_token(self, namespace_name, repository_name, friendly_name): token = model.token.create_delegate_token(namespace_name, repository_name, friendly_name) return _token(token) def get_repository_token(self, namespace_name, repository_name, code): try: token = model.token.get_repo_delegate_token(namespace_name, repository_name, code) return _token(token) except model.InvalidTokenException: return None def delete_repository_token(self, namespace_name, repository_name, code): token = model.token.delete_delegate_token(namespace_name, repository_name, code) return _token(token) def set_repository_token_role(self, namespace_name, repository_name, code, role_name): token = model.token.set_repo_delegate_token_role(namespace_name, repository_name, code, role_name) return _token(token) pre_oci_model = RepoTokenPreOCIModel()