]> git.basschouten.com Git - openhab-addons.git/blob
da4e0018ec7d370d270d9c32191fb9cddd15afc1
[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.yamahareceiver.internal.config;
14
15 import org.eclipse.jdt.annotation.NonNullByDefault;
16 import org.eclipse.jdt.annotation.Nullable;
17
18 /**
19  * Utilities used by the Yamaha binding
20  *
21  * @author Tomasz Maruszak - Initial contribution
22  */
23 @NonNullByDefault
24 public class YamahaUtils {
25
26     /**
27      * Tries to parse a string into Enum, if unsuccessful returns null.
28      *
29      * @param c
30      * @param string
31      * @param <T>
32      * @return Enum value or null if unsuccessful
33      */
34     public static @Nullable <T extends Enum<T>> T tryParseEnum(Class<T> c, @Nullable String string) {
35         if (string != null) {
36             try {
37                 return Enum.valueOf(c, string);
38             } catch (IllegalArgumentException ex) {
39             }
40         }
41         return null;
42     }
43 }