private Map<TransportProtocolId, List<TransportConnectionInfo>> parseBootstrapServers( String serversStr) throws InvalidKeySpecException, NoSuchAlgorithmException { Map<TransportProtocolId, List<TransportConnectionInfo>> servers = new HashMap<>(); String[] serversSplit = serversStr.split(";"); for (String server : serversSplit) { if (server != null && !server.trim().isEmpty()) { String[] tokens = server.split(":"); ProtocolMetaData md = new ProtocolMetaData(); md.setAccessPointId(Integer.valueOf(tokens[0])); md.setProtocolVersionInfo(new ProtocolVersionPair(Integer.valueOf(tokens[1]), Integer.valueOf(tokens[2]))); md.setConnectionInfo(ByteBuffer.wrap(getBase64().decodeBase64(tokens[3]))); TransportProtocolId key = new TransportProtocolId(md.getProtocolVersionInfo().getId(), md.getProtocolVersionInfo().getVersion()); List<TransportConnectionInfo> serverList = servers.get(key); if (serverList == null) { serverList = new ArrayList<TransportConnectionInfo>(); servers.put(key, serverList); } serverList.add(new GenericTransportInfo(ServerType.BOOTSTRAP, md)); } } return servers; }