// Path: src/main/java/com/ht/scada/oildata/entity/FaultDiagnoseRecord.java
// public class FaultDiagnoseRecord {
// 
// 	private String id; // 唯一主键
// 	private String code;// 计量点编号(回路号、井号等)
// 	private String name;// 故障类型
// 	private String info;// 故障信息
// 	private Integer level;	// 故障程度 
// 	@Column(name = "action_time")
// 	private Date actionTime;
// 	@Column(name = "resume_time")
// 	private Date resumeTime;
// 	
// 	private User user;
// 
// 	public String getId() {
// 		return id;
// 	}
// 
// 	public void setId(String id) {
// 		this.id = id;
// 	}
// 
// 	public String getCode() {
// 		return code;
// 	}
// 
// 	public void setCode(String code) {
// 		this.code = code;
// 	}
// 
// 	public String getName() {
// 		return name;
// 	}
// 
// 	public void setName(String name) {
// 		this.name = name;
// 	}
// 
// 	public String getInfo() {
// 		return info;
// 	}
// 
// 	public void setInfo(String info) {
// 		this.info = info;
// 	}
// 	
// 	public Integer getLevel() {
// 		return level;
// 	}
// 	
// 	public void setLevel(Integer level) {
// 		this.level = level;
// 	}
// 
// 	public Date getActionTime() {
// 		return actionTime;
// 	}
// 
// 	public void setActionTime(Date actionTime) {
// 		this.actionTime = actionTime;
// 	}
// 
// 	public User getUser() {
// 		return user;
// 	}
// 
// 	public void setUser(User user) {
// 		this.user = user;
// 	}
// 	
// 	
// 	
// 	public Date getResumeTime() {
// 		return resumeTime;
// 	}
// 
// 	public void setResumeTime(Date resumeTime) {
// 		this.resumeTime = resumeTime;
// 	}
// 
// 	/**
// 	 * 生成报警记录用
// 	 * @return
// 	 */
// 	public String getReMark() {
// 		return "故障类型为：" + name + (level==null?"":("；故障程度为：" + String.valueOf(level)));
// 	}
// 
// }


import com.alibaba.fastjson.JSON;
import com.ht.scada.oildata.entity.FaultDiagnoseRecord;
import java.io.IOException;
package com.ht.scada.oildata;



/**
 * 实时数据推送代理, 用于触发故障报警、遥信变位、遥测越限，使用时请注册监听器
 *
 * @author: "薄成文" 13-5-21 下午1:51
 * To change this template use File | Settings | File Templates.
 */
public class OilDataMessageDelegate {

    private OilDataMessageListener listener;

    public void setListener(OilDataMessageListener listener) {
        this.listener = listener;
    }

    /**
     * 收到故障报警信息<br/>
     * 故障记录中的id为字符串类型，客户端收到报警信息时该记录的ID已自动生成，但不保证立即写入数据库。
     * @param message
     */
    public void handleMessage(String message) throws IOException {
        System.out.println("收到故障报警");
        System.out.println(message);
        if (listener != null) {
// Path: src/main/java/com/ht/scada/oildata/entity/FaultDiagnoseRecord.java
// public class FaultDiagnoseRecord {
// 
// 	private String id; // 唯一主键
// 	private String code;// 计量点编号(回路号、井号等)
// 	private String name;// 故障类型
// 	private String info;// 故障信息
// 	private Integer level;	// 故障程度 
// 	@Column(name = "action_time")
// 	private Date actionTime;
// 	@Column(name = "resume_time")
// 	private Date resumeTime;
// 	
// 	private User user;
// 
// 	public String getId() {
// 		return id;
// 	}
// 
// 	public void setId(String id) {
// 		this.id = id;
// 	}
// 
// 	public String getCode() {
// 		return code;
// 	}
// 
// 	public void setCode(String code) {
// 		this.code = code;
// 	}
// 
// 	public String getName() {
// 		return name;
// 	}
// 
// 	public void setName(String name) {
// 		this.name = name;
// 	}
// 
// 	public String getInfo() {
// 		return info;
// 	}
// 
// 	public void setInfo(String info) {
// 		this.info = info;
// 	}
// 	
// 	public Integer getLevel() {
// 		return level;
// 	}
// 	
// 	public void setLevel(Integer level) {
// 		this.level = level;
// 	}
// 
// 	public Date getActionTime() {
// 		return actionTime;
// 	}
// 
// 	public void setActionTime(Date actionTime) {
// 		this.actionTime = actionTime;
// 	}
// 
// 	public User getUser() {
// 		return user;
// 	}
// 
// 	public void setUser(User user) {
// 		this.user = user;
// 	}
// 	
// 	
// 	
// 	public Date getResumeTime() {
// 		return resumeTime;
// 	}
// 
// 	public void setResumeTime(Date resumeTime) {
// 		this.resumeTime = resumeTime;
// 	}
// 
// 	/**
// 	 * 生成报警记录用
// 	 * @return
// 	 */
// 	public String getReMark() {
// 		return "故障类型为：" + name + (level==null?"":("；故障程度为：" + String.valueOf(level)));
// 	}
// 
// }


// Path: src/main/java/com/ht/scada/oildata/OilDataMessageDelegate.java
import com.alibaba.fastjson.JSON;
import com.ht.scada.oildata.entity.FaultDiagnoseRecord;
import java.io.IOException;

package com.ht.scada.oildata;



/**
 * 实时数据推送代理, 用于触发故障报警、遥信变位、遥测越限，使用时请注册监听器
 *
 * @author: "薄成文" 13-5-21 下午1:51
 * To change this template use File | Settings | File Templates.
 */
public class OilDataMessageDelegate {

    private OilDataMessageListener listener;

    public void setListener(OilDataMessageListener listener) {
        this.listener = listener;
    }

    /**
     * 收到故障报警信息<br/>
     * 故障记录中的id为字符串类型，客户端收到报警信息时该记录的ID已自动生成，但不保证立即写入数据库。
     * @param message
     */
    public void handleMessage(String message) throws IOException {
        System.out.println("收到故障报警");
        System.out.println(message);
        if (listener != null) {
            FaultDiagnoseRecord record = JSON.parseObject(message, FaultDiagnoseRecord.class);