Get a valid instance of the specified platform. Do not cache this
        object, it might change with configuration changes.

async def get_platform(self, name: Text):
        """
        Get a valid instance of the specified platform. Do not cache this
        object, it might change with configuration changes.
        """

        if not self._is_init:
            await self.init()

        if name not in self.platforms:
            self.platforms[name] = \
                await self.build_platform(self.get_class(name), name)

        return self.platforms[name]