// Decompiled by Jad v1.5.8e. Copyright 2001 Pavel Kouznetsov. // Jad home page: http://www.geocities.com/kpdus/jad.html // Decompiler options: braces fieldsfirst space lnc package com.philips.lighting.model; import java.util.Locale; // Referenced classes of package com.philips.lighting.model: // PHBridgeResource, PHLightState public class PHLight extends PHBridgeResource { public static final class PHLightAlertMode extends Enum { public static final PHLightAlertMode ALERT_LSELECT; public static final PHLightAlertMode ALERT_NONE; public static final PHLightAlertMode ALERT_SELECT; public static final PHLightAlertMode ALERT_UNKNOWN; private static final PHLightAlertMode ENUM$VALUES[]; public static PHLightAlertMode valueOf(String s) { return (PHLightAlertMode)Enum.valueOf(com/philips/lighting/model/PHLight$PHLightAlertMode, s); } public static PHLightAlertMode[] values() { PHLightAlertMode aphlightalertmode[] = ENUM$VALUES; int i = aphlightalertmode.length; PHLightAlertMode aphlightalertmode1[] = new PHLightAlertMode[i]; System.arraycopy(aphlightalertmode, 0, aphlightalertmode1, 0, i); return aphlightalertmode1; } static { ALERT_UNKNOWN = new PHLightAlertMode("ALERT_UNKNOWN", 0); ALERT_NONE = new PHLightAlertMode("ALERT_NONE", 1); ALERT_SELECT = new PHLightAlertMode("ALERT_SELECT", 2); ALERT_LSELECT = new PHLightAlertMode("ALERT_LSELECT", 3); ENUM$VALUES = (new PHLightAlertMode[] { ALERT_UNKNOWN, ALERT_NONE, ALERT_SELECT, ALERT_LSELECT }); } private PHLightAlertMode(String s, int i) { super(s, i); } } public static final class PHLightColorMode extends Enum { public static final PHLightColorMode COLORMODE_CT; public static final PHLightColorMode COLORMODE_HUE_SATURATION; public static final PHLightColorMode COLORMODE_NONE; public static final PHLightColorMode COLORMODE_UNKNOWN; public static final PHLightColorMode COLORMODE_XY; private static final PHLightColorMode ENUM$VALUES[]; public static PHLightColorMode valueOf(String s) { return (PHLightColorMode)Enum.valueOf(com/philips/lighting/model/PHLight$PHLightColorMode, s); } public static PHLightColorMode[] values() { PHLightColorMode aphlightcolormode[] = ENUM$VALUES; int i = aphlightcolormode.length; PHLightColorMode aphlightcolormode1[] = new PHLightColorMode[i]; System.arraycopy(aphlightcolormode, 0, aphlightcolormode1, 0, i); return aphlightcolormode1; } static { COLORMODE_UNKNOWN = new PHLightColorMode("COLORMODE_UNKNOWN", 0); COLORMODE_NONE = new PHLightColorMode("COLORMODE_NONE", 1); COLORMODE_CT = new PHLightColorMode("COLORMODE_CT", 2); COLORMODE_HUE_SATURATION = new PHLightColorMode("COLORMODE_HUE_SATURATION", 3); COLORMODE_XY = new PHLightColorMode("COLORMODE_XY", 4); ENUM$VALUES = (new PHLightColorMode[] { COLORMODE_UNKNOWN, COLORMODE_NONE, COLORMODE_CT, COLORMODE_HUE_SATURATION, COLORMODE_XY }); } private PHLightColorMode(String s, int i) { super(s, i); } } public static final class PHLightEffectMode extends Enum { public static final PHLightEffectMode EFFECT_COLORLOOP; public static final PHLightEffectMode EFFECT_NONE; public static final PHLightEffectMode EFFECT_UNKNOWN; private static final PHLightEffectMode ENUM$VALUES[]; public static PHLightEffectMode valueOf(String s) { return (PHLightEffectMode)Enum.valueOf(com/philips/lighting/model/PHLight$PHLightEffectMode, s); } public static PHLightEffectMode[] values() { PHLightEffectMode aphlighteffectmode[] = ENUM$VALUES; int i = aphlighteffectmode.length; PHLightEffectMode aphlighteffectmode1[] = new PHLightEffectMode[i]; System.arraycopy(aphlighteffectmode, 0, aphlighteffectmode1, 0, i); return aphlighteffectmode1; } static { EFFECT_UNKNOWN = new PHLightEffectMode("EFFECT_UNKNOWN", 0); EFFECT_NONE = new PHLightEffectMode("EFFECT_NONE", 1); EFFECT_COLORLOOP = new PHLightEffectMode("EFFECT_COLORLOOP", 2); ENUM$VALUES = (new PHLightEffectMode[] { EFFECT_UNKNOWN, EFFECT_NONE, EFFECT_COLORLOOP }); } private PHLightEffectMode(String s, int i) { super(s, i); } } public static final class PHLightType extends Enum { public static final PHLightType COLOR_LIGHT; public static final PHLightType CT_COLOR_LIGHT; public static final PHLightType CT_LIGHT; public static final PHLightType DIM_LIGHT; private static final PHLightType ENUM$VALUES[]; public static final PHLightType ON_OFF_LIGHT; public static final PHLightType UNKNOWN_LIGHT; public static PHLightType valueOf(String s) { return (PHLightType)Enum.valueOf(com/philips/lighting/model/PHLight$PHLightType, s); } public static PHLightType[] values() { PHLightType aphlighttype[] = ENUM$VALUES; int i = aphlighttype.length; PHLightType aphlighttype1[] = new PHLightType[i]; System.arraycopy(aphlighttype, 0, aphlighttype1, 0, i); return aphlighttype1; } static { UNKNOWN_LIGHT = new PHLightType("UNKNOWN_LIGHT", 0); CT_COLOR_LIGHT = new PHLightType("CT_COLOR_LIGHT", 1); COLOR_LIGHT = new PHLightType("COLOR_LIGHT", 2); CT_LIGHT = new PHLightType("CT_LIGHT", 3); DIM_LIGHT = new PHLightType("DIM_LIGHT", 4); ON_OFF_LIGHT = new PHLightType("ON_OFF_LIGHT", 5); ENUM$VALUES = (new PHLightType[] { UNKNOWN_LIGHT, CT_COLOR_LIGHT, COLOR_LIGHT, CT_LIGHT, DIM_LIGHT, ON_OFF_LIGHT }); } private PHLightType(String s, int i) { super(s, i); } } private static int $SWITCH_TABLE$com$philips$lighting$model$PHLight$PHLightType[]; private static final String STR_COLOR_LIGHT = "color light"; private static final String STR_COLOR_TEMPERATURE = "color temperature light"; private static final String STR_CT_COLOR = "ctcolor light"; private static final String STR_CT_LIGHT = "ct light"; private static final String STR_DIMABLE = "dimmable light"; private static final String STR_DIMABLE_PLUGIN = "dimmable plug-in unit"; private static final String STR_EXTENDED_COLOR = "extended color light"; private static final String STR_ON_OFF = "on/off light"; private static final String STR_ON_OFF_PLUGIN = "on/off plug-in unit"; private boolean isReachable; private PHLightState lastKnownLightState; private String modelNumber; private PHLightType type; private String versionNumber; static int[] $SWITCH_TABLE$com$philips$lighting$model$PHLight$PHLightType() { int ai[] = $SWITCH_TABLE$com$philips$lighting$model$PHLight$PHLightType; if (ai != null) { return ai; } ai = new int[PHLightType.values().length]; try { ai[PHLightType.COLOR_LIGHT.ordinal()] = 3; } catch (NoSuchFieldError nosuchfielderror5) { } try { ai[PHLightType.CT_COLOR_LIGHT.ordinal()] = 2; } catch (NoSuchFieldError nosuchfielderror4) { } try { ai[PHLightType.CT_LIGHT.ordinal()] = 4; } catch (NoSuchFieldError nosuchfielderror3) { } try { ai[PHLightType.DIM_LIGHT.ordinal()] = 5; } catch (NoSuchFieldError nosuchfielderror2) { } try { ai[PHLightType.ON_OFF_LIGHT.ordinal()] = 6; } catch (NoSuchFieldError nosuchfielderror1) { } try { ai[PHLightType.UNKNOWN_LIGHT.ordinal()] = 1; } catch (NoSuchFieldError nosuchfielderror) { } $SWITCH_TABLE$com$philips$lighting$model$PHLight$PHLightType = ai; return ai; } public PHLight(PHLight phlight) { super(isNull(phlight).getName(), isNull(phlight).getIdentifier()); lastKnownLightState = null; isReachable = phlight.isReachable; lastKnownLightState = phlight.lastKnownLightState; modelNumber = phlight.modelNumber; type = phlight.type; versionNumber = phlight.versionNumber; } public PHLight(String s, String s1, String s2, String s3) { super(s, s1); lastKnownLightState = null; versionNumber = s2; modelNumber = s3; } private static PHLight isNull(PHLight phlight) { if (phlight == null) { throw new IllegalArgumentException("Input parameter can't be null"); } else { return phlight; } } public boolean equals(Object obj) { if (this != obj) goto _L2; else goto _L1 _L1: return true; _L2: if (!super.equals(obj)) { return false; } if (!(obj instanceof PHLight)) { return false; } obj = (PHLight)obj; if (isReachable != ((PHLight) (obj)).isReachable) { return false; } if (lastKnownLightState == null) { if (((PHLight) (obj)).lastKnownLightState != null) { return false; } } else if (!lastKnownLightState.equals(((PHLight) (obj)).lastKnownLightState)) { return false; } if (modelNumber == null) { if (((PHLight) (obj)).modelNumber != null) { return false; } } else if (!modelNumber.equals(((PHLight) (obj)).modelNumber)) { return false; } if (type != ((PHLight) (obj)).type) { return false; } if (versionNumber != null) { continue; /* Loop/switch isn't completed */ } if (((PHLight) (obj)).versionNumber == null) goto _L1; else goto _L3 _L3: return false; if (versionNumber.equals(((PHLight) (obj)).versionNumber)) goto _L1; else goto _L4 _L4: return false; } public PHLightState getLastKnownLightState() { return lastKnownLightState; } public PHLightType getLightType() { return type; } public String getModelNumber() { return modelNumber; } public String getVersionNumber() { return versionNumber; } public int hashCode() { int l = 0; char c; int i; int j; int k; if (isReachable) { c = '\u04CF'; } else { c = '\u04D5'; } if (lastKnownLightState == null) { i = 0; } else { i = lastKnownLightState.hashCode(); } if (modelNumber == null) { j = 0; } else { j = modelNumber.hashCode(); } if (type == null) { k = 0; } else { k = type.hashCode(); } if (versionNumber != null) { l = versionNumber.hashCode(); } return ((((c + 31) * 31 + i) * 31 + j) * 31 + k) * 31 + l; } public boolean isReachable() { return isReachable; } public void setLastKnownLightState(PHLightState phlightstate) { lastKnownLightState = phlightstate; } public void setLightType(String s) { if (s == null) { type = PHLightType.CT_COLOR_LIGHT; return; } s = s.toLowerCase(Locale.US); if (s.equals("on/off light") || s.equals("on/off plug-in unit")) { type = PHLightType.ON_OFF_LIGHT; return; } if (s.equals("dimmable light") || s.equals("dimmable plug-in unit")) { type = PHLightType.DIM_LIGHT; return; } if (s.equals("color light")) { type = PHLightType.COLOR_LIGHT; return; } if (s.equals("ctcolor light") || s.equals("extended color light")) { type = PHLightType.CT_COLOR_LIGHT; return; } if (s.equals("ct light") || s.equals("color temperature light")) { type = PHLightType.CT_LIGHT; return; } else { type = PHLightType.ON_OFF_LIGHT; return; } } public void setModelNumber(String s) { modelNumber = s; } public void setReachable(boolean flag) { isReachable = flag; } public void setVersionNumber(String s) { versionNumber = s; } public boolean supportsBrightness() { switch ($SWITCH_TABLE$com$philips$lighting$model$PHLight$PHLightType()[type.ordinal()]) { default: return true; case 6: // '\006' return false; } } public boolean supportsCT() { switch ($SWITCH_TABLE$com$philips$lighting$model$PHLight$PHLightType()[type.ordinal()]) { case 3: // '\003' default: return false; case 2: // '\002' case 4: // '\004' return true; } } public boolean supportsColor() { switch ($SWITCH_TABLE$com$philips$lighting$model$PHLight$PHLightType()[type.ordinal()]) { default: return false; case 2: // '\002' case 3: // '\003' return true; } } public String toString() { String s = (new StringBuilder(String.valueOf((new StringBuilder("Identifier: ")).append(getIdentifier()).append("\n").toString()))).append("Name: ").append(getName()).append("\n").toString(); switch ($SWITCH_TABLE$com$philips$lighting$model$PHLight$PHLightType()[type.ordinal()]) { default: return s; case 3: // '\003' return (new StringBuilder(String.valueOf(s))).append("type: COLOR_LIGHT\n").toString(); case 4: // '\004' return (new StringBuilder(String.valueOf(s))).append("type: CT_LIGHT\n").toString(); case 2: // '\002' return (new StringBuilder(String.valueOf(s))).append("type: CT_COLOR_LIGHT\n").toString(); case 5: // '\005' return (new StringBuilder(String.valueOf(s))).append("type: DIM_LIGHT\n").toString(); case 6: // '\006' return (new StringBuilder(String.valueOf(s))).append("type: ON_OFF_LIGHT\n").toString(); } } }