2 * Copyright (c) 2010-2024 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.digiplex.internal.communication;
15 import java.util.Arrays;
17 import org.eclipse.jdt.annotation.NonNullByDefault;
18 import org.openhab.core.library.types.OpenClosedType;
19 import org.openhab.core.library.types.StringType;
22 * Area status, as received for the Area Status requests
24 * @author Robert Michalak - Initial contribution
28 public enum AreaStatus {
36 private char indicator;
38 AreaStatus(char indicator) {
39 this.indicator = indicator;
42 public OpenClosedType toOpenClosedType() {
43 return this == DISARMED ? OpenClosedType.CLOSED : OpenClosedType.OPEN;
46 public static AreaStatus fromMessage(char indicator) {
47 return Arrays.stream(AreaStatus.values()).filter(type -> type.indicator == indicator).findFirst()
51 public StringType toStringType() {
52 return new StringType(this.toString());