use of org.openhab.binding.knx.config.KNXBindingProvider in project openhab1-addons by openhab.
the class KNXBinding method allBindingsChanged.
/*
* (non-Javadoc)
*
* @see org.openhab.core.binding.AbstractBinding#allBindingsChanged(org.openhab.core.binding.BindingProvider)
*/
@Override
public void allBindingsChanged(BindingProvider provider) {
logger.trace("allBindingsChanged() msg received.");
if (mKNXConnectionEstablished) {
logger.debug("Initializing readable DPs.");
if (provider instanceof KNXBindingProvider) {
KNXBindingProvider knxProvider = (KNXBindingProvider) provider;
mKNXBusReaderScheduler.clear();
for (Datapoint datapoint : knxProvider.getReadableDatapoints()) {
mKNXBusReaderScheduler.readOnce(datapoint);
int autoRefreshTimeInSecs = knxProvider.getAutoRefreshTime(datapoint);
if (autoRefreshTimeInSecs > 0) {
if (!mKNXBusReaderScheduler.scheduleRead(datapoint, knxProvider.getAutoRefreshTime(datapoint))) {
logger.warn("Couldn't add to KNX bus reader scheduler (allBindingsChanged, datapoint='{}')", datapoint);
}
}
}
}
}
}
use of org.openhab.binding.knx.config.KNXBindingProvider in project openhab1-addons by openhab.
the class KNXBinding method deactivate.
public void deactivate(ComponentContext componentContext) {
logger.trace("KNXBinding: deactivating");
KNXConnection.removeConnectionListener(this);
for (KNXBindingProvider provider : providers) {
provider.removeBindingChangeListener(this);
}
providers.clear();
mKNXBusReaderScheduler.stop();
KNXConnection.disconnect();
}
use of org.openhab.binding.knx.config.KNXBindingProvider in project openhab1-addons by openhab.
the class KNXBinding method connectionEstablished.
/*
* (non-Javadoc)
*
* @see org.openhab.binding.knx.internal.connection.KNXConnectionListener#connectionEstablished()
*/
@Override
public void connectionEstablished() {
logger.trace("connectionEstablished() msg received. Initializing readable DPs.");
mKNXConnectionEstablished = true;
for (KNXBindingProvider knxProvider : providers) {
for (Datapoint datapoint : knxProvider.getReadableDatapoints()) {
mKNXBusReaderScheduler.readOnce(datapoint);
int autoRefreshTimeInSecs = knxProvider.getAutoRefreshTime(datapoint);
if (autoRefreshTimeInSecs > 0) {
if (!mKNXBusReaderScheduler.scheduleRead(datapoint, autoRefreshTimeInSecs)) {
logger.warn("Couldn't add to KNX bus reader scheduler (connectionEstablished, datapoint='{}')", datapoint);
}
}
}
}
}
Aggregations