ClientRequest.java 2.04 KB
package com.taover.heartbeat.bean;

import javax.servlet.http.HttpServletRequest;

public class ClientRequest {
	private String code = "";
	private String ip = "";
	private int maxWaitSec = Instance.DEFAULT_MAX_WAIT_SEC;
	private int fixRateSec = Instance.DEFAULT_FIX_RATE_SEC;
	private long unixtime;
	
	public String getCode() {
		return code;
	}
	public void setCode(String code) {
		this.code = code;
	}
	public String getIp() {
		return ip;
	}
	public void setIp(String ip) {
		this.ip = ip;
	}
	public int getMaxWaitSec() {
		return maxWaitSec;
	}
	public void setMaxWaitSec(int maxWaitSec) {
		this.maxWaitSec = maxWaitSec;
	}
	public int getFixRateSec() {
		return fixRateSec;
	}
	public void setFixRateSec(int fixRateSec) {
		this.fixRateSec = fixRateSec;
	}
	public long getUnixtime() {
		return unixtime;
	}
	public void setUnixtime(long unixtime) {
		this.unixtime = unixtime;
	}
	
	public ClientRequest(String code, String ip, int maxWaitSec, int fixRateSec, long unixtime) {
		this.code = code;
		this.ip = ip;
		this.maxWaitSec = maxWaitSec;
		this.fixRateSec = fixRateSec;
		this.unixtime = unixtime;
	}
	
	public ClientRequest(ClientRequest clientRequest) {
		this.code = clientRequest.getCode();
		this.ip = clientRequest.getIp();
		this.maxWaitSec = clientRequest.getMaxWaitSec();
		this.fixRateSec = clientRequest.getFixRateSec();
		this.unixtime = clientRequest.getUnixtime();
	}
	
	public static ClientRequest createClientRequest(HttpServletRequest request) {
		String code = request.getParameter("code");
		String maxWaitSec = request.getParameter("maxWaitSec");
		String fixRateSec = request.getParameter("fixRateSec");
		String unixtime = request.getParameter("unixtime");
		String ip = request.getRemoteHost();
		return new ClientRequest(code, ip, 
				maxWaitSec==null?Instance.DEFAULT_MAX_WAIT_SEC:Integer.valueOf(maxWaitSec), 
				fixRateSec==null?Instance.DEFAULT_FIX_RATE_SEC:Integer.valueOf(fixRateSec),
				unixtime==null?System.currentTimeMillis()/1000:Long.valueOf(unixtime));
	}
	
	public String getIdentity() {
		return this.code + "@" + this.ip;
	}
}