aboutsummaryrefslogtreecommitdiff
path: root/car-lib/src/android
diff options
context:
space:
mode:
authorAntonio Cortes <antoniocortes@google.com>2017-03-22 13:00:02 -0700
committerAntonio Cortes <antoniocortes@google.com>2017-03-23 08:44:51 -0700
commit01a60395cdba8df0e306d1f692d4677799485b6f (patch)
tree84bf0ae9b79e3644b61c6cc76914f6b190d0e739 /car-lib/src/android
parent7837d8d872331dce3c68facc81affd684db929bf (diff)
downloadCar-01a60395cdba8df0e306d1f692d4677799485b6f.tar.gz
Updating VMS interfaces to use VmsLayer.
Test: runtest -x packages/services/Car/tests/carservice_test/src/com/android/car/test/VmsPublisherClientServiceTest.java Test: runtest -x packages/services/Car/tests/carservice_test/src/com/android/car/test/VmsPublisherSubscriberTest.java Test: runtest -x packages/services/Car/tests/carservice_test/src/com/android/car/test/VmsSubscriberManagerTest.java Test: runtest -x packages/services/Car/tests/carservice_unit_test/src/com/android/car/VmsRoutingTest.java Bug: 36214569 Change-Id: Iee5a0595ba5bb175d9b1b6189d15902fd222a967
Diffstat (limited to 'car-lib/src/android')
-rw-r--r--car-lib/src/android/car/vms/IVmsPublisherService.aidl2
-rw-r--r--car-lib/src/android/car/vms/IVmsSubscriberClient.aidl2
-rw-r--r--car-lib/src/android/car/vms/IVmsSubscriberService.aidl6
-rw-r--r--car-lib/src/android/car/vms/VmsPublisherClientService.java9
-rw-r--r--car-lib/src/android/car/vms/VmsSubscriberManager.java50
5 files changed, 29 insertions, 40 deletions
diff --git a/car-lib/src/android/car/vms/IVmsPublisherService.aidl b/car-lib/src/android/car/vms/IVmsPublisherService.aidl
index f122ec6a21..e7464579cd 100644
--- a/car-lib/src/android/car/vms/IVmsPublisherService.aidl
+++ b/car-lib/src/android/car/vms/IVmsPublisherService.aidl
@@ -28,7 +28,7 @@ interface IVmsPublisherService {
/**
* Client call to publish a message.
*/
- oneway void publish(in IBinder token, int layer, int version, in byte[] message) = 0;
+ oneway void publish(in IBinder token, in VmsLayer layer, in byte[] message) = 0;
/**
* Returns the list of VmsLayers that has any clients subscribed to it.
diff --git a/car-lib/src/android/car/vms/IVmsSubscriberClient.aidl b/car-lib/src/android/car/vms/IVmsSubscriberClient.aidl
index 8a0f546e82..79c88ac46e 100644
--- a/car-lib/src/android/car/vms/IVmsSubscriberClient.aidl
+++ b/car-lib/src/android/car/vms/IVmsSubscriberClient.aidl
@@ -25,7 +25,7 @@ oneway interface IVmsSubscriberClient {
/**
* A VmsService uses this callback to pass messages to subscribers.
*/
- void onVmsMessageReceived(in int layerId, in int layerVersion, in byte[] payload) = 0;
+ void onVmsMessageReceived(in VmsLayer layer, in byte[] payload) = 0;
void onLayersAvailabilityChange(in List<VmsLayer> availableLayers) = 1;
}
diff --git a/car-lib/src/android/car/vms/IVmsSubscriberService.aidl b/car-lib/src/android/car/vms/IVmsSubscriberService.aidl
index 40ee67fc25..236ae5a94c 100644
--- a/car-lib/src/android/car/vms/IVmsSubscriberService.aidl
+++ b/car-lib/src/android/car/vms/IVmsSubscriberService.aidl
@@ -28,8 +28,7 @@ interface IVmsSubscriberService {
*/
void addVmsSubscriberClientListener(
in IVmsSubscriberClient listener,
- int layer,
- int version) = 0;
+ in VmsLayer layer) = 0;
/**
* Subscribes the listener to receive messages from all published layer/version. The
@@ -43,8 +42,7 @@ interface IVmsSubscriberService {
   */
void removeVmsSubscriberClientListener(
in IVmsSubscriberClient listener,
- int layer,
- int version) = 2;
+ in VmsLayer layer) = 2;
/**
   * Tells the VmsSubscriberService a passive client unsubscribes. This will not unsubscribe
diff --git a/car-lib/src/android/car/vms/VmsPublisherClientService.java b/car-lib/src/android/car/vms/VmsPublisherClientService.java
index c1ef1dd06c..5fae38c687 100644
--- a/car-lib/src/android/car/vms/VmsPublisherClientService.java
+++ b/car-lib/src/android/car/vms/VmsPublisherClientService.java
@@ -101,14 +101,13 @@ public abstract class VmsPublisherClientService extends Service {
/**
* Uses the VmsPublisherService binder to publish messages.
*
- * @param layerId the layer to publish to.
- * @param layerVersion the layer's version to publish to.
+ * @param layer the layer to publish to.
* @param payload the message to be sent.
* @return if the call to the method VmsPublisherService.publish was successful.
*/
- public final boolean publish(int layerId, int layerVersion, byte[] payload) {
+ public final boolean publish(VmsLayer layer, byte[] payload) {
if (DBG) {
- Log.d(TAG, "Publishing for layer ID: " + layerId + " Version: " + layerVersion);
+ Log.d(TAG, "Publishing for layer : " + layer);
}
if (mVmsPublisherService == null) {
throw new IllegalStateException("VmsPublisherService not set.");
@@ -122,7 +121,7 @@ public abstract class VmsPublisherClientService extends Service {
throw new IllegalStateException("VmsPublisherService does not have a valid token.");
}
try {
- mVmsPublisherService.publish(token, layerId, layerVersion, payload);
+ mVmsPublisherService.publish(token, layer, payload);
return true;
} catch (RemoteException e) {
Log.e(TAG, "unable to publish message: " + payload, e);
diff --git a/car-lib/src/android/car/vms/VmsSubscriberManager.java b/car-lib/src/android/car/vms/VmsSubscriberManager.java
index 0bdab95c51..d0b8c624c8 100644
--- a/car-lib/src/android/car/vms/VmsSubscriberManager.java
+++ b/car-lib/src/android/car/vms/VmsSubscriberManager.java
@@ -53,7 +53,7 @@ public final class VmsSubscriberManager implements CarManagerBase {
/** Interface exposed to VMS subscribers: it is a wrapper of IVmsSubscriberClient. */
public interface VmsSubscriberClientListener {
/** Called when the property is updated */
- void onVmsMessageReceived(int layerId, int layerVersion, byte[] payload);
+ void onVmsMessageReceived(VmsLayer layer, byte[] payload);
/** Called when layers availability change */
void onLayersAvailabilityChange(List<VmsLayer> availableLayers);
@@ -84,8 +84,7 @@ public final class VmsSubscriberManager implements CarManagerBase {
VmsDataMessage vmsDataMessage = (VmsDataMessage) msg.obj;
// Dispatch the parsed message
- mgr.dispatchOnReceiveMessage(vmsDataMessage.getLayerId(),
- vmsDataMessage.getLayerVersion(),
+ mgr.dispatchOnReceiveMessage(vmsDataMessage.getLayer(),
vmsDataMessage.getPayload());
}
break;
@@ -111,10 +110,10 @@ public final class VmsSubscriberManager implements CarManagerBase {
mHandler = new VmsEventHandler(this, handler.getLooper());
mIListener = new IVmsSubscriberClient.Stub() {
@Override
- public void onVmsMessageReceived(int layerId, int layerVersion, byte[] payload)
+ public void onVmsMessageReceived(VmsLayer layer, byte[] payload)
throws RemoteException {
// Create the data message
- VmsDataMessage vmsDataMessage = new VmsDataMessage(layerId, layerVersion, payload);
+ VmsDataMessage vmsDataMessage = new VmsDataMessage(layer, payload);
mHandler.sendMessage(
mHandler.obtainMessage(
VmsEventHandler.ON_RECEIVE_MESSAGE_EVENT,
@@ -163,16 +162,15 @@ public final class VmsSubscriberManager implements CarManagerBase {
}
/**
- * Subscribes to listen to the layer/version specified.
+ * Subscribes to listen to the layer specified.
*
- * @param layer the layer id to subscribe to.
- * @param version the layer version to subscribe to.
+ * @param layer the layer to subscribe to.
* @throws IllegalStateException if the listener was not set via {@link #setListener}.
*/
- public void subscribe(int layer, int version)
+ public void subscribe(VmsLayer layer)
throws CarNotConnectedException {
if (DBG) {
- Log.d(TAG, "Subscribing to layer: " + layer + ", version: " + version);
+ Log.d(TAG, "Subscribing to layer: " + layer);
}
VmsSubscriberClientListener listener;
synchronized (mListenerLock) {
@@ -184,7 +182,7 @@ public final class VmsSubscriberManager implements CarManagerBase {
throw new IllegalStateException("Listener was not set.");
}
try {
- mVmsSubscriberService.addVmsSubscriberClientListener(mIListener, layer, version);
+ mVmsSubscriberService.addVmsSubscriberClientListener(mIListener, layer);
} catch (RemoteException e) {
Log.e(TAG, "Could not connect: ", e);
throw new CarNotConnectedException(e);
@@ -220,13 +218,12 @@ public final class VmsSubscriberManager implements CarManagerBase {
/**
* Unsubscribes from the layer/version specified.
*
- * @param layer the layer id to unsubscribe from.
- * @param version the layer version to unsubscribe from.
+ * @param layer the layer to unsubscribe from.
* @throws IllegalStateException if the listener was not set via {@link #setListener}.
*/
- public void unsubscribe(int layer, int version) {
+ public void unsubscribe(VmsLayer layer) {
if (DBG) {
- Log.d(TAG, "Unsubscribing from layer: " + layer + ", version: " + version);
+ Log.d(TAG, "Unsubscribing from layer: " + layer);
}
VmsSubscriberClientListener listener;
synchronized (mListenerLock) {
@@ -238,7 +235,7 @@ public final class VmsSubscriberManager implements CarManagerBase {
throw new IllegalStateException("Listener was not set.");
}
try {
- mVmsSubscriberService.removeVmsSubscriberClientListener(mIListener, layer, version);
+ mVmsSubscriberService.removeVmsSubscriberClientListener(mIListener, layer);
} catch (RemoteException e) {
Log.e(TAG, "Failed to unregister subscriber", e);
// ignore
@@ -247,7 +244,7 @@ public final class VmsSubscriberManager implements CarManagerBase {
}
}
- private void dispatchOnReceiveMessage(int layerId, int layerVersion, byte[] payload) {
+ private void dispatchOnReceiveMessage(VmsLayer layer, byte[] payload) {
VmsSubscriberClientListener listener;
synchronized (mListenerLock) {
listener = mListener;
@@ -256,7 +253,7 @@ public final class VmsSubscriberManager implements CarManagerBase {
Log.e(TAG, "Listener died, not dispatching event.");
return;
}
- listener.onVmsMessageReceived(layerId, layerVersion, payload);
+ listener.onVmsMessageReceived(layer, payload);
}
private void dispatchOnAvailabilityChangeMessage(List<VmsLayer> availableLayers) {
@@ -278,21 +275,16 @@ public final class VmsSubscriberManager implements CarManagerBase {
}
private static final class VmsDataMessage {
- private int mLayerId;
- private int mLayerVersion;
- private byte[] mPayload;
+ private final VmsLayer mLayer;
+ private final byte[] mPayload;
- public VmsDataMessage(int layerId, int layerVersion, byte[] payload) {
- mLayerId = layerId;
- mLayerVersion = layerVersion;
+ public VmsDataMessage(VmsLayer layer, byte[] payload) {
+ mLayer = layer;
mPayload = payload;
}
- public int getLayerId() {
- return mLayerId;
- }
- public int getLayerVersion() {
- return mLayerVersion;
+ public VmsLayer getLayer() {
+ return mLayer;
}
public byte[] getPayload() {
return mPayload;