Skip to content

Commit 1987adc

Browse files
committed
made some refacturing and resume work on the project.
1 parent 94f7de9 commit 1987adc

File tree

3 files changed

+52
-9
lines changed

3 files changed

+52
-9
lines changed

src/main/java/net/sharksystem/asap/ASAPPeerFS.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ private void chunkAssimilated(ASAPMessages receivedMessages, CharSequence format
4747
}
4848

4949
sb = new StringBuilder();
50-
sb.append("\n+++++++++++++++++++++++++++++++++++++++ chunkAssimilated +++++++++++++++++++++++++++++++++++++++++\n");
50+
sb.append("\n+++++++++++++++++++++++++++++++++++++++ chunkReceived +++++++++++++++++++++++++++++++++++++++++\n");
5151
sb.append("E2E|P2P: " + senderE2E + " | " + asapHopList.get(asapHopList.size()-1).sender() + " | uri: " + uri);
5252
sb.append(" | era: ");
5353
if(era == ASAP.TRANSIENT_ERA) sb.append("transient");

src/main/java/net/sharksystem/asap/engine/ASAPEngine.java

+50-2
Original file line numberDiff line numberDiff line change
@@ -470,23 +470,71 @@ public void handleASAPAssimilate(ASAP_AssimilationPDU_1_0 asapAssimilationPDU, A
470470
//>>>>>>>>>>>>>>>>>>>debug
471471

472472
if(listener != null) {
473-
/////// notify listeners - if any
473+
/////// notify listeners - if any and do it in a separate thread
474+
// no extra thread required - it is handled by ASAPPeer Wrapper
475+
// NotifyListenerThread notifyListenerThread = new NotifyListenerThread(listener);
474476
if(eraSender != ASAP.TRANSIENT_ERA) {
475-
listener.chunkStored(this.format,
477+
// notifyListenerThread.chunkStored(this.format,
478+
listener.chunkStored(this.format,
476479
senderE2E,
477480
uri,
478481
eraSender,
479482
asapHopList
480483
);
481484
} else {
485+
// notifyListenerThread.transientMessagesReceived(transientMessages, lastHop);
482486
listener.transientMessagesReceived(transientMessages, lastHop);
483487
}
484488

485489
} else {
486490
Log.writeLog(this, this.toString(), "no chunk assimilated listener found");
487491
}
488492
}
493+
/*
494+
private class NotifyListenerThread extends Thread {
495+
private final ASAPChunkAssimilatedListener listener;
496+
private String format;
497+
private String senderE2E;
498+
private int eraSender;
499+
private List<ASAPHop> asapHopList;
500+
private ASAPInMemoTransientMessages transientMessages;
501+
private ASAPHop lastHop;
502+
private String uri;
503+
504+
private NotifyListenerThread(ASAPChunkAssimilatedListener listener) {
505+
this.listener = listener;
506+
}
507+
508+
public void chunkStored(String format, String senderE2E, String uri, int eraSender, List<ASAPHop> asapHopList) {
509+
this.format = format;
510+
this.senderE2E = senderE2E;
511+
this.uri = uri;
512+
this.eraSender = eraSender;
513+
this.asapHopList = asapHopList;
514+
this.start();
515+
}
489516
517+
public void transientMessagesReceived(ASAPInMemoTransientMessages transientMessages, ASAPHop lastHop) {
518+
this.transientMessages = transientMessages;
519+
this.lastHop = lastHop;
520+
this.start();
521+
}
522+
523+
public void run() {
524+
Log.writeLog(this, "thread notifies listener about received messages");
525+
try {
526+
if(this.transientMessages != null) {
527+
this.listener.transientMessagesReceived(this.transientMessages, this.lastHop);
528+
} else {
529+
this.listener.chunkStored(this.format, this.senderE2E, this.uri, this.eraSender, this.asapHopList);
530+
}
531+
} catch (IOException e) {
532+
Log.writeLogErr(this, "problems notifying listener about received messages: "
533+
+ e.getLocalizedMessage());
534+
}
535+
}
536+
}
537+
*/
490538
private ASAPInternalChunk getIncomingChunk(String encounteredPeer, ASAP_AssimilationPDU_1_0 asapAssimilationPDU)
491539
throws IOException, ASAPException {
492540

src/main/java/net/sharksystem/asap/engine/ASAPInMemoTransientMessages.java

+1-6
Original file line numberDiff line numberDiff line change
@@ -31,14 +31,9 @@ public ASAPInMemoTransientMessages(CharSequence format, CharSequence uri, CharSe
3131
this.asapHop = asapHop;
3232
}
3333

34-
private void checkStatus() throws IOException {
35-
if(this.size < 0) throw new IOException("transient message container not yet filled");
36-
}
37-
3834
@Override
3935
public int size() throws IOException {
40-
this.checkStatus();
41-
return this.size;
36+
return this.messageList.size();
4237
}
4338

4439
@Override

0 commit comments

Comments
 (0)