if (hasOperationService()) { try { brightnessBar.setValue((int) getProviderService().getBrightnessState().getBrightness()); } catch (CouldNotPerformException ex) { ExceptionPrinter.printHistory(ex, logger); Double brightness = getProviderService().getBrightnessState().getBrightness(); brightnessLevelLabel.setText(numberFormat.format(getProviderService().getBrightnessState().getBrightness()) + "%"); } catch (CouldNotPerformException ex) { ExceptionPrinter.printHistory(ex, logger, LogLevel.ERROR);
private void dimmLights() { try { ActionDescriptionType.ActionDescription.Builder actionDescriptionBuilder = getNewActionDescription(ActionAuthorityType.ActionAuthority.getDefaultInstance(), ResourceAllocationType.ResourceAllocation.Initiator.SYSTEM, 1000 * 30, ResourceAllocationType.ResourceAllocation.Policy.FIRST, ResourceAllocationType.ResourceAllocation.Priority.NORMAL, locationRemote, BrightnessState.newBuilder().setBrightness(0.5).build(), UnitTemplateType.UnitTemplate.UnitType.DIMMABLE_LIGHT, ServiceTemplateType.ServiceTemplate.ServiceType.BRIGHTNESS_STATE_SERVICE, MultiResourceAllocationStrategyType.MultiResourceAllocationStrategy.Strategy.AT_LEAST_ONE); actionRescheduleHelper.startActionRescheduleing(locationRemote.applyAction(actionDescriptionBuilder.build()).get().toBuilder()); } catch (CouldNotPerformException | InterruptedException | ExecutionException ex) { logger.error("Could not dim lights.", ex); } } }
/** * Method returns the state source(s) result(s) (contains state value(s)) of the input brightnessState. * * @param brightnessState The BrightnessState. * @return state source(s) result(s) of the input state. Return null if dataUnit could not be identified. */ private List<RdfNodeObject> brightnessStateSources(final BrightnessState brightnessState) { final List<RdfNodeObject> stateSources = new ArrayList<>(); final BrightnessState.DataUnit dataUnit = brightnessState.getBrightnessDataUnit(); switch (dataUnit) { case PERCENT: final String brightnessVal = "\"" + String.valueOf(brightnessState.getBrightness()) + "\"^^NS:Percent"; stateSources.add(new RdfNodeObject(new ArrayList<String>() {{add(brightnessVal);}}, true)); break; case UNKNOWN: LOGGER.warn("Dropped brightness state value, cause dataUnit is UNKNOWN."); return null; default: LOGGER.warn("DataUnit of brightness state could not be detected. Please add " + dataUnit + " to ontologyManager implementation."); return null; } return stateSources; }
@Override protected void applyDataUpdate(ColorableLightData.Builder internalBuilder, ServiceType serviceType) { switch (serviceType) { case COLOR_STATE_SERVICE: internalBuilder.getBrightnessStateBuilder().setBrightness(internalBuilder.getColorState().getColor().getHsbColor().getBrightness()); internalBuilder.getPowerStateBuilder().setValue(PowerState.State.ON); break; case BRIGHTNESS_STATE_SERVICE: HSBColor hsb = internalBuilder.getColorState().getColor().getHsbColor().toBuilder().setBrightness(internalBuilder.getBrightnessState().getBrightness()).build(); Color color = Color.newBuilder().setType(Color.Type.HSB).setHsbColor(hsb).build(); internalBuilder.setColorState(internalBuilder.getColorState().toBuilder().setColor(color).build()); if (internalBuilder.getBrightnessState().getBrightness() == 0) { internalBuilder.getPowerStateBuilder().setValue(PowerState.State.OFF); } else { internalBuilder.getPowerStateBuilder().setValue(PowerState.State.ON); } break; } } }
@Override public BrightnessState getBrightnessState(final UnitType unitType) throws NotAvailableException { Collection<BrightnessStateOperationService> brightnessStateOperationServices = getServices(unitType); int serviceNumber = brightnessStateOperationServices.size(); Double average = 0d; long timestamp = 0; for (BrightnessStateOperationService service : brightnessStateOperationServices) { if (!((UnitRemote) service).isDataAvailable()) { serviceNumber--; continue; } average += service.getBrightnessState().getBrightness(); timestamp = Math.max(timestamp, service.getBrightnessState().getTimestamp().getTime()); } average /= serviceNumber; return TimestampProcessor.updateTimestamp(timestamp, BrightnessState.newBuilder().setBrightness(average), TimeUnit.MICROSECONDS, logger).build(); } }
@Override protected void applyDataUpdate(DimmableLightData.Builder internalBuilder, ServiceType serviceType) { switch (serviceType) { case BRIGHTNESS_STATE_SERVICE: if (internalBuilder.getBrightnessState().getBrightness() == 0) { internalBuilder.getPowerStateBuilder().setValue(PowerState.State.OFF); } else { internalBuilder.getPowerStateBuilder().setValue(PowerState.State.ON); } break; } } }
@Override protected void applyDataUpdate(DimmerData.Builder internalBuilder, ServiceType serviceType) { switch (serviceType) { case BRIGHTNESS_STATE_SERVICE: if (internalBuilder.getBrightnessState().getBrightness() == 0) { internalBuilder.getPowerStateBuilder().setValue(PowerState.State.OFF); } else { internalBuilder.getPowerStateBuilder().setValue(PowerState.State.ON); } break; } } }
/** * {@inheritDoc } * * @return {@inheritDoc } * @throws NotAvailableException {@inheritDoc } */ @Override protected BrightnessState getNextServiceState() throws NotAvailableException { return BrightnessState.newBuilder().setBrightnessDataUnit(BrightnessState.DataUnit.PERCENT).setBrightness(RANDOM.nextInt(MAX_BRIGHTNESS)).build(); } }
private void brightnessSliderStateChanged(javax.swing.event.ChangeEvent evt) {//GEN-FIRST:event_brightnessSliderStateChanged try { notifyActionProcessing(getOperationService().setBrightnessState(BrightnessState.newBuilder().setBrightness((double) brightnessSlider.getValue()).build())); } catch (CouldNotPerformException ex) { ExceptionPrinter.printHistory(new CouldNotPerformException("Could not set brightness value!", ex), logger); } }//GEN-LAST:event_brightnessSliderStateChanged
/** * Get the brightness value. * * @param brightnessState the state * @return the current brightness value */ public static Double transform(BrightnessState brightnessState) { return brightnessState.getBrightness(); } }
@Override public Future<ActionFuture> setBrightnessState(final BrightnessState brightnessState) throws CouldNotPerformException { lastCommand = OpenHABCommandFactory.newPercentCommand(brightnessState.getBrightness()); final Future future = executeCommand(lastCommand); if (autoRepeat) { repeatLastCommand(); } return future; } }
static void verifyBrightnessState(final BrightnessState brightnessState) throws VerificationFailedException { switch (brightnessState.getBrightnessDataUnit()) { case PERCENT: OperationService.verifyValueRange("brightness", brightnessState.getBrightness(), 0, 100); break; case UNKNOWN: throw new VerificationFailedException("BrightnessState data unit unknown!"); default: break; } } }
/** * Transform a number to a brightness state by setting the number as the brightness value. * * @param value the brightness value * @return the corresponding brightness state */ public static BrightnessState transform(final Double value) { BrightnessState.Builder state = BrightnessState.newBuilder(); state.setBrightness(value); return state.build(); }