]> git.basschouten.com Git - openhab-addons.git/blob
c3f4cdf416c3e02bd13e97ef127ccde509aa9775
[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.lametrictime.internal.api.dto;
14
15 import java.io.File;
16 import java.net.URI;
17 import java.nio.file.Path;
18
19 import org.openhab.binding.lametrictime.internal.api.impl.DataIcon;
20 import org.openhab.binding.lametrictime.internal.api.impl.FileIcon;
21 import org.openhab.binding.lametrictime.internal.api.impl.HTTPIcon;
22 import org.openhab.binding.lametrictime.internal.api.impl.KeyIcon;
23
24 /**
25  * Class for managing the core icons.
26  *
27  * @author Gregory Moyer - Initial contribution
28  */
29 public class Icons {
30     public static Icon key(String key) {
31         return new KeyIcon(key);
32     }
33
34     public static Icon http(String uri) {
35         return http(URI.create(uri));
36     }
37
38     public static Icon http(URI uri) {
39         return new HTTPIcon(uri);
40     }
41
42     public static Icon path(Path path) {
43         return new FileIcon(path);
44     }
45
46     public static Icon file(File file) {
47         return new FileIcon(file);
48     }
49
50     public static Icon data(String mimeType, byte[] data) {
51         return new DataIcon(mimeType, data);
52     }
53
54     // @formatter:off
55     public static Icon dollar() { return key("i34"); }
56     public static Icon gmail() { return key("i43"); }
57     public static Icon confirm() { return key("i59"); }
58     public static Icon goOut() { return key("a68"); }
59     public static Icon dog() { return key("a76"); }
60     public static Icon clock() { return key("a82"); }
61     public static Icon smile() { return key("a87"); }
62     public static Icon lightning() { return key("i95"); }
63     public static Icon facebook() { return key("a128"); }
64     public static Icon home() { return key("i96"); }
65     public static Icon girl() { return key("a178"); }
66     public static Icon stop() { return key("i184"); }
67     public static Icon heart() { return key("a230"); }
68     public static Icon fade() { return key("a273"); }
69     public static Icon terminal() { return key("a315"); }
70     public static Icon usa() { return key("a413"); }
71     public static Icon switzerland() { return key("i469"); }
72     public static Icon attention() { return key("i555"); }
73     public static Icon theMatrix() { return key("a653"); }
74     public static Icon pizza() { return key("i1324"); }
75     public static Icon christmasTree() { return key("a1782"); }
76     public static Icon night() { return key("a2285"); }
77     public static Icon fireworks() { return key("a2867"); }
78     public static Icon beer() { return key("i3253"); }
79     public static Icon tetris() { return key("a3793"); }
80     public static Icon halloween() { return key("a4033"); }
81     public static Icon pacman() { return key("a4584"); }
82
83     private Icons() {}
84     // @formatter:on
85 }