Skip to content

Commit

Permalink
[pioneeravr] Add models up until year 2020 (openhab#7346)
Browse files Browse the repository at this point in the history
Added the models @mstormi provided under the assumption that
the features remained the same since 2015.
The models' functionality remains split and is
easy to enhance with model-year-specific properties later on.

closes openhab#7315

Also-by: Markus Storm <markus.storm@gmx.net>
Signed-off-by: Leroy Foerster <gersilex@gmail.com>
  • Loading branch information
gersilex authored and andrewfg committed Aug 31, 2020
1 parent a24100a commit e13aa4e
Show file tree
Hide file tree
Showing 4 changed files with 699 additions and 11 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -46,14 +46,35 @@ public class PioneerAvrBindingConstants {
.collect(Collectors.toSet()));

public static final Set<String> SUPPORTED_DEVICE_MODELS2016 = Collections.unmodifiableSet(
Stream.of("SC-99", "SC-LX89", "SC-97", "SC-LX79", "SC-95", "SC-LX59", "SC-92", "SC-91", "VSX-90", "VSX-45", "VSX-830")
Stream.of("SC-99", "SC-LX89", "SC-97", "SC-LX79", "SC-95", "SC-LX59", "SC-92", "SC-91", "VSX-90", "VSX-45",
"VSX-830", "VSX-930", "VSX-1130")
.collect(Collectors.toSet()));

public static final Set<String> SUPPORTED_DEVICE_MODELS2017 = Collections.unmodifiableSet(
Stream.of("VSX-531", "VSX-531D", "VSX-831", "VSX-1131", "VSX-LX101", "VSX-LX301", "VSX-LX501")
.collect(Collectors.toSet()));

public static final Set<String> SUPPORTED_DEVICE_MODELS2018 = Collections.unmodifiableSet(
Stream.of("VSX-532", "VSX-832", "VSX-932", "VSX-LX102", "VSX-LX302", "VSX-LX502")
.collect(Collectors.toSet()));

public static final Set<String> SUPPORTED_DEVICE_MODELS2019 = Collections.unmodifiableSet(
Stream.of("VSX-833", "VSX-933", "VSX-LX103", "VSX-LX303", "VSX-LX503")
.collect(Collectors.toSet()));

public static final Set<String> SUPPORTED_DEVICE_MODELS2020 = Collections.unmodifiableSet(
Stream.of("VSX-534", "VSX-534D", "VSX-934", "VSX-LX104", "VSX-LX304", "VSX-LX504")
.collect(Collectors.toSet()));

// List of all Thing Type UIDs
public static final ThingTypeUID IP_AVR_THING_TYPE = new ThingTypeUID(BINDING_ID, "ipAvr");
public static final ThingTypeUID IP_AVR_THING_TYPE2014 = new ThingTypeUID(BINDING_ID, "ipAvr2014");
public static final ThingTypeUID IP_AVR_THING_TYPE2015 = new ThingTypeUID(BINDING_ID, "ipAvr2015");
public static final ThingTypeUID IP_AVR_THING_TYPE2016 = new ThingTypeUID(BINDING_ID, "ipAvr2016");
public static final ThingTypeUID IP_AVR_THING_TYPE2017 = new ThingTypeUID(BINDING_ID, "ipAvr2017");
public static final ThingTypeUID IP_AVR_THING_TYPE2018 = new ThingTypeUID(BINDING_ID, "ipAvr2018");
public static final ThingTypeUID IP_AVR_THING_TYPE2019 = new ThingTypeUID(BINDING_ID, "ipAvr2019");
public static final ThingTypeUID IP_AVR_THING_TYPE2020 = new ThingTypeUID(BINDING_ID, "ipAvr2020");
public static final ThingTypeUID IP_AVR_UNSUPPORTED_THING_TYPE = new ThingTypeUID(BINDING_ID, "ipAvrUnsupported");
public static final ThingTypeUID SERIAL_AVR_THING_TYPE = new ThingTypeUID(BINDING_ID, "serialAvr");

Expand Down Expand Up @@ -84,6 +105,7 @@ public class PioneerAvrBindingConstants {
public static final String UPNP_DEVICE_TYPE = "MediaRenderer";

public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Stream.of(IP_AVR_THING_TYPE,
IP_AVR_THING_TYPE2020, IP_AVR_THING_TYPE2019, IP_AVR_THING_TYPE2018, IP_AVR_THING_TYPE2017,
IP_AVR_THING_TYPE2016, IP_AVR_THING_TYPE2015, IP_AVR_THING_TYPE2014, IP_AVR_UNSUPPORTED_THING_TYPE)
.collect(Collectors.toSet());

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -109,7 +109,19 @@ public ThingUID getThingUID(RemoteDevice device) {

ThingTypeUID thingTypeUID = PioneerAvrBindingConstants.IP_AVR_THING_TYPE;

if (isSupportedDeviceModel(deviceModel, PioneerAvrBindingConstants.SUPPORTED_DEVICE_MODELS2016)) {
if (isSupportedDeviceModel(deviceModel, PioneerAvrBindingConstants.SUPPORTED_DEVICE_MODELS2020)) {
thingTypeUID = PioneerAvrBindingConstants.IP_AVR_THING_TYPE2020;
} else if (isSupportedDeviceModel(deviceModel,
PioneerAvrBindingConstants.SUPPORTED_DEVICE_MODELS2019)) {
thingTypeUID = PioneerAvrBindingConstants.IP_AVR_THING_TYPE2019;
} else if (isSupportedDeviceModel(deviceModel,
PioneerAvrBindingConstants.SUPPORTED_DEVICE_MODELS2018)) {
thingTypeUID = PioneerAvrBindingConstants.IP_AVR_THING_TYPE2018;
} else if (isSupportedDeviceModel(deviceModel,
PioneerAvrBindingConstants.SUPPORTED_DEVICE_MODELS2017)) {
thingTypeUID = PioneerAvrBindingConstants.IP_AVR_THING_TYPE2017;
} else if (isSupportedDeviceModel(deviceModel,
PioneerAvrBindingConstants.SUPPORTED_DEVICE_MODELS2016)) {
thingTypeUID = PioneerAvrBindingConstants.IP_AVR_THING_TYPE2016;
} else if (isSupportedDeviceModel(deviceModel,
PioneerAvrBindingConstants.SUPPORTED_DEVICE_MODELS2015)) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,8 @@ public class AvrHandlerFactory extends BaseThingHandlerFactory {
private static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Collections.unmodifiableSet(
Stream.of(PioneerAvrBindingConstants.IP_AVR_THING_TYPE, PioneerAvrBindingConstants.IP_AVR_THING_TYPE2014,
PioneerAvrBindingConstants.IP_AVR_THING_TYPE2015, PioneerAvrBindingConstants.IP_AVR_THING_TYPE2016,
PioneerAvrBindingConstants.IP_AVR_THING_TYPE2017, PioneerAvrBindingConstants.IP_AVR_THING_TYPE2018,
PioneerAvrBindingConstants.IP_AVR_THING_TYPE2019, PioneerAvrBindingConstants.IP_AVR_THING_TYPE2020,
PioneerAvrBindingConstants.IP_AVR_UNSUPPORTED_THING_TYPE,
PioneerAvrBindingConstants.SERIAL_AVR_THING_TYPE).collect(Collectors.toSet()));

Expand All @@ -58,6 +60,10 @@ protected ThingHandler createHandler(Thing thing) {
|| thingTypeUID.equals(PioneerAvrBindingConstants.IP_AVR_THING_TYPE2014)
|| thingTypeUID.equals(PioneerAvrBindingConstants.IP_AVR_THING_TYPE2015)
|| thingTypeUID.equals(PioneerAvrBindingConstants.IP_AVR_THING_TYPE2016)
|| thingTypeUID.equals(PioneerAvrBindingConstants.IP_AVR_THING_TYPE2017)
|| thingTypeUID.equals(PioneerAvrBindingConstants.IP_AVR_THING_TYPE2018)
|| thingTypeUID.equals(PioneerAvrBindingConstants.IP_AVR_THING_TYPE2019)
|| thingTypeUID.equals(PioneerAvrBindingConstants.IP_AVR_THING_TYPE2020)
|| thingTypeUID.equals(PioneerAvrBindingConstants.IP_AVR_UNSUPPORTED_THING_TYPE)) {
return new IpAvrHandler(thing);
} else if (thingTypeUID.equals(PioneerAvrBindingConstants.SERIAL_AVR_THING_TYPE)) {
Expand Down
Loading

0 comments on commit e13aa4e

Please sign in to comment.