@Override public boolean register(CommUser commUser) { checkArgument(!contains(commUser), "%s is already registered.", commUser); if (unregisteredUsersDevices.containsKey(commUser)) { // re-register, reuse already created device final CommDevice dev = unregisteredUsersDevices.remove(commUser); dev.register(); addDevice(dev, commUser); } else { final CommDeviceBuilder builder = CommDevice.builder(this, commUser) .setReliability(defaultReliability); commUser.setCommDevice(builder); checkState( builder.isUsed(), "%s is not implemented correctly, a CommDevice must be constructed in" + " setCommDevice()", commUser); } return true; }