public class PresenceDetector extends Object implements org.openbase.jul.iface.Manageable<org.openbase.jul.pattern.provider.DataProvider<rst.domotic.unit.location.LocationDataType.LocationData>>, org.openbase.jul.pattern.provider.DataProvider<rst.domotic.state.PresenceStateType.PresenceState>
| Modifier and Type | Field and Description |
|---|---|
protected org.slf4j.Logger |
logger |
static long |
PRESENCE_TIMEOUT
Default 3 minute window of no movement unit the state switches to
NO_MOTION.
|
| Constructor and Description |
|---|
PresenceDetector() |
| Modifier and Type | Method and Description |
|---|---|
void |
activate() |
void |
addDataObserver(org.openbase.jul.pattern.Observer<rst.domotic.state.PresenceStateType.PresenceState> observer) |
void |
deactivate() |
rst.domotic.state.PresenceStateType.PresenceState |
getData() |
Class<rst.domotic.state.PresenceStateType.PresenceState> |
getDataClass() |
CompletableFuture<rst.domotic.state.PresenceStateType.PresenceState> |
getDataFuture() |
void |
init(org.openbase.jul.pattern.provider.DataProvider<rst.domotic.unit.location.LocationDataType.LocationData> locationDataProvider) |
void |
init(org.openbase.jul.pattern.provider.DataProvider<rst.domotic.unit.location.LocationDataType.LocationData> locationDataProvider,
long motionTimeout) |
boolean |
isActive() |
boolean |
isDataAvailable() |
void |
removeDataObserver(org.openbase.jul.pattern.Observer<rst.domotic.state.PresenceStateType.PresenceState> observer) |
void |
shutdown() |
void |
waitForData() |
void |
waitForData(long timeout,
TimeUnit timeUnit) |
public static final long PRESENCE_TIMEOUT
protected final org.slf4j.Logger logger
public void init(org.openbase.jul.pattern.provider.DataProvider<rst.domotic.unit.location.LocationDataType.LocationData> locationDataProvider)
throws org.openbase.jul.exception.InitializationException,
InterruptedException
init in interface org.openbase.jul.iface.Initializable<org.openbase.jul.pattern.provider.DataProvider<rst.domotic.unit.location.LocationDataType.LocationData>>org.openbase.jul.exception.InitializationExceptionInterruptedExceptionpublic void init(org.openbase.jul.pattern.provider.DataProvider<rst.domotic.unit.location.LocationDataType.LocationData> locationDataProvider,
long motionTimeout)
throws org.openbase.jul.exception.InitializationException,
InterruptedException
org.openbase.jul.exception.InitializationExceptionInterruptedExceptionpublic void activate()
throws org.openbase.jul.exception.CouldNotPerformException,
InterruptedException
activate in interface org.openbase.jul.iface.Activatableorg.openbase.jul.exception.CouldNotPerformExceptionInterruptedExceptionpublic void deactivate()
throws org.openbase.jul.exception.CouldNotPerformException,
InterruptedException
deactivate in interface org.openbase.jul.iface.Activatableorg.openbase.jul.exception.CouldNotPerformExceptionInterruptedExceptionpublic boolean isActive()
isActive in interface org.openbase.jul.iface.Activatablepublic void shutdown()
shutdown in interface org.openbase.jul.iface.Manageable<org.openbase.jul.pattern.provider.DataProvider<rst.domotic.unit.location.LocationDataType.LocationData>>shutdown in interface org.openbase.jul.iface.Shutdownablepublic boolean isDataAvailable()
isDataAvailable in interface org.openbase.jul.pattern.provider.DataProvider<rst.domotic.state.PresenceStateType.PresenceState>public Class<rst.domotic.state.PresenceStateType.PresenceState> getDataClass()
getDataClass in interface org.openbase.jul.pattern.provider.DataProvider<rst.domotic.state.PresenceStateType.PresenceState>public rst.domotic.state.PresenceStateType.PresenceState getData()
throws org.openbase.jul.exception.NotAvailableException
getData in interface org.openbase.jul.pattern.provider.DataProvider<rst.domotic.state.PresenceStateType.PresenceState>org.openbase.jul.exception.NotAvailableExceptionpublic CompletableFuture<rst.domotic.state.PresenceStateType.PresenceState> getDataFuture()
getDataFuture in interface org.openbase.jul.pattern.provider.DataProvider<rst.domotic.state.PresenceStateType.PresenceState>public void addDataObserver(org.openbase.jul.pattern.Observer<rst.domotic.state.PresenceStateType.PresenceState> observer)
addDataObserver in interface org.openbase.jul.pattern.provider.DataProvider<rst.domotic.state.PresenceStateType.PresenceState>public void removeDataObserver(org.openbase.jul.pattern.Observer<rst.domotic.state.PresenceStateType.PresenceState> observer)
removeDataObserver in interface org.openbase.jul.pattern.provider.DataProvider<rst.domotic.state.PresenceStateType.PresenceState>public void waitForData()
throws org.openbase.jul.exception.CouldNotPerformException,
InterruptedException
waitForData in interface org.openbase.jul.pattern.provider.DataProvider<rst.domotic.state.PresenceStateType.PresenceState>org.openbase.jul.exception.CouldNotPerformExceptionInterruptedExceptionpublic void waitForData(long timeout,
TimeUnit timeUnit)
throws org.openbase.jul.exception.CouldNotPerformException,
InterruptedException
waitForData in interface org.openbase.jul.pattern.provider.DataProvider<rst.domotic.state.PresenceStateType.PresenceState>org.openbase.jul.exception.CouldNotPerformExceptionInterruptedExceptionCopyright © 2014–2018 openbase.org. All rights reserved.