Commit 9b4524d94c9ea0a5bd3e3ed5ab9e0a4a6dc975d7
1 parent
5c2586c6
Exists in
develop
fix: session发消息修改
Showing
5 changed files
with
40 additions
and
11 deletions
Show diff stats
src/main/java/com/example/mina/client/base/AbstractClient.java
1 | 1 | package com.example.mina.client.base; |
2 | 2 | |
3 | 3 | import com.example.mina.client.entity.AbstractClientMessage; |
4 | -import com.example.mina.client.entity.ServerMessage; | |
4 | +import com.example.mina.client.entity.ClientDTO; | |
5 | 5 | import com.example.mina.client.service.ServerService; |
6 | 6 | import com.example.mina.client.service.impl.ServerServiceImpl; |
7 | 7 | import com.example.mina.server.base.AbstractHardwareDataBuffer; |
... | ... | @@ -38,7 +38,7 @@ public abstract class AbstractClient { |
38 | 38 | |
39 | 39 | protected abstract void init(); |
40 | 40 | |
41 | - public void start() { | |
41 | + public void start(ClientDTO clientDTO) { | |
42 | 42 | //1、创建客户端IoService |
43 | 43 | IoConnector connector = new NioSocketConnector(); |
44 | 44 | //客户端链接超时时间 |
... | ... | @@ -55,7 +55,7 @@ public abstract class AbstractClient { |
55 | 55 | connectFuture.awaitUninterruptibly(); |
56 | 56 | // 获取连接会话 |
57 | 57 | this.ioSession = connectFuture.getSession(); |
58 | - //setAttenuation(1, 1, 10); | |
58 | + setAttenuation(clientDTO); | |
59 | 59 | } |
60 | 60 | |
61 | 61 | public boolean isConnected() { |
... | ... | @@ -66,7 +66,7 @@ public abstract class AbstractClient { |
66 | 66 | |
67 | 67 | } |
68 | 68 | |
69 | - //abstract public boolean setAttenuation(int row, int col, int attenuation); | |
69 | + abstract public void setAttenuation(ClientDTO clientDTO); | |
70 | 70 | |
71 | 71 | //abstract public int getAttenuation(int row, int col); |
72 | 72 | ... | ... |
src/main/java/com/example/mina/client/box/aeroflex/AeroflexClient.java
... | ... | @@ -2,6 +2,7 @@ package com.example.mina.client.box.aeroflex; |
2 | 2 | |
3 | 3 | import com.example.mina.client.base.AbstractClient; |
4 | 4 | import com.example.mina.client.entity.AeroflexMessage; |
5 | +import com.example.mina.client.entity.ClientDTO; | |
5 | 6 | import com.example.mina.client.entity.ServerMessage; |
6 | 7 | import com.example.mina.server.entity.AeroflexDataBuffer; |
7 | 8 | |
... | ... | @@ -22,6 +23,11 @@ public class AeroflexClient extends AbstractClient { |
22 | 23 | abstractVirtualBoxClientHandler = new AeroflexClientHandler(abstractClientMessage, hardwareDataBuffer); |
23 | 24 | } |
24 | 25 | |
26 | + @Override | |
27 | + public void setAttenuation(ClientDTO clientDTO) { | |
28 | + | |
29 | + } | |
30 | + | |
25 | 31 | /*@Override |
26 | 32 | public boolean setAttenuation(int row, int col, int attenuation) { |
27 | 33 | return false; | ... | ... |
src/main/java/com/example/mina/client/box/lte3000/Lte3000Client.java
1 | 1 | package com.example.mina.client.box.lte3000; |
2 | 2 | |
3 | 3 | import com.example.mina.client.base.AbstractClient; |
4 | +import com.example.mina.client.entity.ClientDTO; | |
4 | 5 | import com.example.mina.client.entity.Command; |
5 | 6 | import com.example.mina.client.entity.Lte3000Message; |
6 | 7 | import com.example.mina.client.entity.ServerMessage; |
... | ... | @@ -33,18 +34,17 @@ public class Lte3000Client extends AbstractClient { |
33 | 34 | abstractVirtualBoxClientHandler = new Lte3000ClientHandler(abstractClientMessage, hardwareDataBuffer); |
34 | 35 | } |
35 | 36 | |
36 | - public void setAttenuation(int row, int col, int atten) { | |
37 | - //ioSession.write("abcdfd".getBytes()); | |
37 | + @Override | |
38 | + public void setAttenuation(ClientDTO clientDTO) { | |
38 | 39 | byte[] cmd; |
39 | - if (row == 0) { | |
40 | - cmd = Lte3000CommandHelper.genCommandSetAttn(col, atten); | |
40 | + if (clientDTO.getRow() == 0) { | |
41 | + cmd = Lte3000CommandHelper.genCommandSetAttn(clientDTO.getCol(), clientDTO.getMaxAttn()); | |
41 | 42 | } else { |
42 | - cmd = Lte3000CommandHelper.genCommandSetCross(row, col); | |
43 | + cmd = Lte3000CommandHelper.genCommandSetCross(clientDTO.getRow(), clientDTO.getCol()); | |
43 | 44 | } |
44 | 45 | ioSession.write(cmd); |
45 | 46 | } |
46 | 47 | |
47 | - | |
48 | 48 | public int getAttenuation(int col) { |
49 | 49 | return hardwareDataBuffer.getOffset(col); |
50 | 50 | } | ... | ... |
src/main/java/com/example/mina/client/entity/ClientDTO.java
0 → 100644
... | ... | @@ -0,0 +1,22 @@ |
1 | +package com.example.mina.client.entity; | |
2 | + | |
3 | +import lombok.Builder; | |
4 | +import lombok.Data; | |
5 | + | |
6 | +/** | |
7 | + * @author dy | |
8 | + * @date 2021/3/12 | |
9 | + */ | |
10 | +@Data | |
11 | +@Builder | |
12 | +public class ClientDTO { | |
13 | + | |
14 | + private Integer row; | |
15 | + | |
16 | + private Integer col; | |
17 | + | |
18 | + private Integer maxAttn; | |
19 | + | |
20 | + private String description; | |
21 | + | |
22 | +} | ... | ... |
src/main/java/com/example/mina/client/test/MinaClient.java
1 | 1 | package com.example.mina.client.test; |
2 | 2 | |
3 | 3 | import com.example.mina.client.box.lte3000.Lte3000Client; |
4 | +import com.example.mina.client.entity.ClientDTO; | |
4 | 5 | |
5 | 6 | public class MinaClient { |
6 | 7 | |
... | ... | @@ -30,7 +31,7 @@ public class MinaClient { |
30 | 31 | // cf.getSession().getCloseFuture().awaitUninterruptibly(); |
31 | 32 | // |
32 | 33 | // connector.dispose(); |
33 | - new Lte3000Client().start(); | |
34 | + new Lte3000Client().start(ClientDTO.builder().row(32).col(32).maxAttn(30).build()); | |
34 | 35 | |
35 | 36 | |
36 | 37 | } | ... | ... |