net_alchim31_livereload.LRProtocol Maven / Gradle / Ivy
package net_alchim31_livereload;
import java.util.LinkedHashMap;
import java.util.LinkedList;
import java.util.Map;
import org.json.simple.JSONValue;
/**
* @see http://feedback.livereload.com/knowledgebase/articles/86174-livereload-protocol
* @author dwayne
*
*/
public class LRProtocol {
public String hello() {
LinkedList protocols = new LinkedList();
protocols.add("http://livereload.com/protocols/official-7");
LinkedHashMap obj = new LinkedHashMap();
obj.put("command","hello");
obj.put("protocols", protocols);
obj.put("serverName", "livereload-jvm");
return JSONValue.toJSONString(obj);
}
public String alert(String msg) throws Exception {
LinkedHashMap obj = new LinkedHashMap();
obj.put("command","alert");
obj.put("message", msg);
return JSONValue.toJSONString(obj);
}
public String reload(String path) throws Exception {
LinkedHashMap obj = new LinkedHashMap();
obj.put("command","reload");
obj.put("path", path);
obj.put("liveCSS", true);
return JSONValue.toJSONString(obj);
}
@SuppressWarnings("unchecked")
public boolean isHello(String data) throws Exception {
Object obj= JSONValue.parse(data);
boolean back = obj instanceof Map;
back = back && "hello".equals(((Map
© 2015 - 2025 Weber Informatics LLC | Privacy Policy