package com.mes.connect.addressparser; import com.mes.connect.industrialinterface.AddressParser; import com.mes.connect.protocol.ProtocolAddress; /** * Modbus IP地址解析器 * * @author yzx * @version 1.0 */ public class ModbusIpAddressParser implements AddressParser { /** * 地址值类型 */ private final String valueTypeMBIP="MBIP."; @Override public ProtocolAddress parse(String address) { // 格式示例: "MBIP.4x0001" 或 "MBIP.0x100.2" if (!address.startsWith(valueTypeMBIP)) { throw new IllegalArgumentException("Invalid Modbus IP address format: " + address); } // 复用Modbus地址解析逻辑 return new ModbusAddressParser().parse("MB." + address.substring(5)); } }