from parallels.core.utils.entity import Entity


class DatabaseUser(Entity):
    def __init__(self, database_user_id, account_id, database_id, domain_id, database_server_id, login, role):
        self._database_user_id = database_user_id
        self._account_id = account_id
        self._database_id = database_id
        self._domain_id = domain_id
        self._database_server_id = database_server_id
        self._login = login
        self._role = role

    @property
    def database_user_id(self):
        """
        :rtype: str | unicode
        """
        return self._database_user_id

    @property
    def account_id(self):
        """
        :rtype: str | unicode
        """
        return self._account_id

    @property
    def database_id(self):
        """
        :rtype: str | unicode
        """
        return self._database_id

    @property
    def domain_id(self):
        """
        :rtype: str | unicode
        """
        return self._domain_id

    @property
    def database_server_id(self):
        """
        :rtype: str | unicode
        """
        return self._database_server_id

    @property
    def login(self):
        """
        :rtype: str | unicode
        """
        return self._login

    @property
    def role(self):
        """
        :rtype: str | unicode | None
        """
        return self._role
