for (ServiceTemplateConfigType.ServiceTemplateConfig serviceTemplateConfig : unitTemplateConfig.getServiceTemplateConfigList()) { ServiceConfigType.ServiceConfig.Builder serviceConfig = ServiceConfigType.ServiceConfig.newBuilder().setBindingConfig(BindingConfigType.BindingConfig.newBuilder().setBindingId(deviceClass.getBindingConfig().getBindingId())); serviceConfig.setServiceDescription(ServiceDescription.newBuilder().setType(serviceTemplateConfig.getServiceType())); serviceConfigs.add(serviceConfig.build());
if (unitTemplateConfig.getId().equals(config.getUnitTemplateConfigId())) { for (ServiceTemplateConfigType.ServiceTemplateConfig serviceTempalteConfig : unitTemplateConfig.getServiceTemplateConfigList()) { if (serviceTempalteConfig.getServiceType() == ServiceTemplateType.ServiceTemplate.ServiceType.COLOR_STATE_SERVICE) { colorStateServiceTemplateConfig = serviceTempalteConfig;
if (unitTemplateConfig.getId().equals(config.getUnitTemplateConfigId())) { for (ServiceTemplateConfig serviceTempalteConfig : unitTemplateConfig.getServiceTemplateConfigList()) { if (serviceTempalteConfig.getServiceType() == ServiceType.COLOR_STATE_SERVICE) { colorStateServiceTemplateConfig = serviceTempalteConfig;
/** * Lookups the service template of the given ServiceType out of the unit * template. * * @param unitTemplate to lookup the service template. * @param serviceType the service type to resolve the template. * @return the related service template for the given service type. * @throws NotAvailableException */ private ServiceTemplateConfig lookupServiceTemplate(final DeviceClass deviceClass, final UnitConfig unitConfig, final ServiceConfig serviceConfig) throws NotAvailableException { List<UnitTemplateConfig> unitTemplateConfigList = deviceClass.getUnitTemplateConfigList(); for (UnitTemplateConfig unitTemplateConfig : unitTemplateConfigList) { if (unitTemplateConfig.getId().equals(unitConfig.getUnitTemplateConfigId())) { List<ServiceTemplateConfig> serviceTemplateList = unitTemplateConfig.getServiceTemplateConfigList(); for (ServiceTemplateConfig serviceTemplate : serviceTemplateList) { if (serviceTemplate.getServiceType().equals(serviceConfig.getServiceDescription().getType())) { return serviceTemplate; } } } } throw new NotAvailableException("service template for ServiceType[" + serviceConfig.getServiceDescription().getType().name() + "]"); }