mirror of
https://github.com/PhotonVision/photonvision
synced 2026-06-21 01:01:41 +00:00
fix exception when handling drivermode settings
This commit is contained in:
@@ -184,17 +184,32 @@ public class ServerHandler {
|
||||
try {
|
||||
if (obj instanceof Camera) {
|
||||
var cam = (Camera)obj;
|
||||
if (fieldName.equals("driverBrightness")) {
|
||||
cam.setDriverBrightness((Integer)value);
|
||||
} else if (fieldName.equals("driverExposure")) {
|
||||
cam.setDriverExposure((Integer)value);
|
||||
switch (fieldName) {
|
||||
case "driverBrightness":
|
||||
cam.setDriverBrightness((Integer) value);
|
||||
break;
|
||||
case "driverExposure":
|
||||
cam.setDriverExposure((Integer) value);
|
||||
break;
|
||||
default:
|
||||
Field field = obj.getClass().getField(fieldName);
|
||||
if (field.getType().isEnum()) {
|
||||
field.set(obj, field.getType().getEnumConstants()[(Integer) value]);
|
||||
} else {
|
||||
field.set(obj, value);
|
||||
}
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
Field field = obj.getClass().getField(fieldName);
|
||||
if (field.getType().isEnum()) {
|
||||
field.set(obj, field.getType().getEnumConstants()[(Integer) value]);
|
||||
}
|
||||
else {
|
||||
field.set(obj, value);
|
||||
}
|
||||
}
|
||||
Field field = obj.getClass().getField(fieldName);
|
||||
if (field.getType().isEnum())
|
||||
field.set(obj, field.getType().getEnumConstants()[(Integer) value]);
|
||||
else
|
||||
field.set(obj, value);
|
||||
|
||||
} catch (NoSuchFieldException | IllegalAccessException ex) {
|
||||
ex.printStackTrace();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user