private void process(DatagramPacket packet) { String string = new String(packet.getData()); if (raw) System.out.println(string); if (string.startsWith("/c/")) { // UUID id = UUID.randomUUID(); int id = UniqueIdentifier.getIdentifier(); String name = string.split("/c/|/e/")[1]; System.out.println(name + "(" + id + ") connected!"); clients.add(new ServerClient(name, packet.getAddress(), packet.getPort(), id)); String ID = "/c/" + id; send(ID, packet.getAddress(), packet.getPort()); } else if (string.startsWith("/m/")) { sendToAll(string); } else if (string.startsWith("/d/")) { String id = string.split("/d/|/e/")[1]; disconnect(Integer.parseInt(id), true); } else if (string.startsWith("/i/")) { clientResponse.add(Integer.parseInt(string.split("/i/|/e/")[1])); } else { System.out.println(string); } }
/** * Chooses the delegate for a specific unique identifier. * * @param uid the unique identifier, not null * @return the delegate, not null */ protected T chooseDelegate(final UniqueIdentifier uid) { String[] schemeParts = StringUtils.split(uid.getScheme(), "-", 2); String schemePrefix = schemeParts[0]; final T delegate = _schemeToDelegateMap.get(schemePrefix); return (delegate != null) ? delegate : _defaultDelegate; }
public void setUniqueIdentifier(UniqueIdentifier obj) { UniqueIdentifier it = getUniqueIdentifier(); it.value(obj.value()); components.set(0, it); }