]> git.basschouten.com Git - openhab-addons.git/blob
4fd48f80af45d42edab86ceed331a644f944520d
[openhab-addons.git] /
1 /**
2  * Copyright (c) 2010-2022 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.bmwconnecteddrive.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  */
36 @NonNullByDefault
37 public class Constants {
38     // For Vehicle Status
39     public static final String OK = "Ok";
40     public static final String ACTIVE = "Active";
41     public static final String NOT_ACTIVE = "Not Active";
42     public static final String NO_ENTRIES = "No Entries";
43     public static final String OPEN = "Open";
44     public static final String INVALID = "Invalid";
45     public static final String CLOSED = "Closed";
46     public static final String INTERMEDIATE = "Intermediate";
47     public static final String UNDEF = UnDefType.UNDEF.toFullString();
48     public static final String UTC_APPENDIX = "-01T12:00:00";
49     public static final String NULL_DATE = "1900-01-01T00:00:00";
50     public static final String NULL_TIME = "00:00";
51     public static final int INT_UNDEF = -1;
52     public static final Unit<Length> KILOMETRE_UNIT = MetricPrefix.KILO(SIUnits.METRE);
53
54     // Services to query
55     public static final String SERVICES_SUPPORTED = "servicesSupported";
56     public static final String STATISTICS = "Statistics";
57     public static final String LAST_DESTINATIONS = "LastDestinations";
58
59     // Services in Discovery
60     public static final String ACTIVATED = "ACTIVATED";
61     public static final String SUPPORTED = "SUPPORTED";
62     public static final String NOT_SUPPORTED = "NOT_SUPPORTED";
63
64     // General Constants for String concatenation
65     public static final String NULL = "null";
66     public static final String SPACE = " ";
67     public static final String UNDERLINE = "_";
68     public static final String HYPHEN = " - ";
69     public static final String PLUS = "+";
70     public static final String EMPTY = "";
71     public static final String COMMA = ",";
72     public static final String QUESTION = "?";
73     public static final String COLON = ":";
74
75     public static final String ANONYMOUS = "Anonymous";
76     public static final int MILES_TO_FEET_FACTOR = 5280;
77     public static final String EMPTY_JSON = "{}";
78
79     // Time Constants for DateTime channels
80     public static final LocalDate EPOCH_DAY = LocalDate.ofEpochDay(0);
81     public static final DateTimeFormatter TIME_FORMATER = DateTimeFormatter.ofPattern("HH:mm");
82     public static final LocalTime NULL_LOCAL_TIME = LocalTime.parse(NULL_TIME, TIME_FORMATER);
83
84     @SuppressWarnings("serial")
85     public static final Map<DayOfWeek, String> DAYS = new HashMap<>() {
86         {
87             put(DayOfWeek.MONDAY, "Mon");
88             put(DayOfWeek.TUESDAY, "Tue");
89             put(DayOfWeek.WEDNESDAY, "Wed");
90             put(DayOfWeek.THURSDAY, "Thu");
91             put(DayOfWeek.FRIDAY, "Fri");
92             put(DayOfWeek.SATURDAY, "Sat");
93             put(DayOfWeek.SUNDAY, "Sun");
94         }
95     };
96 }