from parallels.core.utils.entity import Entity


class DiskUsage(Entity):
    def __init__(
        self, domain_id, httpdocs, httpsdocs, subdomains, web_users, anonftp,
        mysql_dbases, mssql_dbases, mailboxes, webapps, maillists
    ):
        self._domain_id = domain_id
        self._httpdocs = httpdocs
        self._httpsdocs = httpsdocs
        self._subdomains = subdomains
        self._web_users = web_users
        self._anonftp = anonftp
        self._mysql_dbases = mysql_dbases
        self._mssql_dbases = mssql_dbases
        self._mailboxes = mailboxes
        self._webapps = webapps
        self._maillists = maillists

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

    @property
    def httpdocs(self):
        """
        :rtype: str | unicode | None
        """
        return self._httpdocs

    @property
    def httpsdocs(self):
        """
        :rtype: str | unicode | None
        """
        return self._httpsdocs

    @property
    def subdomains(self):
        """
        :rtype: str | unicode | None
        """
        return self._subdomains

    @property
    def web_users(self):
        """
        :rtype: str | unicode | None
        """
        return self._web_users

    @property
    def anonftp(self):
        """
        :rtype: str | unicode | None
        """
        return self._anonftp

    @property
    def mysql_dbases(self):
        """
        :rtype: str | unicode | None
        """
        return self._mysql_dbases

    @property
    def mssql_dbases(self):
        """
        :rtype: str | unicode | None
        """
        return self._mssql_dbases

    @property
    def mailboxes(self):
        """
        :rtype: str | unicode | None
        """
        return self._mailboxes

    @property
    def webapps(self):
        """
        :rtype: str | unicode | None
        """
        return self._webapps

    @property
    def maillists(self):
        """
        :rtype: str | unicode | None
        """
        return self._maillists
