All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.github.hapjava.characteristics.impl.lightbulb.BrightnessCharacteristic Maven / Gradle / Ivy

There is a newer version: 2.0.7
Show newest version
package io.github.hapjava.characteristics.impl.lightbulb;

import io.github.hapjava.characteristics.EventableCharacteristic;
import io.github.hapjava.characteristics.ExceptionalConsumer;
import io.github.hapjava.characteristics.HomekitCharacteristicChangeCallback;
import io.github.hapjava.characteristics.impl.base.IntegerCharacteristic;
import java.util.Optional;
import java.util.concurrent.CompletableFuture;
import java.util.function.Consumer;
import java.util.function.Supplier;

/**
 * This characteristic describes a perceived level of brightness, The value is a percentage (%) of
 * the maximum level of supported brightness.
 */
public class BrightnessCharacteristic extends IntegerCharacteristic
    implements EventableCharacteristic {

  public BrightnessCharacteristic(
      Supplier> getter,
      ExceptionalConsumer setter,
      Consumer subscriber,
      Runnable unsubscriber) {
    super(
        "00000008-0000-1000-8000-0026BB765291",
        "level of brightness",
        0,
        100,
        "%",
        Optional.of(getter),
        Optional.of(setter),
        Optional.of(subscriber),
        Optional.of(unsubscriber));
  }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy