if (!receivedMessages.contains(streamID)) {
byte[][] toAssemble = depacketize(rcvdMsg, streamID);
if (toAssemble != null) {
receivedMessages.add(streamID);
byte[] bytesMessage = assemble(toAssemble);
AsynchMessageArrivedEvent messageEvent = new AsynchMessageArrivedEvent(bytesMessage, ((AsynchMessageArrivedEvent) protocolEvent).getSourceURL());
this.fireEvent(messageEvent);
synchronized (receiveRequests) {
for (ReceiveRequest request : receiveRequests) {
request.setMessage(messageEvent.getContentBytes());
}
receiveRequests.clear();
}
}
}