Skip to content
Snippets Groups Projects
Commit 6a3f1583 authored by jkerdreu's avatar jkerdreu
Browse files

Oups

git-svn-id: https://redmine.imt-atlantique.fr/svn/xaal/code/Java/branches/0.7@2610 b32b6428-25c9-4566-ad07-03861ab6144f
parent 61f8513f
Branches
No related tags found
No related merge requests found
package org.imta.xaal.lib;
import java.net.URI;
import java.net.URISyntaxException;
import java.util.Arrays;
import java.util.UUID;
public class Lamp extends Device {
Attribute light = new Attribute("light", false);
Attribute brightness = new Attribute("brightness", 100);
public Lamp(UUID address) throws URISyntaxException{
super(address);
setDevType("lamp.dimmer");
setVendorID("Jkx Industries");
setVersion("35 rev2");
setProductID("Dummy Java Lamp");
setHwID("6b2");
setInfo(getProductID()+ " " + getHwID());
setSchema( new URI("http://foobar.com"));
setUrl(new URI("http://dev.foobar.org"));
registerAttributes(Arrays.asList(light,brightness));
}
public void toggle() {
var state = (boolean)light.getValue();
if (state==true)
light.setValue(false);
else
light.setValue(true);
}
public void turn_on() {
light.setValue(true);
}
public void turn_off() {
light.setValue(false);
}
public void setBrightness(Integer target) {
if (target<=0) turn_off();
else turn_on();
brightness.setValue(target);
}
@Override
public Message handleRequest(Message msg) {
switch (msg.getAction()) {
case "toggle":
toggle();
break;
case "turn_on":
turn_on();
break;
case "turn_off":
turn_off();
break;
case "dim":
Integer target = msg.getBodyAsMap().get("target").AsInt32();
setBrightness(target);
break;
}
return null;
}
}
package org.imta.xaal.lib;
import java.util.Arrays;
import java.util.UUID;
/**
*
* @author jkx
*/
public class Test {
/**
* @param args the command line arguments
*/
public static void main(String[] args) throws Exception{
Engine eng = new Engine(Config.getInstance());
Lamp l1 = new Lamp(UUID.fromString("6265eb30-8c59-11e9-98b1-b827ebe99201"));
Lamp l2 = new Lamp(UUID.fromString("6265eb30-8c59-11e9-98b1-b827ebe99202"));
UUID grp = UUID.randomUUID();
l1.setGroupID(grp);
l2.setGroupID(grp);
eng.registerDevices(Arrays.asList(l1,l2));
eng.start();
l1.toggle();
l2.setBrightness(50);
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment