/** * Checks if the bindingConfig contains a valid binding type and returns an appropriate instance. * * @param item * @param bindingConfig * @throws BindingConfigParseException if bindingConfig is no valid binding type */ protected HeatPumpBindingConfig parseBindingConfig(Item item, HeatpumpCommandType bindingConfig) throws BindingConfigParseException { if (HeatpumpCommandType.validateBinding(bindingConfig, item.getClass())) { return new HeatPumpBindingConfig(bindingConfig); } else { throw new BindingConfigParseException("'" + bindingConfig + "' is no valid binding type"); } }
/** {@inheritDoc} */ @Override public void processBindingConfiguration(String context, Item item, String heatpumpCommand) throws BindingConfigParseException { super.processBindingConfiguration(context, item, heatpumpCommand); if (heatpumpCommand != null) { HeatPumpBindingConfig config = parseBindingConfig(item, HeatpumpCommandType.fromString(heatpumpCommand)); addBindingConfig(item, config); } else { logger.warn("bindingConfig is NULL (item={}) -> processing bindingConfig aborted!", item); } }