
io.github.hapjava.characteristics.impl.valve.SetDurationCharacteristic Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of hap Show documentation
Show all versions of hap Show documentation
Homekit Accessory Protocol for Java
package io.github.hapjava.characteristics.impl.valve;
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 the duration, how long an accessory should be set to "InUse". */
public class SetDurationCharacteristic extends IntegerCharacteristic
implements EventableCharacteristic {
public static final int DEFAULT_MIN_VALUE = 0;
public static final int DEFAULT_MAX_VALUE = 3600;
public SetDurationCharacteristic(
int minValue,
int maxValue,
Supplier> getter,
ExceptionalConsumer setter,
Consumer subscriber,
Runnable unsubscriber) {
super(
"000000D3-0000-1000-8000-0026BB765291",
"set duration",
minValue,
maxValue,
"s",
Optional.of(getter),
Optional.of(setter),
Optional.of(subscriber),
Optional.of(unsubscriber));
}
public SetDurationCharacteristic(
Supplier> getter,
ExceptionalConsumer setter,
Consumer subscriber,
Runnable unsubscriber) {
this(DEFAULT_MIN_VALUE, DEFAULT_MAX_VALUE, getter, setter, subscriber, unsubscriber);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy