1 """Support for NZBGet switches."""
3 from __future__
import annotations
13 from .const
import DATA_COORDINATOR, DOMAIN
14 from .coordinator
import NZBGetDataUpdateCoordinator
15 from .entity
import NZBGetEntity
21 async_add_entities: AddEntitiesCallback,
23 """Set up NZBGet sensor based on a config entry."""
24 coordinator: NZBGetDataUpdateCoordinator = hass.data[DOMAIN][entry.entry_id][
32 entry.data[CONF_NAME],
40 """Representation of a NZBGet download switch."""
42 _attr_translation_key =
"download"
46 coordinator: NZBGetDataUpdateCoordinator,
50 """Initialize a new NZBGet switch."""
54 coordinator=coordinator,
56 entry_name=entry_name,
61 """Return the state of the switch."""
62 return not self.coordinator.data[
"status"].
get(
"DownloadPaused",
False)
65 """Set downloads to enabled."""
66 await self.
hasshasshass.async_add_executor_job(self.coordinator.nzbget.resumedownload)
70 """Set downloads to paused."""
71 await self.
hasshasshass.async_add_executor_job(self.coordinator.nzbget.pausedownload)
None async_turn_on(self, **Any kwargs)
None __init__(self, NZBGetDataUpdateCoordinator coordinator, str entry_id, str entry_name)
None async_turn_off(self, **Any kwargs)
None async_request_refresh(self)
web.Response get(self, web.Request request, str config_key)
None async_setup_entry(HomeAssistant hass, ConfigEntry entry, AddEntitiesCallback async_add_entities)