Search in sources :

Example 1 with IntertechnoAddressParser

use of org.openhab.binding.intertechno.internal.parser.IntertechnoAddressParser in project openhab1-addons by openhab.

the class CULIntertechnoGenericBindingProvider method processBindingConfiguration.

/**
     * config of style
     * <code>{{@literal intertechno="type=<classic|fls|rev>;group=<group>;address=<address>"}}</code><br>
     * 
     * {@inheritDoc}
     */
@Override
public void processBindingConfiguration(String context, Item item, String bindingConfig) throws BindingConfigParseException {
    super.processBindingConfiguration(context, item, bindingConfig);
    String[] configParts = bindingConfig.split(";");
    String type = configParts[0].split("=")[1];
    List<String> addressParts = new ArrayList<String>(3);
    for (int i = 1; i < configParts.length; i++) {
        addressParts.add(configParts[i].split("=")[1]);
    }
    IntertechnoAddressParser parser = AddressParserFactory.getParser(type);
    String address = parser.parseAddress(addressParts.toArray(new String[addressParts.size()]));
    String commandOn = parser.getCommandValueON();
    String commandOff = parser.getCOmmandValueOFF();
    IntertechnoBindingConfig config = new IntertechnoBindingConfig(address, commandOn, commandOff);
    addBindingConfig(item, config);
}
Also used : IntertechnoAddressParser(org.openhab.binding.intertechno.internal.parser.IntertechnoAddressParser) ArrayList(java.util.ArrayList) IntertechnoBindingConfig(org.openhab.binding.intertechno.IntertechnoBindingConfig)

Aggregations

ArrayList (java.util.ArrayList)1 IntertechnoBindingConfig (org.openhab.binding.intertechno.IntertechnoBindingConfig)1 IntertechnoAddressParser (org.openhab.binding.intertechno.internal.parser.IntertechnoAddressParser)1