Deprecate NavigationRenderer#onEvent() and androidx.car_cluster
am: 973985e3d0

Change-Id: I53bcea1ac059e186cb37b813621c5a195f8b15ff
diff --git a/Android.mk b/Android.mk
index 8da51c3..ef92d7e 100644
--- a/Android.mk
+++ b/Android.mk
@@ -36,8 +36,7 @@
 LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
 
 LOCAL_STATIC_JAVA_LIBRARIES := \
-    android.car.cluster.navigation \
-    androidx.car_car-cluster
+    android.car.cluster.navigation
 
 LOCAL_JAVA_LIBRARIES += android.car
 LOCAL_STATIC_ANDROID_LIBRARIES += \
diff --git a/src/android/car/cluster/ClusterRenderingService.java b/src/android/car/cluster/ClusterRenderingService.java
index 5770773..f27b036 100644
--- a/src/android/car/cluster/ClusterRenderingService.java
+++ b/src/android/car/cluster/ClusterRenderingService.java
@@ -40,8 +40,6 @@
 import android.view.InputDevice;
 import android.view.KeyEvent;
 
-import androidx.versionedparcelable.ParcelUtils;
-
 import com.google.protobuf.InvalidProtocolBufferException;
 
 import java.io.FileDescriptor;
@@ -190,39 +188,27 @@
             }
 
             @Override
-            public void onEvent(int eventType, Bundle bundle) {
+            public void onNavigationStateChanged(Bundle bundle) {
                 StringBuilder bundleSummary = new StringBuilder();
-                if (eventType == NAV_STATE_EVENT_ID) {
-                    // Required to prevent backwards compatibility crash with old map providers
-                    // sending androidx.versionedparcelables
-                    bundle.setClassLoader(ParcelUtils.class.getClassLoader());
-                    
-                    // Attempt to read proto byte array
-                    byte[] protoBytes = bundle.getByteArray(NAV_STATE_PROTO_BUNDLE_KEY);
-                    if (protoBytes != null) {
-                        try {
-                            NavigationStateProto navState = NavigationStateProto.parseFrom(
-                                    protoBytes);
-                            bundleSummary.append(navState.toString());
 
-                            // Update clients
-                            broadcastClientEvent(
-                                    client -> client.onNavigationStateChange(navState));
-                        } catch (InvalidProtocolBufferException e) {
-                            Log.e(TAG, "Error parsing navigation state proto", e);
-                        }
-                    } else {
-                        Log.e(TAG, "Received nav state byte array is null");
+                // Attempt to read proto byte array
+                byte[] protoBytes = bundle.getByteArray(NAV_STATE_PROTO_BUNDLE_KEY);
+                if (protoBytes != null) {
+                    try {
+                        NavigationStateProto navState = NavigationStateProto.parseFrom(
+                                protoBytes);
+                        bundleSummary.append(navState.toString());
+
+                        // Update clients
+                        broadcastClientEvent(
+                                client -> client.onNavigationStateChange(navState));
+                    } catch (InvalidProtocolBufferException e) {
+                        Log.e(TAG, "Error parsing navigation state proto", e);
                     }
                 } else {
-                    for (String key : bundle.keySet()) {
-                        bundleSummary.append(key);
-                        bundleSummary.append("=");
-                        bundleSummary.append(bundle.get(key));
-                        bundleSummary.append(" ");
-                    }
+                    Log.e(TAG, "Received nav state byte array is null");
                 }
-                Log.d(TAG, "onEvent(" + eventType + ", " + bundleSummary + ")");
+                Log.d(TAG, "onNavigationStateChanged(" + bundleSummary + ")");
             }
         };
 
diff --git a/src/android/car/cluster/ImageResolver.java b/src/android/car/cluster/ImageResolver.java
index 45fcf31..5053d67 100644
--- a/src/android/car/cluster/ImageResolver.java
+++ b/src/android/car/cluster/ImageResolver.java
@@ -18,7 +18,6 @@
 import android.annotation.NonNull;
 import android.annotation.Nullable;
 import android.car.cluster.navigation.NavigationState.ImageReference;
-import android.car.cluster.renderer.InvalidSizeException;
 import android.graphics.Bitmap;
 import android.graphics.Point;
 import android.net.Uri;
@@ -45,7 +44,7 @@
         /**
          * Returns a {@link Bitmap} given a request Uri and dimensions
          */
-        Bitmap getBitmap(Uri uri, int width, int height) throws InvalidSizeException;
+        Bitmap getBitmap(Uri uri, int width, int height) throws IllegalArgumentException;
     }
 
     /**
@@ -82,7 +81,7 @@
             Bitmap bitmap = null;
             try {
                 bitmap = mFetcher.getBitmap(uri, adjusted.x, adjusted.y);
-            } catch (InvalidSizeException e) {
+            } catch (IllegalArgumentException e) {
                 Log.e(TAG, "Bitmap must have positive width and height");
             }
             if (bitmap == null) {
diff --git a/src/android/car/cluster/LoggingClusterRenderingService.java b/src/android/car/cluster/LoggingClusterRenderingService.java
index 89990f9..dfed06c 100644
--- a/src/android/car/cluster/LoggingClusterRenderingService.java
+++ b/src/android/car/cluster/LoggingClusterRenderingService.java
@@ -15,6 +15,7 @@
  */
 package android.car.cluster;
 
+import android.car.cluster.navigation.NavigationState.NavigationStateProto;
 import android.car.cluster.renderer.InstrumentClusterRenderingService;
 import android.car.cluster.renderer.NavigationRenderer;
 import android.car.navigation.CarNavigationInstrumentCluster;
@@ -32,7 +33,6 @@
 public class LoggingClusterRenderingService extends InstrumentClusterRenderingService {
     private static final String TAG = LoggingClusterRenderingService.class.getSimpleName();
     private static final String NAV_STATE_PROTO_BUNDLE_KEY = "navstate2";
-    private static final int NAV_STATE_EVENT_ID = 1;
 
     @Override
     public NavigationRenderer getNavigationRenderer() {
@@ -48,39 +48,29 @@
             }
 
             @Override
-            public void onEvent(int eventType, Bundle bundle) {
+            public void onNavigationStateChanged(Bundle bundle) {
                 StringBuilder bundleSummary = new StringBuilder();
-                if (eventType == NAV_STATE_EVENT_ID) {
-                    // Attempt to read proto byte array
-                    byte[] protoBytes = bundle.getByteArray(NAV_STATE_PROTO_BUNDLE_KEY);
-                    if (protoBytes != null) {
-                        try {
-                            android.car.cluster.navigation.NavigationState.NavigationStateProto
-                                    navState =
-                                    android.car.cluster.navigation.NavigationState.NavigationStateProto.parseFrom(
-                                            protoBytes);
-                            bundleSummary.append(navState.toString());
 
-                            // Sending broadcast for testing.
-                            Intent intent = new Intent(
-                                    "android.car.cluster.NAVIGATION_STATE_UPDATE");
-                            intent.putExtra(NAV_STATE_PROTO_BUNDLE_KEY, bundle);
-                            sendBroadcastAsUser(intent, UserHandle.ALL);
-                        } catch (InvalidProtocolBufferException e) {
-                            Log.e(TAG, "Error parsing navigation state proto", e);
-                        }
-                    } else {
-                        Log.e(TAG, "Received nav state byte array is null");
+                // Attempt to read proto byte array
+                byte[] protoBytes = bundle.getByteArray(NAV_STATE_PROTO_BUNDLE_KEY);
+                if (protoBytes != null) {
+                    try {
+                        NavigationStateProto navState = NavigationStateProto.parseFrom(protoBytes);
+                        bundleSummary.append(navState.toString());
+
+                        // Sending broadcast for testing.
+                        Intent intent = new Intent(
+                                "android.car.cluster.NAVIGATION_STATE_UPDATE");
+                        intent.putExtra(NAV_STATE_PROTO_BUNDLE_KEY, bundle);
+                        sendBroadcastAsUser(intent, UserHandle.ALL);
+                    } catch (InvalidProtocolBufferException e) {
+                        Log.e(TAG, "Error parsing navigation state proto", e);
                     }
                 } else {
-                    for (String key : bundle.keySet()) {
-                        bundleSummary.append(key);
-                        bundleSummary.append("=");
-                        bundleSummary.append(bundle.get(key));
-                        bundleSummary.append(" ");
-                    }
+                    Log.e(TAG, "Received nav state byte array is null");
                 }
-                Log.i(TAG, "onEvent(" + eventType + ", " + bundleSummary + ")");
+
+                Log.i(TAG, "onEvent(" + bundleSummary + ")");
             }
         };