Newer
Older
pgdsc / src / com / szpg / plc / message / command / WriteMemoryCommand.java
ty-pc\admin on 22 May 2019 3 KB 20190522 环境监测功能梳理
package com.szpg.plc.message.command;

import com.szpg.plc.message.AppCommand;
import com.szpg.plc.message.AppMessageConstants;
import com.szpg.plc.message.command.write.SetSdThresholdWordCommand;
import com.szpg.plc.message.command.write.SetWdThresholdWordCommand;

public abstract class WriteMemoryCommand extends AppCommand {
	
	/**
	 * 
	 */
	private static final long serialVersionUID = -1083680357338083535L;
	
	private byte memoryArea; //写的内存区域代码
	private String startAddress; //起始地址
	private int count; //写的字数量/1WORD=2BYTE
	private int bit; // 要写的位
	private byte[] value; //要写入的内容

	public byte getMemoryArea() {
		return memoryArea;
	}

	public void setMemoryArea(byte memoryArea) {
		this.memoryArea = memoryArea;
	}

	public String getStartAddress() {
		return startAddress;
	}

	public void setStartAddress(String startAddress) {
		this.startAddress = startAddress;
	}

	public int getCount() {
		return count;
	}

	public void setCount(int count) {
		this.count = count;
	}

	public int getBit() {
		return bit;
	}

	public void setBit(int bit) {
		this.bit = bit;
	}

	public byte[] getValue() {
		return value;
	}

	public void setValue(byte[] value) {
		this.value = value;
	}
	
	public static WriteMemoryCommand getInstance(String type) {
		switch (type) {
//			case AppMessageConstants.CMD_TYPE_READCH4VALUE:
//				return new ReadCH4ValueCommand();
//			case AppMessageConstants.CMD_TYPE_READCH4STATUS:
//				return new ReadCH4StatusCommand();
				
			case AppMessageConstants.CMD_TYPE_SETWDTHRESHOLD:
				return new SetWdThresholdWordCommand();
			case AppMessageConstants.CMD_TYPE_SETSDTHRESHOLD:
				return new SetSdThresholdWordCommand();
				
//			case AppMessageConstants.CMD_TYPE_READCOVALUE:
//				return new ReadCOValueCommand();
//			case AppMessageConstants.CMD_TYPE_READCOSTATUS:
//				return new ReadCOStatusCommand();
				
//			case AppMessageConstants.CMD_TYPE_READO2VALUE:
//				return new ReadO2ValueCommand();
//			case AppMessageConstants.CMD_TYPE_READO2STATUS:
//				return new ReadO2StatusCommand();
				
//			case AppMessageConstants.CMD_TYPE_READHSVALUE:
//				return new ReadHSValueCommand();
//			case AppMessageConstants.CMD_TYPE_READHSSTATUS:
//				return new ReadHSStatusCommand();
				
//			case AppMessageConstants.CMD_TYPE_READYWSTATUS:
//				return new ReadYWStatusCommand();
//				
//			case AppMessageConstants.CMD_TYPE_READDSSTATUS:
//				return new ReadDSStatusCommand();
//				
//			case AppMessageConstants.CMD_TYPE_READJGSTATUS:
//				return new ReadJgStatusCommand();
//				
//			case AppMessageConstants.CMD_TYPE_READFJSTAT:
//				return new ReadFjStatCommand();
//			case AppMessageConstants.CMD_TYPE_READFJRUNTIME:
//				return new ReadFjRtCommand();
//				
//			case AppMessageConstants.CMD_TYPE_READSBSTAT:
//				return new ReadSbStatCommand();
//			case AppMessageConstants.CMD_TYPE_READSBRUNTIME:
//				return new ReadSbRtCommand();
//				
//			case AppMessageConstants.CMD_TYPE_READZMSTAT:
//				return new ReadZmStatCommand();
//			case AppMessageConstants.CMD_TYPE_READZMRUNTIME:
//				return new ReadZmRtCommand();
			
			default: 
				return null;
		}
	}

	public abstract String getCommandType();
}