Loading services/companion/java/com/android/server/companion/CompanionDeviceManagerService.java +1 −1 Original line number Diff line number Diff line Loading @@ -900,7 +900,7 @@ public class CompanionDeviceManagerService extends SystemService { String[] args, ShellCallback callback, ResultReceiver resultReceiver) throws RemoteException { new CompanionDeviceShellCommand(CompanionDeviceManagerService.this, mAssociationStore, mDevicePresenceMonitor, mTransportManager) mDevicePresenceMonitor, mTransportManager, mSystemDataTransferRequestStore) .exec(this, in, out, err, args, callback, resultReceiver); } Loading services/companion/java/com/android/server/companion/CompanionDeviceShellCommand.java +28 −2 Original line number Diff line number Diff line Loading @@ -17,10 +17,12 @@ package com.android.server.companion; import android.companion.AssociationInfo; import android.companion.datatransfer.PermissionSyncRequest; import android.net.MacAddress; import android.os.Binder; import android.os.ShellCommand; import com.android.server.companion.datatransfer.SystemDataTransferRequestStore; import com.android.server.companion.presence.CompanionDevicePresenceMonitor; import com.android.server.companion.transport.CompanionTransportManager; Loading @@ -35,14 +37,18 @@ class CompanionDeviceShellCommand extends ShellCommand { private final CompanionDevicePresenceMonitor mDevicePresenceMonitor; private final CompanionTransportManager mTransportManager; private final SystemDataTransferRequestStore mSystemDataTransferRequestStore; CompanionDeviceShellCommand(CompanionDeviceManagerService service, AssociationStore associationStore, CompanionDevicePresenceMonitor devicePresenceMonitor, CompanionTransportManager transportManager) { CompanionTransportManager transportManager, SystemDataTransferRequestStore systemDataTransferRequestStore) { mService = service; mAssociationStore = associationStore; mDevicePresenceMonitor = devicePresenceMonitor; mTransportManager = transportManager; mSystemDataTransferRequestStore = systemDataTransferRequestStore; } @Override Loading @@ -59,7 +65,7 @@ class CompanionDeviceShellCommand extends ShellCommand { // TODO(b/212535524): use AssociationInfo.toShortString(), once it's not // longer referenced in tests. out.println(association.getPackageName() + " " + association.getDeviceMacAddress()); + association.getDeviceMacAddress() + " " + association.getId()); } } break; Loading Loading @@ -117,6 +123,17 @@ class CompanionDeviceShellCommand extends ShellCommand { mTransportManager.createDummyTransport(associationId); break; case "allow-permission-sync": { int userId = getNextIntArgRequired(); associationId = getNextIntArgRequired(); boolean enabled = getNextBooleanArgRequired(); PermissionSyncRequest request = new PermissionSyncRequest(associationId); request.setUserId(userId); request.setUserConsented(enabled); mSystemDataTransferRequestStore.writeRequest(userId, request); } break; default: return handleDefaultCommands(cmd); } Loading @@ -134,6 +151,15 @@ class CompanionDeviceShellCommand extends ShellCommand { return Integer.parseInt(getNextArgRequired()); } private boolean getNextBooleanArgRequired() { String arg = getNextArgRequired(); if ("true".equalsIgnoreCase(arg) || "false".equalsIgnoreCase(arg)) { return Boolean.parseBoolean(arg); } else { throw new IllegalArgumentException("Expected a boolean argument but was: " + arg); } } @Override public void onHelp() { PrintWriter pw = getOutPrintWriter(); Loading services/companion/java/com/android/server/companion/datatransfer/SystemDataTransferRequestStore.java +3 −1 Original line number Diff line number Diff line Loading @@ -120,12 +120,14 @@ public class SystemDataTransferRequestStore { return requestsByAssociationId; } void writeRequest(@UserIdInt int userId, SystemDataTransferRequest request) { public void writeRequest(@UserIdInt int userId, SystemDataTransferRequest request) { Slog.i(LOG_TAG, "Writing request=" + request + " to store."); ArrayList<SystemDataTransferRequest> cachedRequests; synchronized (mLock) { // Write to cache cachedRequests = readRequestsFromCache(userId); cachedRequests.removeIf( request1 -> request1.getAssociationId() == request.getAssociationId()); cachedRequests.add(request); mCachedPerUser.set(userId, cachedRequests); } Loading Loading
services/companion/java/com/android/server/companion/CompanionDeviceManagerService.java +1 −1 Original line number Diff line number Diff line Loading @@ -900,7 +900,7 @@ public class CompanionDeviceManagerService extends SystemService { String[] args, ShellCallback callback, ResultReceiver resultReceiver) throws RemoteException { new CompanionDeviceShellCommand(CompanionDeviceManagerService.this, mAssociationStore, mDevicePresenceMonitor, mTransportManager) mDevicePresenceMonitor, mTransportManager, mSystemDataTransferRequestStore) .exec(this, in, out, err, args, callback, resultReceiver); } Loading
services/companion/java/com/android/server/companion/CompanionDeviceShellCommand.java +28 −2 Original line number Diff line number Diff line Loading @@ -17,10 +17,12 @@ package com.android.server.companion; import android.companion.AssociationInfo; import android.companion.datatransfer.PermissionSyncRequest; import android.net.MacAddress; import android.os.Binder; import android.os.ShellCommand; import com.android.server.companion.datatransfer.SystemDataTransferRequestStore; import com.android.server.companion.presence.CompanionDevicePresenceMonitor; import com.android.server.companion.transport.CompanionTransportManager; Loading @@ -35,14 +37,18 @@ class CompanionDeviceShellCommand extends ShellCommand { private final CompanionDevicePresenceMonitor mDevicePresenceMonitor; private final CompanionTransportManager mTransportManager; private final SystemDataTransferRequestStore mSystemDataTransferRequestStore; CompanionDeviceShellCommand(CompanionDeviceManagerService service, AssociationStore associationStore, CompanionDevicePresenceMonitor devicePresenceMonitor, CompanionTransportManager transportManager) { CompanionTransportManager transportManager, SystemDataTransferRequestStore systemDataTransferRequestStore) { mService = service; mAssociationStore = associationStore; mDevicePresenceMonitor = devicePresenceMonitor; mTransportManager = transportManager; mSystemDataTransferRequestStore = systemDataTransferRequestStore; } @Override Loading @@ -59,7 +65,7 @@ class CompanionDeviceShellCommand extends ShellCommand { // TODO(b/212535524): use AssociationInfo.toShortString(), once it's not // longer referenced in tests. out.println(association.getPackageName() + " " + association.getDeviceMacAddress()); + association.getDeviceMacAddress() + " " + association.getId()); } } break; Loading Loading @@ -117,6 +123,17 @@ class CompanionDeviceShellCommand extends ShellCommand { mTransportManager.createDummyTransport(associationId); break; case "allow-permission-sync": { int userId = getNextIntArgRequired(); associationId = getNextIntArgRequired(); boolean enabled = getNextBooleanArgRequired(); PermissionSyncRequest request = new PermissionSyncRequest(associationId); request.setUserId(userId); request.setUserConsented(enabled); mSystemDataTransferRequestStore.writeRequest(userId, request); } break; default: return handleDefaultCommands(cmd); } Loading @@ -134,6 +151,15 @@ class CompanionDeviceShellCommand extends ShellCommand { return Integer.parseInt(getNextArgRequired()); } private boolean getNextBooleanArgRequired() { String arg = getNextArgRequired(); if ("true".equalsIgnoreCase(arg) || "false".equalsIgnoreCase(arg)) { return Boolean.parseBoolean(arg); } else { throw new IllegalArgumentException("Expected a boolean argument but was: " + arg); } } @Override public void onHelp() { PrintWriter pw = getOutPrintWriter(); Loading
services/companion/java/com/android/server/companion/datatransfer/SystemDataTransferRequestStore.java +3 −1 Original line number Diff line number Diff line Loading @@ -120,12 +120,14 @@ public class SystemDataTransferRequestStore { return requestsByAssociationId; } void writeRequest(@UserIdInt int userId, SystemDataTransferRequest request) { public void writeRequest(@UserIdInt int userId, SystemDataTransferRequest request) { Slog.i(LOG_TAG, "Writing request=" + request + " to store."); ArrayList<SystemDataTransferRequest> cachedRequests; synchronized (mLock) { // Write to cache cachedRequests = readRequestsFromCache(userId); cachedRequests.removeIf( request1 -> request1.getAssociationId() == request.getAssociationId()); cachedRequests.add(request); mCachedPerUser.set(userId, cachedRequests); } Loading