1
0
mirror of https://github.com/quay/quay.git synced 2026-01-26 06:21:37 +03:00
Files
quay/endpoints/common_models_interface.py
Oleg Bulatov 5eaf0584db chore: Run mypy as CI job (#1363)
* Run mypy as CI job

* Fix peewee.pyi and configure pyright
2022-06-13 11:01:17 +02:00

43 lines
886 B
Python

from typing import List
from abc import ABCMeta, abstractmethod
from collections import namedtuple
from six import add_metaclass
USER_FIELDS: List[str] = [
"uuid",
"username",
"email",
"given_name",
"family_name",
"company",
"location",
]
class User(namedtuple("User", USER_FIELDS)): # type: ignore[misc]
"""
User represents a user.
"""
@add_metaclass(ABCMeta)
class EndpointsCommonDataInterface(object):
"""
Interface that represents all data store interactions required by the common endpoints lib.
"""
@abstractmethod
def get_user(self, user_uuid):
"""
Returns the User matching the given uuid, if any or None if none.
"""
@abstractmethod
def get_namespace_uuid(self, namespace_name):
"""
Returns the uuid of the Namespace with the given name, if any.
"""