Skip to content

Commit 02b1711

Browse files
committed
online credential exchange worked in a very first test.
1 parent ccd77bb commit 02b1711

File tree

6 files changed

+44
-17
lines changed

6 files changed

+44
-17
lines changed

app/libs/ASAP_Engine_0.5.0.jar

-3.93 KB
Binary file not shown.

app/src/main/java/net/sharksystem/asap/android/apps/ASAPActivity.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,8 @@ public void sendASAPMessage(CharSequence appName, CharSequence uri,
6464
|| message == null || message.length == 0
6565
) throw new ASAPException("parameter must not be null");
6666

67-
// ensure that any format is supporter by an engine
67+
/*
68+
// ensure that any format is supported by an engine
6869
Collection<CharSequence> supportedFormats = asapApplication.getSupportFormats();
6970
if(supportedFormats != null && supportedFormats.size() > 0) {
7071
Log.d(this.getLogStart(), "use Util.getASAPRootDirectory()");
@@ -76,6 +77,7 @@ public void sendASAPMessage(CharSequence appName, CharSequence uri,
7677
multiEngine.createEngineByFormat(supportedFormat);
7778
}
7879
}
80+
*/
7981

8082
// prepare message
8183
Message msg = Message.obtain(null, ASAPServiceMethods.SEND_MESSAGE, 0, 0);

app/src/main/java/net/sharksystem/asap/android/apps/ASAPApplication.java

Lines changed: 29 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,11 @@
1111
import android.util.Log;
1212
import android.widget.Toast;
1313

14+
import net.sharksystem.Utils;
15+
import net.sharksystem.asap.ASAPChannel;
16+
import net.sharksystem.asap.ASAPChunk;
1417
import net.sharksystem.asap.ASAPChunkReceivedListener;
18+
import net.sharksystem.asap.ASAPChunkStorage;
1519
import net.sharksystem.asap.ASAPEngine;
1620
import net.sharksystem.asap.ASAPEngineFS;
1721
import net.sharksystem.asap.ASAPException;
@@ -340,26 +344,41 @@ public void onReceive(Context context, Intent intent) {
340344
= new HashMap<>();
341345

342346
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: "
344348
+ format + " | "+ sender + " | " + uri + " | " + foldername + " | " + era);
345349

346-
Log.d(this.getLogStart(), "going to inform listener about it");
350+
Log.d(this.getLogStart(), "going to inform (deprecated) ASAPChunkReceivedListener");
347351
ASAPChunkReceivedListener listener = this.chunkReceivedListener.get(uri);
348352
if(listener != null) {
353+
Log.d(this.getLogStart(), "informed: " + listener.toString());
349354
listener.chunkReceived(format, sender, uri, era);
355+
} else {
356+
Log.d(this.getLogStart(),
357+
"no ASAPChunkReceivedListener but maybe ASAPMessageReceivedListener");
350358
}
351359

352360
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);
355372

356373
Collection<ASAPMessageReceivedListener> messageListeners =
357374
this.messageReceivedListener.get(uri);
358375

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+
360379
if(messageListeners != null) {
361380
for(ASAPMessageReceivedListener messageListener : messageListeners) {
362-
messageListener.asapMessagesReceived(messages);
381+
messageListener.asapMessagesReceived(asapMessages);
363382
}
364383
}
365384

@@ -379,14 +398,14 @@ public void addChunkReceivedListener(CharSequence uri, ASAPChunkReceivedListener
379398
this.chunkReceivedListener.put(uri, listener);
380399
}
381400

382-
public void addASAPMessageReceivedListener(CharSequence uri,
401+
public void addASAPMessageReceivedListener(CharSequence format,
383402
ASAPMessageReceivedListener listener) {
384403
Collection<ASAPMessageReceivedListener> messageListeners =
385-
this.messageReceivedListener.get(uri);
404+
this.messageReceivedListener.get(format);
386405

387406
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);
390409
} else {
391410
messageListeners.add(listener);
392411
}

app/src/main/java/net/sharksystem/asap/android/bluetooth/BluetoothEngine.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -294,6 +294,7 @@ void deviceFound(BluetoothDevice btDevice, BluetoothClass btClass) throws ASAPEx
294294
sb.append(macAddress);
295295
sb.append(" | ");
296296
sb.append(btDevice.getName());
297+
sb.append(" | ");
297298
sb.append("my address: ");
298299
sb.append(this.getBTAdapter().getAddress());
299300
Log.d(this.getLogStart(), sb.toString());

app/src/main/java/net/sharksystem/asap/android/example/ASAPExampleActivity.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -242,7 +242,7 @@ public void onRemoveAddOnlineSenderClick(View view) {
242242
return;
243243
}
244244

245-
this.asapStorage.detachASAPMessageAddListener(this.asapOnlineSender);
245+
this.asapStorage.detachASAPMessageAddListener();
246246
}
247247

248248
private void checkStorage() throws IOException, ASAPException {

app/src/main/java/net/sharksystem/asap/android/service/ASAPService.java

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -57,11 +57,9 @@ String getASAPRootFolderName() {
5757
}
5858

5959
public MultiASAPEngineFS getMultiASAPEngine() {
60-
Log.d(LOGSTART, "TODO: setup multi engine each time to keep in sync with external changes.");
61-
// TODO: setup multi engine each time to keep in sync with external changes.
62-
this.asapMultiEngine = null;
60+
Log.d(LOGSTART, "asap multi engine is a singleton.");
6361
if(this.asapMultiEngine == null) {
64-
Log.d(LOGSTART, "try to get asapMultiEngine");
62+
Log.d(LOGSTART, "going to set up asapMultiEngine");
6563

6664
// check write permissions
6765
if (ContextCompat.checkSelfPermission(this,
@@ -88,11 +86,16 @@ public MultiASAPEngineFS getMultiASAPEngine() {
8886
this.owner, this.asapEngineRootFolderName,
8987
this.maxExecutionTime, this.supportedFormats, this);
9088

91-
Log.d(LOGSTART,"engine created");
89+
Log.d(LOGSTART,"engines created");
9290

91+
// listener for radar app
9392
this.asapMultiEngine.addOnlinePeersChangedListener(this);
9493
Log.d(LOGSTART,"added online peer changed listener");
9594

95+
// add online feature to each engine
96+
this.asapMultiEngine.activateOnlineMessages();
97+
Log.d(LOGSTART,"online messages activated");
98+
9699
} catch (IOException e) {
97100
Log.d(LOGSTART,"IOException");
98101
Log.d(LOGSTART,e.getLocalizedMessage());
@@ -102,6 +105,8 @@ public MultiASAPEngineFS getMultiASAPEngine() {
102105
Log.d(LOGSTART,e.getLocalizedMessage());
103106
e.printStackTrace();
104107
}
108+
} else {
109+
Log.d(LOGSTART, "multi engine was already created");
105110
}
106111

107112
return this.asapMultiEngine;

0 commit comments

Comments
 (0)