Package org.openhab.model.item.binding

Examples of org.openhab.model.item.binding.BindingConfigParseException


   */
  protected FritzboxBindingConfig parseBindingConfig(Item item, String bindingConfig) throws BindingConfigParseException {
    if(ArrayUtils.contains(FritzboxBindingProvider.TYPES, bindingConfig) || ArrayUtils.contains(FritzboxBindingProvider.TYPES, bindingConfig.substring(0,3))) {
      return new FritzboxBindingConfig(item.getClass(), bindingConfig);
    } else {
      throw new BindingConfigParseException("'" + bindingConfig + "' is no valid binding type");
    }
  }
View Full Code Here


  private DaikinCommandType commandType;
 
  public DaikinBindingConfig(String itemName, String bindingConfig) throws BindingConfigParseException {
    String[] config = bindingConfig.split(":");
    if (config.length != 2)
      throw new BindingConfigParseException("Invalid Daikin binding configuration '" + bindingConfig + "' for item " + itemName + ". Expecting '<id>:<command>'.");
   
    this.itemName = itemName;
    this.id = StringUtils.trim(config[0]);
    this.commandType = DaikinCommandType.fromString(config[1]);
  }
View Full Code Here

   */
  @Override
  public void validateItemType(Item item, String bindingConfig) throws BindingConfigParseException {
    DaikinBindingConfig config = new DaikinBindingConfig(item.getName(), bindingConfig);
    if (item.getClass() != config.getCommandType().getSupportedItemType()) {
      throw new BindingConfigParseException("Item '" + item.getName()
          + "' is of type '" + item.getClass().getSimpleName()
          + "', only '" + config.getCommandType().getSupportedItemType().getSimpleName()
          + "' are allowed for command '" + config.getCommandType().toString()
          + "' - please check your *.items configuration");     
    }
View Full Code Here

    String[] config = splitConfigurationString(configuration);
    try {

      if (config.length != 5) {
        throw new BindingConfigParseException(
            "Configuration requires 5 parameters separated by ':'");
      }

      if (StringUtils.isEmpty(config[0])) {
        throw new BindingConfigParseException("Missing broker name.");
      } else {
        setBroker(config[0].trim());
      }

      if (StringUtils.isEmpty(config[1]) || config[1].indexOf('+') != -1
          || config[1].indexOf('#') != -1) {
        throw new BindingConfigParseException("Invalid topic.");
      } else {
        setTopic(config[1].trim());
      }

      if (StringUtils.isEmpty(config[2])) {
        throw new BindingConfigParseException("Missing type.");
      } else {
        try {
          MessageType t = MessageType.valueOf(config[2].trim().toUpperCase());
          setMessageType(t);
        } catch (IllegalArgumentException e) {
          throw new BindingConfigParseException("Invalid type.");
        }
      }

      if (StringUtils.isEmpty(config[3])) {
        throw new BindingConfigParseException("Missing trigger.");
      } else {
        trigger = config[3].trim();
      }

      if (StringUtils.isEmpty(config[4])) {
        throw new BindingConfigParseException("Missing transformation configuration.");
      } else {
        setTransformationRule(config[4].trim());
        initTransformService();
      }

    } catch (BindingConfigParseException e) {
      throw new BindingConfigParseException("Configuration '"
          + configuration
          + "' is not a valid outbound configuration: "
          + e.getMessage());
    }
  }
View Full Code Here

   * @{inheritDoc
   */
  @Override
  public void validateItemType(Item item, String bindingConfig) throws BindingConfigParseException {
    if (!(item instanceof NumberItem)) {
      throw new BindingConfigParseException(
          "item '" + item.getName() + "' is of type '"
            + item.getClass().getSimpleName()
            + "', only NumberItems are allowed - please check your *.items configuration");
    }
  }
View Full Code Here

    String[] config = splitConfigurationString(configuration);
    try {

      if (config.length != 4 && config.length != 5) {
        throw new BindingConfigParseException(
            "Configuration requires 4 or 5 parameters separated by ':'");
      }

      if (StringUtils.isEmpty(config[0])) {
        throw new BindingConfigParseException("Missing broker name.");
      } else {
        setBroker(config[0].trim());
      }

      if (StringUtils.isEmpty(config[1])) {
        throw new BindingConfigParseException("Invalid topic.");
      } else {
        setTopic(config[1].trim());
      }

      if (StringUtils.isEmpty(config[2])) {
        throw new BindingConfigParseException("Missing type.");
      } else {
        try {
          MessageType t = MessageType.valueOf(config[2].trim()
              .toUpperCase());
          setMessageType(t);
        } catch (IllegalArgumentException e) {
          throw new BindingConfigParseException("Invalid type.");
        }
      }

      if (StringUtils.isEmpty(config[3])) {
        throw new BindingConfigParseException(
            "Missing transformation configuration.");
      } else {
        setTransformationRule(config[3].trim());
        initTransformService();
      }
      if (config.length > 4) {
        setMsgFilter(config[4].trim());
      }

    } catch (BindingConfigParseException e) {
      throw new BindingConfigParseException("Configuration '"
          + configuration
          + "' is not a valid inbound configuration: "
          + e.getMessage());
    }
View Full Code Here

   * @{inheritDoc
   */
  @Override
  public void validateItemType(Item item, String bindingConfig) throws BindingConfigParseException {
    if (!(item instanceof SwitchItem || item instanceof NumberItem || item instanceof DimmerItem)) {
      throw new BindingConfigParseException(
          "item '"
              + item.getName()
              + "' is of type '"
              + item.getClass().getSimpleName()
              + "', only Number and Switch- and DimmerItems are allowed - please check your *.items configuration");
View Full Code Here

    config.setItemName(item.getName());

    String[] configParts = bindingConfig.trim().split(":");

    if (configParts.length < 1) {
      throw new BindingConfigParseException("Tellstick binding must contain two parts separated by ':'");
    }
    TellstickDevice device;
    try {
      device = findDevice(configParts[0].trim());
    } catch (SupportedMethodsException e) {
      throw new BindingConfigParseException(e.getMessage());
    }
    validateBinding(item, configParts, device);

    if (device == null) {
      config.setId(Integer.valueOf(configParts[0].trim()));
View Full Code Here

  }

  private void validateBinding(Item item, String[] configParts, TellstickDevice device)
      throws BindingConfigParseException {
    if (device == null && !StringUtils.isNumeric(configParts[0].trim())) {
      throw new BindingConfigParseException("item '" + item.getName() + "' telldus device "
          + configParts[0].trim() + " not found");
    }
    if (configParts.length > 3 && !StringUtils.isNumeric(configParts[3].trim())) {
      throw new BindingConfigParseException("item '" + item.getName() + "' resend config wrong"
          + configParts[3].trim() + " not a number");
    }
  }
View Full Code Here

        subscribeConfigurations.add(subscribeConfig);
      } else if (type.equals(">")) {
        MqttMessagePublisher publishConfig = new MqttMessagePublisher(configContent);
        publishConfigurations.add(publishConfig);
      } else {
        throw new BindingConfigParseException(
          "Invalid mqtt binding configuration '" + configContent + "' for item " + itemName);
      }
    }

    logger.debug(
View Full Code Here

TOP

Related Classes of org.openhab.model.item.binding.BindingConfigParseException

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.