]> git.basschouten.com Git - openhab-addons.git/blob
b7ca759e8a3ed6823ec845e506110a103b97cbd6
[openhab-addons.git] /
1 /**
2  * Copyright (c) 2010-2023 Contributors to the openHAB project
3  *
4  * See the NOTICE file(s) distributed with this work for additional
5  * information.
6  *
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
10  *
11  * SPDX-License-Identifier: EPL-2.0
12  */
13 package org.openhab.binding.mybmw.internal.utils;
14
15 import java.time.DayOfWeek;
16 import java.time.LocalDate;
17 import java.time.LocalTime;
18 import java.time.format.DateTimeFormatter;
19 import java.util.HashMap;
20 import java.util.Map;
21
22 import javax.measure.Unit;
23 import javax.measure.quantity.Length;
24
25 import org.eclipse.jdt.annotation.NonNullByDefault;
26 import org.openhab.core.library.unit.MetricPrefix;
27 import org.openhab.core.library.unit.SIUnits;
28 import org.openhab.core.types.UnDefType;
29
30 /**
31  * The {@link Constants} General Constant Definitions
32  *
33  * @author Bernd Weymann - Initial contribution
34  * @author Norbert Truchsess - contributor
35  * @author Martin Grassl - rename drivetrain options
36  */
37 @NonNullByDefault
38 public class Constants {
39     // For Vehicle Status
40     public static final String NO_ENTRIES = "-";
41     public static final String OPEN = "Open";
42     public static final String CLOSED = "Closed";
43     public static final String LOCKED = "Locked";
44     public static final String UNLOCKED = "Unlocked";
45     public static final String CONNECTED = "Connected";
46     public static final String UNCONNECTED = "Not connected";
47     public static final String UNDEF = UnDefType.UNDEF.toFullString();
48     public static final String NULL_TIME = "00:00";
49     public static final String KILOMETERS_JSON = "KILOMETERS";
50     public static final String KM_JSON = "km";
51     public static final String MI_JSON = "mi";
52     public static final String UNIT_PRECENT_JSON = "%";
53     public static final String UNIT_LITER_JSON = "l";
54     public static final Unit<Length> KILOMETRE_UNIT = MetricPrefix.KILO(SIUnits.METRE);
55     public static final int INT_UNDEF = -1;
56
57     // Services in Discovery
58     public static final String ENABLED = "ENABLED";
59
60     // General Constants for String concatenation
61     public static final String NULL = "null";
62     public static final String SPACE = " ";
63     public static final String UNDERLINE = "_";
64     public static final String HYPHEN = " - ";
65     public static final String PLUS = "+";
66     public static final String EMPTY = "";
67     public static final String COMMA = ",";
68     public static final String QUESTION = "?";
69     public static final String COLON = ":";
70     public static final String SEMICOLON = ";";
71     public static final String TILDE = "~";
72
73     public static final String ANONYMOUS = "anonymous";
74     public static final String EMPTY_JSON = "{}";
75     public static final String LANGUAGE_AUTODETECT = "AUTODETECT";
76
77     // Time Constants for DateTime channels
78     public static final LocalDate EPOCH_DAY = LocalDate.ofEpochDay(0);
79     public static final DateTimeFormatter TIME_FORMATER = DateTimeFormatter.ofPattern("HH:mm");
80     public static final LocalTime NULL_LOCAL_TIME = LocalTime.parse(NULL_TIME, TIME_FORMATER);
81
82     @SuppressWarnings("serial")
83     public static final Map<DayOfWeek, String> DAYS = new HashMap<>() {
84         {
85             put(DayOfWeek.MONDAY, "Mon");
86             put(DayOfWeek.TUESDAY, "Tue");
87             put(DayOfWeek.WEDNESDAY, "Wed");
88             put(DayOfWeek.THURSDAY, "Thu");
89             put(DayOfWeek.FRIDAY, "Fri");
90             put(DayOfWeek.SATURDAY, "Sat");
91             put(DayOfWeek.SUNDAY, "Sun");
92         }
93     };
94
95     // Drive Train definitions from json
96     public static final String DRIVETRAIN_BEV = "ELECTRIC";
97     public static final String DRIVETRAIN_REX_EXTENSION = "(+ REX)";
98     public static final String DRIVETRAIN_MILD_HYBRID = "MILD_HYBRID";
99     public static final String DRIVETRAIN_CONV = "COMBUSTION";
100     public static final String DRIVETRAIN_PHEV = "PLUGIN_HYBRID";
101
102     // Carging States
103     public static final String DEFAULT = "DEFAULT";
104     public static final String NOT_CHARGING_STATE = "NOT_CHARGING";
105     public static final String CHARGING_STATE = "CHARGING";
106     public static final String PLUGGED_STATE = "PLUGGED_IN";
107 }