2 * Copyright (c) 2010-2023 Contributors to the openHAB project
4 * See the NOTICE file(s) distributed with this work for additional
7 * This program and the accompanying materials are made available under the
8 * terms of the Eclipse Public License 2.0 which is available at
9 * http://www.eclipse.org/legal/epl-2.0
11 * SPDX-License-Identifier: EPL-2.0
13 package org.openhab.binding.boschshc.internal.services.privacymode;
15 import org.eclipse.jdt.annotation.NonNullByDefault;
16 import org.openhab.core.library.types.OnOffType;
19 * Possible privacy mode states of security cameras.
21 * @author David Pace - Initial contribution
25 public enum PrivacyModeState {
28 * Privacy mode enabled / camera disabled
33 * Privacy mode disabled / camera enabled
38 * Converts an {@link OnOffType} state into a {@link PrivacyModeState}.
40 * @param onOff the on/off state
41 * @return the corresponding privacy mode state
43 public static PrivacyModeState from(OnOffType onOff) {
44 return onOff == OnOffType.ON ? ENABLED : DISABLED;
48 * Converts this {@link PrivacyModeState} into an {@link OnOffType}.
50 * @return the on/off state corresponding to the privacy mode state of this enumeration literal
52 public OnOffType toOnOffType() {
53 return this == ENABLED ? OnOffType.ON : OnOffType.OFF;