/**
  * 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);
   }
 }