private void onSendDiagnosticRequest(Spinner busSpinner,
EditText idView, EditText modeView, EditText pidView) {
boolean validInput = true;
if(idView.getText().toString().isEmpty()) {
idView.setError("ID is required");
validInput = false;
}
if(modeView.getText().toString().isEmpty()) {
modeView.setError("Mode is required");
validInput = false;
}
if(validInput) {
DiagnosticRequest request = new DiagnosticRequest(
Integer.valueOf(busSpinner.getSelectedItem().toString()),
Integer.valueOf(idView.getText().toString(), 16),
Integer.valueOf(modeView.getText().toString(), 16));
String pidString = pidView.getText().toString();
if(!pidString.isEmpty()) {
request.setPid(Integer.valueOf(pidString, 16));
}
mVehicleManager.send(request);
updateLastRequestView(request);
} else {
Log.i(TAG, "Form is invalid, not sending diagnostic request");
}
}