
class WebMigratedDatabaseUser(object):
    def __init__(self, migrated_database, source_username, source_password):
        """
        :type migrated_database: parallels.plesk.source.web.migrated_database.WebMigratedDatabase
        :type source_username: str | unicode
        :type source_password: str | unicode
        """
        self._migrated_database = migrated_database

        self._source_username = source_username
        self._source_password = source_password

        self._target_name = self._source_username

    @property
    def database(self):
        """
        :rtype: parallels.plesk.source.web.migrated_database.WebMigratedDatabase
        """
        return self._migrated_database

    @property
    def source_username(self):
        """
        :rtype: str | unicode
        """
        return self._source_username

    @property
    def source_password(self):
        """
        :rtype: str | unicode
        """
        return self._source_password

    @property
    def target_subscription_name(self):
        """
        :rtype: str | unicode
        """
        return self._migrated_database.target_subscription_name

    @property
    def target_username(self):
        """Database user name on the target server

        :rtype: str | unicode
        """
        return self._target_name

    def set_target_username(self, name):
        """
        :type name: str | unicode
        :rtype: None
        """
        self._target_name = name
