[melcloud] Fixed representation property (#10133)

Signed-off-by: Christoph Weitkamp <github@christophweitkamp.de>
pull/10146/head
Christoph Weitkamp 2021-02-13 21:10:26 +01:00 committed by GitHub
parent a796e472ec
commit 28510e8260
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 12 additions and 6 deletions

View File

@ -29,6 +29,7 @@ import org.openhab.binding.melcloud.internal.handler.MelCloudAccountHandler;
import org.openhab.core.config.discovery.AbstractDiscoveryService; import org.openhab.core.config.discovery.AbstractDiscoveryService;
import org.openhab.core.config.discovery.DiscoveryResultBuilder; import org.openhab.core.config.discovery.DiscoveryResultBuilder;
import org.openhab.core.config.discovery.DiscoveryService; import org.openhab.core.config.discovery.DiscoveryService;
import org.openhab.core.thing.Thing;
import org.openhab.core.thing.ThingTypeUID; import org.openhab.core.thing.ThingTypeUID;
import org.openhab.core.thing.ThingUID; import org.openhab.core.thing.ThingUID;
import org.openhab.core.thing.binding.ThingHandler; import org.openhab.core.thing.binding.ThingHandler;
@ -46,8 +47,10 @@ import org.slf4j.LoggerFactory;
*/ */
public class MelCloudDiscoveryService extends AbstractDiscoveryService public class MelCloudDiscoveryService extends AbstractDiscoveryService
implements DiscoveryService, ThingHandlerService { implements DiscoveryService, ThingHandlerService {
private final Logger logger = LoggerFactory.getLogger(MelCloudDiscoveryService.class); private final Logger logger = LoggerFactory.getLogger(MelCloudDiscoveryService.class);
private static final String PROPERTY_DEVICE_ID = "deviceID";
private static final int DISCOVER_TIMEOUT_SECONDS = 10; private static final int DISCOVER_TIMEOUT_SECONDS = 10;
private MelCloudAccountHandler melCloudHandler; private MelCloudAccountHandler melCloudHandler;
@ -126,9 +129,9 @@ public class MelCloudDiscoveryService extends AbstractDiscoveryService
device.getDeviceID().toString()); device.getDeviceID().toString());
Map<String, Object> deviceProperties = new HashMap<>(); Map<String, Object> deviceProperties = new HashMap<>();
deviceProperties.put("deviceID", device.getDeviceID().toString()); deviceProperties.put(PROPERTY_DEVICE_ID, device.getDeviceID().toString());
deviceProperties.put("serialNumber", device.getSerialNumber().toString()); deviceProperties.put(Thing.PROPERTY_SERIAL_NUMBER, device.getSerialNumber().toString());
deviceProperties.put("macAddress", device.getMacAddress().toString()); deviceProperties.put(Thing.PROPERTY_MAC_ADDRESS, device.getMacAddress().toString());
deviceProperties.put("deviceName", device.getDeviceName().toString()); deviceProperties.put("deviceName", device.getDeviceName().toString());
deviceProperties.put("buildingID", device.getBuildingID().toString()); deviceProperties.put("buildingID", device.getBuildingID().toString());
@ -136,9 +139,8 @@ public class MelCloudDiscoveryService extends AbstractDiscoveryService
logger.debug("Found device: {} : {}", label, deviceProperties); logger.debug("Found device: {} : {}", label, deviceProperties);
thingDiscovered(DiscoveryResultBuilder.create(deviceThing).withLabel(label) thingDiscovered(DiscoveryResultBuilder.create(deviceThing).withLabel(label)
.withProperties(deviceProperties) .withProperties(deviceProperties).withRepresentationProperty(PROPERTY_DEVICE_ID)
.withRepresentationProperty(device.getDeviceID().toString()).withBridge(bridgeUID) .withBridge(bridgeUID).build());
.build());
}); });
} }
} catch (MelCloudLoginException e) { } catch (MelCloudLoginException e) {

View File

@ -25,6 +25,8 @@
<channel id="nextCommunication" typeId="nextCommunication-channel"/> <channel id="nextCommunication" typeId="nextCommunication-channel"/>
</channels> </channels>
<representation-property>deviceID</representation-property>
<config-description> <config-description>
<parameter name="deviceID" type="integer" required="true"> <parameter name="deviceID" type="integer" required="true">
<label>Device ID</label> <label>Device ID</label>

View File

@ -23,6 +23,8 @@
<channel id="nextCommunication" typeId="nextCommunication-channel"/> <channel id="nextCommunication" typeId="nextCommunication-channel"/>
</channels> </channels>
<representation-property>deviceID</representation-property>
<config-description> <config-description>
<parameter name="deviceID" type="integer" required="true"> <parameter name="deviceID" type="integer" required="true">
<label>Device ID</label> <label>Device ID</label>