summaryrefslogtreecommitdiffstats
path: root/camera2/portability/src/com/android/ex/camera2/portability/CameraExceptionHandler.java
diff options
context:
space:
mode:
Diffstat (limited to 'camera2/portability/src/com/android/ex/camera2/portability/CameraExceptionHandler.java')
-rw-r--r--camera2/portability/src/com/android/ex/camera2/portability/CameraExceptionHandler.java20
1 files changed, 19 insertions, 1 deletions
diff --git a/camera2/portability/src/com/android/ex/camera2/portability/CameraExceptionHandler.java b/camera2/portability/src/com/android/ex/camera2/portability/CameraExceptionHandler.java
index 7270b22..1fcf3b5 100644
--- a/camera2/portability/src/com/android/ex/camera2/portability/CameraExceptionHandler.java
+++ b/camera2/portability/src/com/android/ex/camera2/portability/CameraExceptionHandler.java
@@ -28,10 +28,12 @@ public class CameraExceptionHandler {
private CameraExceptionCallback mCallback =
new CameraExceptionCallback() {
@Override
+ public void onCameraError(int errorCode) {
+ }
+ @Override
public void onCameraException(RuntimeException e) {
throw e;
}
-
@Override
public void onDispatchThreadException(RuntimeException e) {
throw e;
@@ -42,6 +44,7 @@ public class CameraExceptionHandler {
* A callback helps to handle RuntimeException thrown by camera framework.
*/
public static interface CameraExceptionCallback {
+ public void onCameraError(int errorCode);
public void onCameraException(RuntimeException e);
public void onDispatchThreadException(RuntimeException e);
}
@@ -69,6 +72,21 @@ public class CameraExceptionHandler {
}
/**
+ * Invoke @{link CameraExceptionCallback} when an error is reported by Android camera framework.
+ *
+ * @param errorCode An integer to represent the error code.
+ * @see android.hardware.Camera#setErrorCallback(android.hardware.Camera.ErrorCallback)
+ */
+ public void onCameraError(final int errorCode) {
+ mHandler.post(new Runnable() {
+ @Override
+ public void run() {
+ mCallback.onCameraError(errorCode);
+ }
+ });
+ }
+
+ /**
* Invoke @{link CameraExceptionCallback} when a runtime exception is thrown by Android camera
* framework.
*