]> git.basschouten.com Git - openhab-addons.git/blob
b9732a676002df17904ccadb3b5f81eef6ee809a
[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.vigicrues.internal.dto.vigicrues;
14
15 import java.util.List;
16 import java.util.stream.Stream;
17
18 import com.google.gson.annotations.SerializedName;
19
20 /**
21  * The {@link TronEntVigiCru} is the Java class used to map the JSON
22  * response to a vigicrue api endpoint request.
23  *
24  * @author GaĆ«l L'hopital - Initial contribution
25  */
26 public class TronEntVigiCru {
27     public class VicStaEntVigiCru {
28         @SerializedName("vic:CdEntVigiCru")
29         public String vicCdEntVigiCru;
30     }
31
32     public class VicTronEntVigiCru {
33         @SerializedName("vic:aNMoinsUn")
34         public List<VicStaEntVigiCru> stations;
35         /*
36          * Currently unused, maybe interesting in the future
37          *
38          * @SerializedName("@id")
39          * public String id;
40          *
41          * @SerializedName("vic:CdEntVigiCru")
42          * public String vicCdEntVigiCru;
43          *
44          * @SerializedName("vic:TypEntVigiCru")
45          * public String vicTypEntVigiCru;
46          *
47          * @SerializedName("vic:LbEntVigiCru")
48          * public String vicLbEntVigiCru;
49          *
50          * @SerializedName("vic:DtHrCreatEntVigiCru")
51          * public String vicDtHrCreatEntVigiCru;
52          *
53          * @SerializedName("vic:DtHrMajEntVigiCru")
54          * public String vicDtHrMajEntVigiCru;
55          *
56          * @SerializedName("vic:StEntVigiCru")
57          * public String vicStEntVigiCru;
58          *
59          * @SerializedName("count_aNPlusUn")
60          * public Integer countANPlusUn;
61          *
62          * @SerializedName("count_aNMoinsUn")
63          * public Integer countANMoinsUn;
64          *
65          * @SerializedName("LinkInfoCru")
66          * public String linkInfoCru;
67          */
68     }
69
70     @SerializedName("vic:TronEntVigiCru")
71     private VicTronEntVigiCru tronTerEntVigiCru;
72
73     public Stream<VicStaEntVigiCru> getStations() {
74         if (tronTerEntVigiCru != null && tronTerEntVigiCru.stations != null) {
75             return tronTerEntVigiCru.stations.stream();
76         } else {
77             return Stream.empty();
78         }
79     }
80 }