diff --git a/apps/kafka-integration/core/src/main/java/org/onosproject/kafkaintegration/converter/DeviceEventConverter.java b/apps/kafka-integration/core/src/main/java/org/onosproject/kafkaintegration/converter/DeviceEventConverter.java
index 6b2ee24..6a2d1f3 100644
--- a/apps/kafka-integration/core/src/main/java/org/onosproject/kafkaintegration/converter/DeviceEventConverter.java
+++ b/apps/kafka-integration/core/src/main/java/org/onosproject/kafkaintegration/converter/DeviceEventConverter.java
@@ -14,7 +14,8 @@
  */
 package org.onosproject.kafkaintegration.converter;
 
-import com.google.protobuf.GeneratedMessage;
+import com.google.protobuf.GeneratedMessageV3;
+
 import org.onosproject.event.Event;
 import org.onosproject.grpc.net.Device.DeviceCore;
 import org.onosproject.grpc.net.Device.DeviceType;
@@ -34,7 +35,7 @@
     private final Logger log = LoggerFactory.getLogger(getClass());
 
     @Override
-    public GeneratedMessage convertToProtoMessage(Event<?, ?> event) {
+    public GeneratedMessageV3 convertToProtoMessage(Event<?, ?> event) {
 
         DeviceEvent deviceEvent = (DeviceEvent) event;
 
diff --git a/apps/kafka-integration/core/src/main/java/org/onosproject/kafkaintegration/converter/EventConverter.java b/apps/kafka-integration/core/src/main/java/org/onosproject/kafkaintegration/converter/EventConverter.java
index c1e7739..3cbabc2 100644
--- a/apps/kafka-integration/core/src/main/java/org/onosproject/kafkaintegration/converter/EventConverter.java
+++ b/apps/kafka-integration/core/src/main/java/org/onosproject/kafkaintegration/converter/EventConverter.java
@@ -16,7 +16,7 @@
 
 import org.onosproject.event.Event;
 
-import com.google.protobuf.GeneratedMessage;
+import com.google.protobuf.GeneratedMessageV3;
 
 /**
  *
@@ -32,5 +32,6 @@
      * @param event ONOS Event object
      * @return converted data in protobuf format.
      */
-    GeneratedMessage convertToProtoMessage(Event<?, ?> event);
+    // FIXME reconsider return type, something similar to "OnosEvent"?
+    GeneratedMessageV3 convertToProtoMessage(Event<?, ?> event);
 }
diff --git a/apps/kafka-integration/core/src/main/java/org/onosproject/kafkaintegration/converter/LinkEventConverter.java b/apps/kafka-integration/core/src/main/java/org/onosproject/kafkaintegration/converter/LinkEventConverter.java
index febe020..913d0e5 100644
--- a/apps/kafka-integration/core/src/main/java/org/onosproject/kafkaintegration/converter/LinkEventConverter.java
+++ b/apps/kafka-integration/core/src/main/java/org/onosproject/kafkaintegration/converter/LinkEventConverter.java
@@ -25,7 +25,7 @@
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import com.google.protobuf.GeneratedMessage;
+import com.google.protobuf.GeneratedMessageV3;
 
 /**
  * Converts for ONOS Link event message to protobuf format.
@@ -35,7 +35,7 @@
     private final Logger log = LoggerFactory.getLogger(getClass());
 
     @Override
-    public GeneratedMessage convertToProtoMessage(Event<?, ?> event) {
+    public GeneratedMessageV3 convertToProtoMessage(Event<?, ?> event) {
 
         LinkEvent linkEvent = (LinkEvent) event;
 
diff --git a/apps/kafka-integration/core/src/main/java/org/onosproject/kafkaintegration/impl/KafkaPublisherManager.java b/apps/kafka-integration/core/src/main/java/org/onosproject/kafkaintegration/impl/KafkaPublisherManager.java
index 104619a..39c23f3 100644
--- a/apps/kafka-integration/core/src/main/java/org/onosproject/kafkaintegration/impl/KafkaPublisherManager.java
+++ b/apps/kafka-integration/core/src/main/java/org/onosproject/kafkaintegration/impl/KafkaPublisherManager.java
@@ -22,7 +22,7 @@
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import com.google.protobuf.GeneratedMessage;
+import com.google.protobuf.GeneratedMessageV3;
 
 /**
  * Dispatch ONOS Events to all interested Listeners.
@@ -53,7 +53,7 @@
     }
 
     @Override
-    public void publish(Type eventType, GeneratedMessage message) {
+    public void publish(Type eventType, GeneratedMessageV3 message) {
         log.debug("Dispatching ONOS Event {}", eventType);
         post(new OnosEvent(eventType, message));
     }
