async def METHOD_NAME(self, ignore_issues=False, force=False):
    """Update."""
    if not await self.common_update(ignore_issues, force) and not force:
        return
    if self.repository_manifest.content_in_root:
        self.content.path.remote = ""
    if self.content.path.remote == "custom_components":
        name = get_first_directory_in_directory(self.tree, "custom_components")
        self.content.path.remote = f"custom_components/{name}"
    # Get the content of manifest.json
    if manifest := await self.async_get_integration_manifest():
        try:
            self.integration_manifest = manifest
            self.data.authors = manifest.get("codeowners", [])
            self.data.domain = manifest["domain"]
            self.data.manifest_name = manifest.get("name")
            self.data.config_flow = manifest.get("config_flow", False)
        except KeyError as exception:
            self.validate.errors.append(
                f"Missing expected key '{exception}' in { RepositoryFile.MAINIFEST_JSON}"
            )
            self.hacs.log.error(
                "Missing expected key '%s' in '%s'", exception, RepositoryFile.MAINIFEST_JSON
            )
    # Set local path
    self.content.path.local = self.localpath
    # Signal entities to refresh
    if self.data.installed:
        self.hacs.async_dispatch(
            HacsDispatchEvent.REPOSITORY,
            {
                "id": 1337,
                "action": "update",
                "repository": self.data.full_name,
                "repository_id": self.data.id,
            },
        )