package info.androiddevice.deviceinventory.info;
import org.json.JSONException;
import org.json.JSONObject;
import java.io.File;
import java.util.ArrayList;
import java.util.List;
import static info.androiddevice.deviceinventory.info.Utils.readFile;
public class UsbProperty implements Property {
private final List<String> keys = new ArrayList<String>() {{
add("iManufacturer");
add("iProduct");
add("idProduct");
add("idVendor");
}};
@Override
public Object getProperty() {
JSONObject jsonObject = new JSONObject();
for(String key:keys) {
try {
String deviceFolder = "/sys/devices/virtual/android_usb/android0/";
String value = readFile(new File(deviceFolder, key));
jsonObject.put(key, value.trim());
} catch (Exception e) {
try {
jsonObject.put(key, JSONObject.NULL);
} catch (JSONException e1) {}
}
}
return jsonObject;
}
@Override
public String getName() {
return "usb";
}
}