/** * {@inheritDoc} */ @Override public List<RdfTriple> getInsertStateValueInstances() { final List<RdfTriple> triples = new ArrayList<>(); for (final ServiceType serviceType : ServiceType.values()) { if (serviceType.equals(ServiceType.UNKNOWN)) { continue; } try { for (final Object stateValue : Services.getServiceStateValues(serviceType).toArray()) { final String stateValueName = StringModifier.firstCharToLowerCase(StringModifier.getCamelCaseName(stateValue.toString())); if (stateValueName.equalsIgnoreCase("unknown")) { continue; } triples.add(new RdfTriple(stateValueName, OntExpr.IS_A.getName(), OntCl.STATE_VALUE.getName())); } } catch (NotAvailableException ex) { // ignore, because existing state values are needed only } } return triples; }
if (serviceType.equals(ServiceType.UNKNOWN)) { continue;
if (!serviceStateDescription.getServiceType().equals(ServiceTemplateType.ServiceTemplate.ServiceType.POWER_STATE_SERVICE) && !serviceStateDescription.getServiceType().equals(ServiceTemplateType.ServiceTemplate.ServiceType.BRIGHTNESS_STATE_SERVICE) && !serviceStateDescription.getServiceType().equals(ServiceTemplateType.ServiceTemplate.ServiceType.COLOR_STATE_SERVICE)) { logger.debug("ignore " + serviceStateDescription.getUnitId() + " because this type is not supported by " + this); continue;
@Override public Future<ActionFuture> applyAction(final ActionDescription actionDescription) throws CouldNotPerformException, InterruptedException { try { if (!actionDescription.getServiceStateDescription().getServiceType().equals(getServiceType())) { throw new VerificationFailedException("Service type is not compatible to given action config!");
/** * {@inheritDoc} * * @throws org.openbase.jul.exception.CouldNotPerformException {@inheritDoc} * @throws org.openbase.jul.exception.NotAvailableException {@inheritDoc} */ @Override public List<UnitConfig> getUnitConfigsByConnection(ServiceType type, String connectionConfigId) throws CouldNotPerformException, NotAvailableException { List<UnitConfig> unitConfigList = new ArrayList<>(); UnitConfig unitConfig; for (String unitConfigId : getConnectionConfigById(connectionConfigId).getConnectionConfig().getUnitIdList()) { try { unitConfig = unitRegistryRemote.getUnitConfigById(unitConfigId); for (ServiceConfigType.ServiceConfig serviceConfig : unitConfig.getServiceConfigList()) { if (serviceConfig.getServiceDescription().getType().equals(type)) { unitConfigList.add(unitConfig); } } } catch (CouldNotPerformException ex) { ExceptionPrinter.printHistory(new CouldNotPerformException("Could not resolve UnitConfigId[" + unitConfigId + "] by device registry!", ex), logger); } } return unitConfigList; }
/** * {@inheritDoc} */ @Override public List<RdfTriple> getInsertStateInstances() { MultiException.ExceptionStack exceptionStack = null; final List<RdfTriple> triples = new ArrayList<>(); for (final ServiceType serviceType : ServiceType.values()) { if (serviceType.equals(ServiceType.UNKNOWN)) { continue; } try { final String stateName = StringModifier.firstCharToLowerCase(Services.getServiceStateName(serviceType)); triples.add(new RdfTriple(stateName, OntExpr.IS_A.getName(), OntCl.STATE.getName())); } catch (NotAvailableException ex) { exceptionStack = MultiException.push(this, ex, exceptionStack); } } try { MultiException.checkAndThrow("There are incompletely stateTypes!", exceptionStack); } catch (MultiException ex) { ExceptionPrinter.printHistory(ex, LOGGER, LogLevel.ERROR); } return triples; }
/** * {@inheritDoc} * * @throws org.openbase.jul.exception.CouldNotPerformException {@inheritDoc} * @throws org.openbase.jul.exception.NotAvailableException {@inheritDoc} */ @Override public List<UnitConfig> getUnitConfigsByConnection(ServiceType type, String connectionConfigId) throws CouldNotPerformException, NotAvailableException { List<UnitConfig> unitConfigList = new ArrayList<>(); UnitConfig unitConfig; for (String unitConfigId : getConnectionConfigById(connectionConfigId).getConnectionConfig().getUnitIdList()) { try { unitConfig = unitRegistry.getUnitConfigById(unitConfigId); for (ServiceConfig serviceConfig : unitConfig.getServiceConfigList()) { if (serviceConfig.getServiceDescription().getType().equals(type)) { unitConfigList.add(unitConfig); } } } catch (CouldNotPerformException ex) { ExceptionPrinter.printHistory(new CouldNotPerformException("Could not resolve UnitConfigId[" + unitConfigId + "] by device registry!", ex), logger); } } return unitConfigList; }
/** * {@inheritDoc} * * @throws org.openbase.jul.exception.CouldNotPerformException {@inheritDoc} * @throws org.openbase.jul.exception.NotAvailableException {@inheritDoc} */ @Override public List<UnitConfig> getUnitConfigsByLocation(final ServiceType type, final String locationConfigId) throws CouldNotPerformException, NotAvailableException { List<UnitConfig> unitConfigList = new ArrayList<>(); UnitConfig unitConfig; for (String unitConfigId : getLocationConfigById(locationConfigId).getLocationConfig().getUnitIdList()) { try { unitConfig = unitRegistryRemote.getUnitConfigById(unitConfigId); for (ServiceConfigType.ServiceConfig serviceConfig : unitConfig.getServiceConfigList()) { if (serviceConfig.getServiceDescription().getType().equals(type)) { unitConfigList.add(unitConfig); } } } catch (CouldNotPerformException ex) { ExceptionPrinter.printHistory(new CouldNotPerformException("Could not resolve UnitConfigId[" + unitConfigId + "] by device registry!", ex), logger); } } return unitConfigList; }
/** * {@inheritDoc} * * @throws org.openbase.jul.exception.CouldNotPerformException {@inheritDoc} * @throws org.openbase.jul.exception.NotAvailableException {@inheritDoc} */ @Override public List<UnitConfig> getUnitConfigsByLocation(final ServiceType type, final String locationConfigId) throws CouldNotPerformException, NotAvailableException { List<UnitConfig> unitConfigList = new ArrayList<>(); UnitConfig unitConfig; for (String unitConfigId : getLocationConfigById(locationConfigId).getLocationConfig().getUnitIdList()) { try { unitConfig = unitRegistry.getUnitConfigById(unitConfigId); for (ServiceConfig serviceConfig : unitConfig.getServiceConfigList()) { if (serviceConfig.getServiceDescription().getType().equals(type)) { unitConfigList.add(unitConfig); } } } catch (CouldNotPerformException ex) { ExceptionPrinter.printHistory(new CouldNotPerformException("Could not resolve UnitConfigId[" + unitConfigId + "] by device registry!", ex), logger); } } return unitConfigList; }
/** * 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() + "]"); }
/** * {@inheritDoc} */ @Override public List<RdfTriple> getInsertProviderServiceInstances() { MultiException.ExceptionStack exceptionStack = null; final List<RdfTriple> triples = new ArrayList<>(); for (final ServiceType serviceType : ServiceType.values()) { if (serviceType.equals(ServiceType.UNKNOWN)) { continue; } try { final String serviceName = StringModifier.firstCharToLowerCase(StringModifier.getServiceTypeName(serviceType)); triples.add(new RdfTriple(serviceName, OntExpr.IS_A.getName(), OntCl.PROVIDER_SERVICE.getName())); } catch (NotAvailableException ex) { exceptionStack = MultiException.push(this, ex, exceptionStack); } } try { MultiException.checkAndThrow("There are incompletely serviceTypes!", exceptionStack); } catch (MultiException ex) { ExceptionPrinter.printHistory(ex, LOGGER, LogLevel.ERROR); } return triples; }
public boolean isNotSpecified() { return type.equals(ServiceType.UNKNOWN); }
private ServiceConfig loadServiceConfig() throws CouldNotPerformException { for (final ServiceConfig serviceConfig : ((Unit<?>) unit).getConfig().getServiceConfigList()) { if (serviceConfig.getServiceDescription().getType().equals(serviceType)) { return serviceConfig; } } throw new CouldNotPerformException("Could not detect service config! Service[" + serviceType.name() + "] is not configured in Unit[" + ((Unit) unit).getId() + "]!"); }
@Override public String toString() { if (type.equals(ServiceType.UNKNOWN)) { return "All"; } return StringProcessor.transformUpperCaseToCamelCase(type.name()); }