aboutsummaryrefslogtreecommitdiff
path: root/car-lib
diff options
context:
space:
mode:
Diffstat (limited to 'car-lib')
-rw-r--r--car-lib/src/android/car/vms/IVmsPublisherService.aidl2
-rw-r--r--car-lib/src/android/car/vms/VmsLayerDependency.java13
-rw-r--r--car-lib/src/android/car/vms/VmsLayersOffering.java13
-rw-r--r--car-lib/src/android/car/vms/VmsPublisherClientService.java5
4 files changed, 21 insertions, 12 deletions
diff --git a/car-lib/src/android/car/vms/IVmsPublisherService.aidl b/car-lib/src/android/car/vms/IVmsPublisherService.aidl
index 5e210fe703..f122ec6a21 100644
--- a/car-lib/src/android/car/vms/IVmsPublisherService.aidl
+++ b/car-lib/src/android/car/vms/IVmsPublisherService.aidl
@@ -31,7 +31,7 @@ interface IVmsPublisherService {
oneway void publish(in IBinder token, int layer, int version, in byte[] message) = 0;
/**
- * Returns whether the layer/version has any clients subscribed to it.
+ * Returns the list of VmsLayers that has any clients subscribed to it.
*/
List<VmsLayer> getSubscriptions() = 1;
diff --git a/car-lib/src/android/car/vms/VmsLayerDependency.java b/car-lib/src/android/car/vms/VmsLayerDependency.java
index 254330e3a3..a6c513d0e5 100644
--- a/car-lib/src/android/car/vms/VmsLayerDependency.java
+++ b/car-lib/src/android/car/vms/VmsLayerDependency.java
@@ -20,6 +20,7 @@ import android.car.annotation.FutureFeature;
import android.os.Parcel;
import android.os.Parcelable;
import java.util.ArrayList;
+import java.util.Collections;
import java.util.List;
/**
@@ -30,14 +31,14 @@ import java.util.List;
@FutureFeature
public final class VmsLayerDependency implements Parcelable {
private final VmsLayer mLayer;
- private final List<VmsLayer> mDependency = new ArrayList<>();
+ private final List<VmsLayer> mDependency;
/**
* Construct a dependency for layer on other layers.
*/
public VmsLayerDependency(VmsLayer layer, List<VmsLayer> dependencies) {
mLayer = layer;
- mDependency.addAll(dependencies);
+ mDependency = Collections.unmodifiableList(dependencies);
}
/**
@@ -45,6 +46,7 @@ public final class VmsLayerDependency implements Parcelable {
*/
public VmsLayerDependency(VmsLayer layer) {
mLayer = layer;
+ mDependency = Collections.emptyList();
}
/**
@@ -62,7 +64,7 @@ public final class VmsLayerDependency implements Parcelable {
* Returns the dependencies.
*/
public List<VmsLayer> getDependencies() {
- return new ArrayList<VmsLayer>(mDependency);
+ return mDependency;
}
public static final Parcelable.Creator<VmsLayerDependency> CREATOR = new
@@ -88,7 +90,8 @@ public final class VmsLayerDependency implements Parcelable {
private VmsLayerDependency(Parcel in) {
mLayer = in.readParcelable(VmsLayer.class.getClassLoader());
- in.readParcelableList(mDependency, VmsLayer.class.getClassLoader());
-
+ List<VmsLayer> dependency = new ArrayList<>();
+ in.readParcelableList(dependency, VmsLayer.class.getClassLoader());
+ mDependency = Collections.unmodifiableList(dependency);
}
} \ No newline at end of file
diff --git a/car-lib/src/android/car/vms/VmsLayersOffering.java b/car-lib/src/android/car/vms/VmsLayersOffering.java
index e3691bcc06..12b3dd30b2 100644
--- a/car-lib/src/android/car/vms/VmsLayersOffering.java
+++ b/car-lib/src/android/car/vms/VmsLayersOffering.java
@@ -20,6 +20,7 @@ import android.car.annotation.FutureFeature;
import android.os.Parcel;
import android.os.Parcelable;
import java.util.ArrayList;
+import java.util.Collections;
import java.util.List;
/**
@@ -30,13 +31,17 @@ import java.util.List;
@FutureFeature
public final class VmsLayersOffering implements Parcelable {
- private final List<VmsLayerDependency> mDependencies = new ArrayList<>();
+ private final List<VmsLayerDependency> mDependencies;
+
+ public VmsLayersOffering(List<VmsLayerDependency> dependencies) {
+ mDependencies = Collections.unmodifiableList(dependencies);
+ }
/**
* Returns the dependencies.
*/
public List<VmsLayerDependency> getDependencies() {
- return new ArrayList<VmsLayerDependency>(mDependencies);
+ return mDependencies;
}
public static final Parcelable.Creator<VmsLayersOffering> CREATOR = new
@@ -60,6 +65,8 @@ public final class VmsLayersOffering implements Parcelable {
}
private VmsLayersOffering(Parcel in) {
- in.readParcelableList(mDependencies, VmsLayerDependency.class.getClassLoader());
+ List<VmsLayerDependency> dependencies = new ArrayList<>();
+ in.readParcelableList(dependencies, VmsLayerDependency.class.getClassLoader());
+ mDependencies = Collections.unmodifiableList(dependencies);
}
} \ No newline at end of file
diff --git a/car-lib/src/android/car/vms/VmsPublisherClientService.java b/car-lib/src/android/car/vms/VmsPublisherClientService.java
index 7cda632e8a..c1ef1dd06c 100644
--- a/car-lib/src/android/car/vms/VmsPublisherClientService.java
+++ b/car-lib/src/android/car/vms/VmsPublisherClientService.java
@@ -58,7 +58,7 @@ public abstract class VmsPublisherClientService extends Service {
private final VmsPublisherClientBinder mVmsPublisherClient = new VmsPublisherClientBinder(this);
private volatile IVmsPublisherService mVmsPublisherService = null;
@GuardedBy("mLock")
- private volatile IBinder mToken = null;
+ private IBinder mToken = null;
@Override
public final IBinder onBind(Intent intent) {
@@ -122,8 +122,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, layerId, layerVersion, payload);
return true;
} catch (RemoteException e) {
Log.e(TAG, "unable to publish message: " + payload, e);