public LightDevice() throws InvalidDescriptionException { super(new File(DESCRIPTION_FILE_NAME)); setSSDPBindAddress(HostInterface.getInetAddress(HostInterface.IPV4_BITMASK, null)); setHTTPBindAddress(HostInterface.getInetAddress(HostInterface.IPV4_BITMASK, null)); Action getPowerAction = getAction("GetPower"); getPowerAction.setActionListener(this); Action setPowerAction = getAction("SetPower"); setPowerAction.setActionListener(this); ServiceList serviceList = getServiceList(); Service service = serviceList.getService(0); service.setQueryListener(this); powerVar = getStateVariable("Power"); Argument powerArg = getPowerAction.getArgument("Power"); StateVariable powerState = powerArg.getRelatedStateVariable(); AllowedValueList allowList = powerState.getAllowedValueList(); for (int n = 0; n < allowList.size(); n++) System.out.println("[" + n + "] = " + allowList.getAllowedValue(n)); AllowedValueRange allowRange = powerState.getAllowedValueRange(); System.out.println("maximum = " + allowRange.getMaximum()); System.out.println("minimum = " + allowRange.getMinimum()); System.out.println("step = " + allowRange.getStep()); }
public boolean actionControlReceived(Action action) { String actionName = action.getName(); boolean ret = false; if (actionName.equals("GetPower") == true) { String state = getPowerState(); Argument powerArg = action.getArgument("Power"); powerArg.setValue(state); ret = true; } if (actionName.equals("SetPower") == true) { Argument powerArg = action.getArgument("Power"); String state = powerArg.getValue(); setPowerState(state); state = getPowerState(); Argument resultArg = action.getArgument("Result"); resultArg.setValue(state); ret = true; } comp.repaint(); return ret; }