2 * Copyright (c) 2010-2023 Contributors to the openHAB project
4 * See the NOTICE file(s) distributed with this work for additional
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
11 * SPDX-License-Identifier: EPL-2.0
13 package org.openhab.binding.hue.internal.discovery;
15 import org.eclipse.jdt.annotation.NonNullByDefault;
16 import org.eclipse.jdt.annotation.Nullable;
18 import com.google.gson.annotations.SerializedName;
21 * The {@link BridgeJsonParameters} class defines JSON object, which
22 * contains bridge attributes like IP address. It is used for bridge
25 * @author Awelkiyar Wehabrebi - Initial contribution and API
26 * @author Christoph Knauf - Refactorings
29 public class BridgeJsonParameters {
31 private @Nullable String id;
32 @SerializedName("internalipaddress")
33 private @Nullable String internalIpAddress;
34 @SerializedName("macaddress")
35 private @Nullable String macAddress;
36 private @Nullable String name;
38 @SuppressWarnings("unused")
39 private BridgeJsonParameters() {
40 // This no arguments constructor is required for Gson deserialization
43 public BridgeJsonParameters(String id, String internalIpAddress, String macAdress, String name) {
45 this.internalIpAddress = internalIpAddress;
46 this.macAddress = macAdress;
50 public @Nullable String getInternalIpAddress() {
51 return internalIpAddress;
54 public @Nullable String getId() {
58 public @Nullable String getMacAddress() {
62 public @Nullable String getName() {