package com.ps.visualization.action;

import java.util.ArrayList;
import java.util.List;

import javax.annotation.Resource;

import org.apache.struts2.convention.annotation.Action;
import org.apache.struts2.convention.annotation.ParentPackage;
import org.apache.struts2.convention.annotation.Result;
import org.apache.struts2.convention.annotation.Results;

import com.ps.base.action.BaseListAction;
import com.ps.visualization.service.PortsinfoService;

@SuppressWarnings("serial")
@ParentPackage("json-default")
@Results({ @Result(name = BaseListAction.SUCCESS, type = "json"),
		@Result(name = BaseListAction.ERROR, type = "json") })
public class PortsinfoAction extends BaseListAction {

	@Resource(name = "portsinfoService")
	private PortsinfoService portsinfoService;
	private List<Object> returnList = new ArrayList<Object>();
	public boolean isIndustrialProtocol;

	public boolean isIndustrialProtocol() {
		return isIndustrialProtocol;
	}

	public void setIndustrialProtocol(boolean isIndustrialProtocol) {
		this.isIndustrialProtocol = isIndustrialProtocol;
	}

	public List<Object> getReturnList() {
		return returnList;
	}

	public void setReturnList(List<Object> returnList) {
		this.returnList = returnList;
	}

	// @Action(value = "realTimeScanInfo", results = { @Result(name = SUCCESS,
	// type = "json", params = {
	// "root", "returnList" }) })
	// public String realTimeScanInfo() {
	// returnList = portsinfoService.realTimeScanInfo();
	// return SUCCESS;
	// }

	@Action(value = "getProtocolCountryRelation", results = { @Result(name = SUCCESS, type = "json", params = {
			"root", "returnList" }) })
	public String getProtocolCountryRelation() {
		if (isIndustrialProtocol) {
			returnList = portsinfoService.getProtocolCountryRelation(this
					.getNotIndustrialProtocol());
		} else {
			returnList = portsinfoService.getProtocolCountryRelation(this
					.getNotIndustrialProtocolNull());
		}
		return SUCCESS;
	}

	@Action(value = "getProtocolCountryRelationZxn", results = { @Result(name = SUCCESS, type = "json", params = {
			"root", "returnList" }) })
	public String getProtocolCountryRelationZxn() {
		if (isIndustrialProtocol) {
			returnList = portsinfoService.getProtocolCountryRelation(this
					.getNotIndustrialProtocol());
		} else {
			returnList = portsinfoService.getProtocolCountryRelation(this
					.getNotIndustrialProtocolNull());
		}
		return SUCCESS;
	}

	@Action(value = "getCountryCityHotAboutScada", results = { @Result(name = SUCCESS, type = "json", params = {
			"root", "returnList" }) })
	public String getCountryCityHotAboutScada() {
		returnList = portsinfoService.getCountryCityHotAboutScada();
		return SUCCESS;
	}
}
