private void discardOtherMembers() { List<Address> outsideMembers = new ArrayList<>(); for (Address a : allMembers) { boolean inThisPartition = false; for (JChannel c : channels) { if (c.getAddress().equals(a)) inThisPartition = true; } if (!inThisPartition) outsideMembers.add(a); } for (JChannel c : channels) { DISCARD discard = new DISCARD(); for (Address a : outsideMembers) discard.addIgnoreMember(a); try { c.getProtocolStack().insertProtocol(discard, ProtocolStack.Position.ABOVE, TP.class); } catch (Exception e) { throw new RuntimeException(e); } } }
if (partitionOne.contains(address(i))) { for (Address a : partitionTwo) { discards[i].addIgnoreMember(((JGroupsAddress) a).getJGroupsAddress()); discards[i].addIgnoreMember(((JGroupsAddress) a).getJGroupsAddress());