1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 package org.waarp.openr66.protocol.networkhandler;
21
22 import org.waarp.common.lru.ConcurrentUtility;
23
24 import java.util.Set;
25
26
27
28
29
30
31
32
33
34
35
36
37 public class ClientNetworkChannels {
38
39 private final String hostId;
40 private final Set<NetworkChannelReference> networkChannelReferences =
41 ConcurrentUtility.newConcurrentSet();
42
43 public ClientNetworkChannels(final String hostId) {
44 this.hostId = hostId;
45 }
46
47 public final void add(final NetworkChannelReference networkChannelReference) {
48 networkChannelReferences.add(networkChannelReference);
49 networkChannelReference.clientNetworkChannels = this;
50 networkChannelReference.setHostId(hostId);
51 }
52
53 public final void remove(
54 final NetworkChannelReference networkChannelReference) {
55 networkChannelReferences.remove(networkChannelReference);
56 }
57
58 public final Set<NetworkChannelReference> getNetworkChannelReferences() {
59 return networkChannelReferences;
60 }
61
62 public final boolean isEmpty() {
63 return networkChannelReferences.isEmpty();
64 }
65
66 public final int size() {
67 return networkChannelReferences.size();
68 }
69
70 public final boolean shutdownAllNetworkChannels() {
71 boolean status = false;
72 for (final NetworkChannelReference networkChannelReference : networkChannelReferences) {
73 NetworkTransaction.shuttingDownNetworkChannel(networkChannelReference);
74 status = true;
75 }
76 networkChannelReferences.clear();
77 return status;
78 }
79
80 public final String getHostId() {
81 return hostId;
82 }
83 }