@SuppressWarnings("BooleanMethodIsAlwaysInverted")
	boolean hasMore() {
		return !complete && !cancelled && !finished;
	}
Same as {@link #await(DataReceivedCallback)}, but if the response class extends
{@link ProfileReadResponse} and the received response is not valid
({@link ProfileReadResponse#isValid()} returns false), this method will
throw an exception.

@param response the response object.
@return The object with the response.
@throws RequestFailedException      thrown when the BLE request finished with status other
                                    than {@link BluetoothGatt#GATT_SUCCESS}.
@throws InterruptedException        thrown if the timeout occurred before the request has
                                    finished.
@throws IllegalStateException       thrown when you try to call this method from the main
                                    (UI) thread.
@throws DeviceDisconnectedException thrown when the device disconnected before the request
                                    was completed.
@throws BluetoothDisabledException  thrown when the Bluetooth adapter has been disabled.
@throws InvalidDataException        thrown when the received data were not valid (that is when
                                    {@link ProfileReadResponse#onDataReceived(BluetoothDevice, Data)}
                                    failed to parse the data correctly and called
                                    {@link ProfileReadResponse#onInvalidDataReceived(BluetoothDevice, Data)}).
@throws InvalidRequestException     thrown when the request was called before the device was
                                    connected at least once (unknown device).
ble/src/main/java/no/nordicsemi/android/ble/ReadRequest.java