package com.github.mjdev.libaums.usb;

import android.hardware.usb.UsbDeviceConnection;
import android.hardware.usb.UsbEndpoint;
import java.io.IOException;
import java.nio.ByteBuffer;

/* JADX INFO: loaded from: classes.dex */
class JellyBeanMr2Communication implements UsbCommunication {
    private UsbDeviceConnection deviceConnection;
    private UsbEndpoint inEndpoint;
    private UsbEndpoint outEndpoint;

    JellyBeanMr2Communication(UsbDeviceConnection usbDeviceConnection, UsbEndpoint usbEndpoint, UsbEndpoint usbEndpoint2) {
        this.deviceConnection = usbDeviceConnection;
        this.outEndpoint = usbEndpoint;
        this.inEndpoint = usbEndpoint2;
    }

    @Override // com.github.mjdev.libaums.usb.UsbCommunication
    public int bulkOutTransfer(ByteBuffer byteBuffer) throws IOException {
        int iBulkTransfer = this.deviceConnection.bulkTransfer(this.outEndpoint, byteBuffer.array(), byteBuffer.position(), byteBuffer.remaining(), 5000);
        if (iBulkTransfer == -1) {
            throw new IOException("Could not write to device, result == -1");
        }
        byteBuffer.position(byteBuffer.position() + iBulkTransfer);
        return iBulkTransfer;
    }

    @Override // com.github.mjdev.libaums.usb.UsbCommunication
    public int bulkInTransfer(ByteBuffer byteBuffer) throws IOException {
        int iBulkTransfer = this.deviceConnection.bulkTransfer(this.inEndpoint, byteBuffer.array(), byteBuffer.position(), byteBuffer.remaining(), 5000);
        if (iBulkTransfer == -1) {
            throw new IOException("Could not read from device, result == -1");
        }
        byteBuffer.position(byteBuffer.position() + iBulkTransfer);
        return iBulkTransfer;
    }
}
