diff options
| -rw-r--r-- | packages/MtpDocumentsProvider/src/com/android/mtp/MtpManager.java | 5 | ||||
| -rw-r--r-- | packages/MtpDocumentsProvider/src/com/android/mtp/PipeManager.java | 10 |
2 files changed, 8 insertions, 7 deletions
diff --git a/packages/MtpDocumentsProvider/src/com/android/mtp/MtpManager.java b/packages/MtpDocumentsProvider/src/com/android/mtp/MtpManager.java index f266592ee5c9..141d118b3486 100644 --- a/packages/MtpDocumentsProvider/src/com/android/mtp/MtpManager.java +++ b/packages/MtpDocumentsProvider/src/com/android/mtp/MtpManager.java @@ -35,7 +35,7 @@ class MtpManager { private final UsbManager mManager; // TODO: Save and restore the set of opened device. - private final SparseArray<MtpDevice> mDevices = new SparseArray<MtpDevice>(); + private final SparseArray<MtpDevice> mDevices = new SparseArray<>(); MtpManager(Context context) { mManager = (UsbManager)context.getSystemService(Context.USB_SERVICE); @@ -142,7 +142,8 @@ class MtpManager { synchronized void importFile(int deviceId, int objectHandle, ParcelFileDescriptor target) throws IOException { - throw new UnsupportedOperationException("Importing files is not supported."); + final MtpDevice device = getDevice(deviceId); + device.importFile(objectHandle, target); } private MtpDevice getDevice(int deviceId) throws IOException { diff --git a/packages/MtpDocumentsProvider/src/com/android/mtp/PipeManager.java b/packages/MtpDocumentsProvider/src/com/android/mtp/PipeManager.java index 7f498f5fae23..ba13b31f7a1f 100644 --- a/packages/MtpDocumentsProvider/src/com/android/mtp/PipeManager.java +++ b/packages/MtpDocumentsProvider/src/com/android/mtp/PipeManager.java @@ -47,12 +47,12 @@ class PipeManager { } private static abstract class Task implements Runnable { - protected final MtpManager mModel; + protected final MtpManager mManager; protected final Identifier mIdentifier; protected final ParcelFileDescriptor[] mDescriptors; - Task(MtpManager model, Identifier identifier) throws IOException { - mModel = model; + Task(MtpManager manager, Identifier identifier) throws IOException { + mManager = manager; mIdentifier = identifier; mDescriptors = ParcelFileDescriptor.createReliablePipe(); } @@ -70,7 +70,7 @@ class PipeManager { @Override public void run() { try { - mModel.importFile( + mManager.importFile( mIdentifier.mDeviceId, mIdentifier.mObjectHandle, mDescriptors[1]); mDescriptors[1].close(); } catch (IOException error) { @@ -94,7 +94,7 @@ class PipeManager { try (final ParcelFileDescriptor.AutoCloseOutputStream stream = new ParcelFileDescriptor.AutoCloseOutputStream(mDescriptors[1])) { try { - stream.write(mModel.getThumbnail( + stream.write(mManager.getThumbnail( mIdentifier.mDeviceId, mIdentifier.mObjectHandle)); } catch (IOException error) { mDescriptors[1].closeWithError("Failed to stream a thumbnail."); |