From df5380606b477255e07bbab3115f66dcb4ab6360 Mon Sep 17 00:00:00 2001
From: Erwin Tumbul <erwin.tumbul@student.tugraz.at>
Date: Sat, 28 May 2022 17:27:54 +0200
Subject: [PATCH] Update BroadcastReceiver to use new protocol definition.

---
 .../notifier/NotificationBroadcastReceiver.java      | 12 +++++++-----
 server/server.py                                     |  9 ++++-----
 shared/netcode.proto                                 |  2 +-
 3 files changed, 12 insertions(+), 11 deletions(-)

diff --git a/client/android/Notifier/app/src/main/java/com/mobilesec/client/notifier/NotificationBroadcastReceiver.java b/client/android/Notifier/app/src/main/java/com/mobilesec/client/notifier/NotificationBroadcastReceiver.java
index 1e51da7..969916c 100644
--- a/client/android/Notifier/app/src/main/java/com/mobilesec/client/notifier/NotificationBroadcastReceiver.java
+++ b/client/android/Notifier/app/src/main/java/com/mobilesec/client/notifier/NotificationBroadcastReceiver.java
@@ -7,27 +7,28 @@ import android.util.Log;
 
 import io.grpc.ManagedChannel;
 import io.grpc.ManagedChannelBuilder;
+import io.grpc.notifier.Message;
 import io.grpc.notifier.Nothing;
-import io.grpc.notifier.NotifierComGrpc;
-import io.grpc.notifier.SendMessageRequest;
+import io.grpc.notifier.NotifierCommunicationGrpc;
 import io.grpc.stub.StreamObserver;
 
 public class NotificationBroadcastReceiver extends BroadcastReceiver {
 
     private ManagedChannel channel;
-    private final NotifierComGrpc.NotifierComStub asyncStub;
+    private final NotifierCommunicationGrpc.NotifierCommunicationStub asyncStub;
 
     public NotificationBroadcastReceiver() {
         channel = ManagedChannelBuilder.forAddress("192.168.0.127", 8080).usePlaintext().build();
         Log.i("NOTIFIER[NotificationBroadcastReceiver]", String.format("ConnectivityState: %s", channel.getState(true).name()));
-        asyncStub = NotifierComGrpc.newStub(channel);
+        asyncStub = NotifierCommunicationGrpc.newStub(channel);
     }
 
     @Override
     public void onReceive(Context context, Intent intent) {
         Log.i("NOTIFIER[onReceive]", "Received notification.");
         Notification notification = (Notification) intent.getSerializableExtra("Notification");
-        SendMessageRequest message = SendMessageRequest.newBuilder().setMessage(notification.toString()).build();
+        Message message = Message.newBuilder().setCommId(1).setContent(notification.toString()).build();
+
         asyncStub.sendMessage(message, new StreamObserver<Nothing>() {
             @Override
             public void onNext(Nothing value) {
@@ -46,5 +47,6 @@ public class NotificationBroadcastReceiver extends BroadcastReceiver {
                 Log.i("NOTIFIER[onReceive]", "Completed sendMessage.");
             }
         });
+
     }
 }
diff --git a/server/server.py b/server/server.py
index f95e0fd..9182d96 100644
--- a/server/server.py
+++ b/server/server.py
@@ -23,11 +23,10 @@ class NotifierService(NotifierCommunicationServicer):
         # TODO: read comm_id and wait for messages
         yield Message(comm_id=-1, content="test")
 
-    def SendMessage(self, request_iterator, context):
-        for msg in request_iterator:
-            # TODO: read comm_id and route message
-            print(msg.comm_id)
-            print(msg.content)
+    def SendMessage(self, request, context):
+        # TODO: read comm_id and route message
+        print(request.comm_id)
+        print(request.content)
         return Nothing()
 
 
diff --git a/shared/netcode.proto b/shared/netcode.proto
index fd30b6b..83030ca 100644
--- a/shared/netcode.proto
+++ b/shared/netcode.proto
@@ -10,7 +10,7 @@ package netcode;
 service NotifierCommunication {
   rpc Open (OpenRequest) returns (CommResponse);
   rpc Answer (AnswerRequest) returns (CommResponse);
-  rpc SendMessage (stream Message) returns (Nothing);
+  rpc SendMessage (Message) returns (Nothing);
   rpc ReceiveMessage (ReceiveRequest) returns (stream Message);
 }
 
-- 
GitLab