11
11
import android .util .Log ;
12
12
import android .widget .Toast ;
13
13
14
+ import net .sharksystem .Utils ;
15
+ import net .sharksystem .asap .ASAPChannel ;
16
+ import net .sharksystem .asap .ASAPChunk ;
14
17
import net .sharksystem .asap .ASAPChunkReceivedListener ;
18
+ import net .sharksystem .asap .ASAPChunkStorage ;
15
19
import net .sharksystem .asap .ASAPEngine ;
16
20
import net .sharksystem .asap .ASAPEngineFS ;
17
21
import net .sharksystem .asap .ASAPException ;
@@ -340,26 +344,41 @@ public void onReceive(Context context, Intent intent) {
340
344
= new HashMap <>();
341
345
342
346
public void chunkReceived (String format , String sender , String uri , String foldername , int era ) {
343
- Log .d (this .getLogStart (), "got chunk received message: "
347
+ Log .d (this .getLogStart (), "got chunkReceived message: "
344
348
+ format + " | " + sender + " | " + uri + " | " + foldername + " | " + era );
345
349
346
- Log .d (this .getLogStart (), "going to inform listener about it " );
350
+ Log .d (this .getLogStart (), "going to inform (deprecated) ASAPChunkReceivedListener " );
347
351
ASAPChunkReceivedListener listener = this .chunkReceivedListener .get (uri );
348
352
if (listener != null ) {
353
+ Log .d (this .getLogStart (), "informed: " + listener .toString ());
349
354
listener .chunkReceived (format , sender , uri , era );
355
+ } else {
356
+ Log .d (this .getLogStart (),
357
+ "no ASAPChunkReceivedListener but maybe ASAPMessageReceivedListener" );
350
358
}
351
359
352
360
try {
353
- ASAPEngine existingASAPEngineFS = ASAPEngineFS .getExistingASAPEngineFS (foldername );
354
- ASAPMessages messages = existingASAPEngineFS .getChannel (uri ).getMessages ();
361
+ String rootIncomingStorage = foldername + "/" + Utils .url2FileName (format );
362
+ Log .d (this .getLogStart (), "try getting storage in folder " + rootIncomingStorage );
363
+ ASAPEngine existingASAPEngineFS =
364
+ ASAPEngineFS .getExistingASAPEngineFS (rootIncomingStorage );
365
+ Log .d (this .getLogStart (), "got existing asap engine" );
366
+
367
+ ASAPChunkStorage chunkStorage = existingASAPEngineFS .getIncomingChunkStorage (sender );
368
+ Log .d (this .getLogStart (), "got incoming channel of " + sender );
369
+
370
+ ASAPMessages asapMessages = chunkStorage .getASAPChunkCache (uri , era , era );
371
+ Log .d (this .getLogStart (), "got messages uri: " + uri + " / era: " + era );
355
372
356
373
Collection <ASAPMessageReceivedListener > messageListeners =
357
374
this .messageReceivedListener .get (uri );
358
375
359
- Log .d (this .getLogStart (), "going to inform message listener about it" );
376
+ Log .d (this .getLogStart (), "going to inform message listener about it: "
377
+ + messageListeners );
378
+
360
379
if (messageListeners != null ) {
361
380
for (ASAPMessageReceivedListener messageListener : messageListeners ) {
362
- messageListener .asapMessagesReceived (messages );
381
+ messageListener .asapMessagesReceived (asapMessages );
363
382
}
364
383
}
365
384
@@ -379,14 +398,14 @@ public void addChunkReceivedListener(CharSequence uri, ASAPChunkReceivedListener
379
398
this .chunkReceivedListener .put (uri , listener );
380
399
}
381
400
382
- public void addASAPMessageReceivedListener (CharSequence uri ,
401
+ public void addASAPMessageReceivedListener (CharSequence format ,
383
402
ASAPMessageReceivedListener listener ) {
384
403
Collection <ASAPMessageReceivedListener > messageListeners =
385
- this .messageReceivedListener .get (uri );
404
+ this .messageReceivedListener .get (format );
386
405
387
406
if (messageListeners == null ) {
388
- this .messageReceivedListener .put (uri , new HashSet ());
389
- this .addASAPMessageReceivedListener (uri , listener );
407
+ this .messageReceivedListener .put (format , new HashSet ());
408
+ this .addASAPMessageReceivedListener (format , listener );
390
409
} else {
391
410
messageListeners .add (listener );
392
411
}
0 commit comments