Loading services/core/java/com/android/server/job/JobStore.java +11 −1 Original line number Diff line number Diff line Loading @@ -477,6 +477,9 @@ public final class JobStore { final NetworkRequest network = jobStatus.getJob().getRequiredNetwork(); out.attribute(null, "net-capabilities", Long.toString( BitUtils.packBits(network.networkCapabilities.getCapabilities()))); out.attribute(null, "net-unwanted-capabilities", Long.toString( BitUtils.packBits(network.networkCapabilities.getUnwantedCapabilities()))); out.attribute(null, "net-transport-types", Long.toString( BitUtils.packBits(network.networkCapabilities.getTransportTypes()))); } Loading Loading @@ -888,12 +891,19 @@ public final class JobStore { String val; final String netCapabilities = parser.getAttributeValue(null, "net-capabilities"); final String netUnwantedCapabilities = parser.getAttributeValue( null, "net-unwanted-capabilities"); final String netTransportTypes = parser.getAttributeValue(null, "net-transport-types"); if (netCapabilities != null && netTransportTypes != null) { final NetworkRequest request = new NetworkRequest.Builder().build(); final long unwantedCapabilities = netUnwantedCapabilities != null ? Long.parseLong(netUnwantedCapabilities) : BitUtils.packBits(request.networkCapabilities.getUnwantedCapabilities()); // We're okay throwing NFE here; caught by caller request.networkCapabilities.setCapabilities( BitUtils.unpackBits(Long.parseLong(netCapabilities))); BitUtils.unpackBits(Long.parseLong(netCapabilities)), BitUtils.unpackBits(unwantedCapabilities)); request.networkCapabilities.setTransportTypes( BitUtils.unpackBits(Long.parseLong(netTransportTypes))); jobBuilder.setRequiredNetwork(request); Loading services/tests/servicestests/src/com/android/server/job/JobStoreTest.java +4 −1 Original line number Diff line number Diff line package com.android.server.job; import static android.net.NetworkCapabilities.NET_CAPABILITY_IMS; import static android.net.NetworkCapabilities.NET_CAPABILITY_OEM_PAID; import static android.net.NetworkCapabilities.TRANSPORT_WIFI; import static org.junit.Assert.assertEquals; Loading Loading @@ -374,7 +375,9 @@ public class JobStoreTest { assertPersistedEquals(new JobInfo.Builder(0, mComponent) .setPersisted(true) .setRequiredNetwork(new NetworkRequest.Builder() .addCapability(NET_CAPABILITY_IMS).build()) .addCapability(NET_CAPABILITY_IMS) .addUnwantedCapability(NET_CAPABILITY_OEM_PAID) .build()) .build()); } Loading Loading
services/core/java/com/android/server/job/JobStore.java +11 −1 Original line number Diff line number Diff line Loading @@ -477,6 +477,9 @@ public final class JobStore { final NetworkRequest network = jobStatus.getJob().getRequiredNetwork(); out.attribute(null, "net-capabilities", Long.toString( BitUtils.packBits(network.networkCapabilities.getCapabilities()))); out.attribute(null, "net-unwanted-capabilities", Long.toString( BitUtils.packBits(network.networkCapabilities.getUnwantedCapabilities()))); out.attribute(null, "net-transport-types", Long.toString( BitUtils.packBits(network.networkCapabilities.getTransportTypes()))); } Loading Loading @@ -888,12 +891,19 @@ public final class JobStore { String val; final String netCapabilities = parser.getAttributeValue(null, "net-capabilities"); final String netUnwantedCapabilities = parser.getAttributeValue( null, "net-unwanted-capabilities"); final String netTransportTypes = parser.getAttributeValue(null, "net-transport-types"); if (netCapabilities != null && netTransportTypes != null) { final NetworkRequest request = new NetworkRequest.Builder().build(); final long unwantedCapabilities = netUnwantedCapabilities != null ? Long.parseLong(netUnwantedCapabilities) : BitUtils.packBits(request.networkCapabilities.getUnwantedCapabilities()); // We're okay throwing NFE here; caught by caller request.networkCapabilities.setCapabilities( BitUtils.unpackBits(Long.parseLong(netCapabilities))); BitUtils.unpackBits(Long.parseLong(netCapabilities)), BitUtils.unpackBits(unwantedCapabilities)); request.networkCapabilities.setTransportTypes( BitUtils.unpackBits(Long.parseLong(netTransportTypes))); jobBuilder.setRequiredNetwork(request); Loading
services/tests/servicestests/src/com/android/server/job/JobStoreTest.java +4 −1 Original line number Diff line number Diff line package com.android.server.job; import static android.net.NetworkCapabilities.NET_CAPABILITY_IMS; import static android.net.NetworkCapabilities.NET_CAPABILITY_OEM_PAID; import static android.net.NetworkCapabilities.TRANSPORT_WIFI; import static org.junit.Assert.assertEquals; Loading Loading @@ -374,7 +375,9 @@ public class JobStoreTest { assertPersistedEquals(new JobInfo.Builder(0, mComponent) .setPersisted(true) .setRequiredNetwork(new NetworkRequest.Builder() .addCapability(NET_CAPABILITY_IMS).build()) .addCapability(NET_CAPABILITY_IMS) .addUnwantedCapability(NET_CAPABILITY_OEM_PAID) .build()) .build()); } Loading