diff --git a/src/main/java/com/example/mina/client/base/AbstractClient.java b/src/main/java/com/example/mina/client/base/AbstractClient.java index fd6aedc..abc538b 100644 --- a/src/main/java/com/example/mina/client/base/AbstractClient.java +++ b/src/main/java/com/example/mina/client/base/AbstractClient.java @@ -1,7 +1,7 @@ package com.example.mina.client.base; import com.example.mina.client.entity.AbstractClientMessage; -import com.example.mina.client.entity.ServerMessage; +import com.example.mina.client.entity.ClientDTO; import com.example.mina.client.service.ServerService; import com.example.mina.client.service.impl.ServerServiceImpl; import com.example.mina.server.base.AbstractHardwareDataBuffer; @@ -38,7 +38,7 @@ public abstract class AbstractClient { protected abstract void init(); - public void start() { + public void start(ClientDTO clientDTO) { //1、创建客户端IoService IoConnector connector = new NioSocketConnector(); //客户端链接超时时间 @@ -55,7 +55,7 @@ public abstract class AbstractClient { connectFuture.awaitUninterruptibly(); // 获取连接会话 this.ioSession = connectFuture.getSession(); - //setAttenuation(1, 1, 10); + setAttenuation(clientDTO); } public boolean isConnected() { @@ -66,7 +66,7 @@ public abstract class AbstractClient { } - //abstract public boolean setAttenuation(int row, int col, int attenuation); + abstract public void setAttenuation(ClientDTO clientDTO); //abstract public int getAttenuation(int row, int col); diff --git a/src/main/java/com/example/mina/client/box/aeroflex/AeroflexClient.java b/src/main/java/com/example/mina/client/box/aeroflex/AeroflexClient.java index 4d5bb1b..c0d403c 100644 --- a/src/main/java/com/example/mina/client/box/aeroflex/AeroflexClient.java +++ b/src/main/java/com/example/mina/client/box/aeroflex/AeroflexClient.java @@ -2,6 +2,7 @@ package com.example.mina.client.box.aeroflex; import com.example.mina.client.base.AbstractClient; import com.example.mina.client.entity.AeroflexMessage; +import com.example.mina.client.entity.ClientDTO; import com.example.mina.client.entity.ServerMessage; import com.example.mina.server.entity.AeroflexDataBuffer; @@ -22,6 +23,11 @@ public class AeroflexClient extends AbstractClient { abstractVirtualBoxClientHandler = new AeroflexClientHandler(abstractClientMessage, hardwareDataBuffer); } + @Override + public void setAttenuation(ClientDTO clientDTO) { + + } + /*@Override public boolean setAttenuation(int row, int col, int attenuation) { return false; diff --git a/src/main/java/com/example/mina/client/box/lte3000/Lte3000Client.java b/src/main/java/com/example/mina/client/box/lte3000/Lte3000Client.java index 31cf342..d783460 100644 --- a/src/main/java/com/example/mina/client/box/lte3000/Lte3000Client.java +++ b/src/main/java/com/example/mina/client/box/lte3000/Lte3000Client.java @@ -1,6 +1,7 @@ package com.example.mina.client.box.lte3000; import com.example.mina.client.base.AbstractClient; +import com.example.mina.client.entity.ClientDTO; import com.example.mina.client.entity.Command; import com.example.mina.client.entity.Lte3000Message; import com.example.mina.client.entity.ServerMessage; @@ -33,18 +34,17 @@ public class Lte3000Client extends AbstractClient { abstractVirtualBoxClientHandler = new Lte3000ClientHandler(abstractClientMessage, hardwareDataBuffer); } - public void setAttenuation(int row, int col, int atten) { - //ioSession.write("abcdfd".getBytes()); + @Override + public void setAttenuation(ClientDTO clientDTO) { byte[] cmd; - if (row == 0) { - cmd = Lte3000CommandHelper.genCommandSetAttn(col, atten); + if (clientDTO.getRow() == 0) { + cmd = Lte3000CommandHelper.genCommandSetAttn(clientDTO.getCol(), clientDTO.getMaxAttn()); } else { - cmd = Lte3000CommandHelper.genCommandSetCross(row, col); + cmd = Lte3000CommandHelper.genCommandSetCross(clientDTO.getRow(), clientDTO.getCol()); } ioSession.write(cmd); } - public int getAttenuation(int col) { return hardwareDataBuffer.getOffset(col); } diff --git a/src/main/java/com/example/mina/client/entity/ClientDTO.java b/src/main/java/com/example/mina/client/entity/ClientDTO.java new file mode 100644 index 0000000..3edebf3 --- /dev/null +++ b/src/main/java/com/example/mina/client/entity/ClientDTO.java @@ -0,0 +1,22 @@ +package com.example.mina.client.entity; + +import lombok.Builder; +import lombok.Data; + +/** + * @author dy + * @date 2021/3/12 + */ +@Data +@Builder +public class ClientDTO { + + private Integer row; + + private Integer col; + + private Integer maxAttn; + + private String description; + +} diff --git a/src/main/java/com/example/mina/client/test/MinaClient.java b/src/main/java/com/example/mina/client/test/MinaClient.java index 815e10a..313d8ad 100644 --- a/src/main/java/com/example/mina/client/test/MinaClient.java +++ b/src/main/java/com/example/mina/client/test/MinaClient.java @@ -1,6 +1,7 @@ package com.example.mina.client.test; import com.example.mina.client.box.lte3000.Lte3000Client; +import com.example.mina.client.entity.ClientDTO; public class MinaClient { @@ -30,7 +31,7 @@ public class MinaClient { // cf.getSession().getCloseFuture().awaitUninterruptibly(); // // connector.dispose(); - new Lte3000Client().start(); + new Lte3000Client().start(ClientDTO.builder().row(32).col(32).maxAttn(30).build()); } -- libgit2 0.21.2