[go: nahoru, domu]

Skip to content
This repository has been archived by the owner on Feb 22, 2023. It is now read-only.

Commit

Permalink
Revert "[camera] Add ProcessCameraProvider class to CameraX plugin (#…
Browse files Browse the repository at this point in the history
…6469)" (#6506)

This reverts commit 1c47c3b.
  • Loading branch information
stuartmorgan committed Sep 28, 2022
1 parent 1c47c3b commit f75cfb4
Show file tree
Hide file tree
Showing 15 changed files with 7 additions and 818 deletions.
1 change: 0 additions & 1 deletion packages/camera/camera_android_camerax/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,3 @@
* Creates camera_android_camerax plugin for development.
* Adds CameraInfo class and removes unnecessary code from plugin.
* Adds CameraSelector class.
* Adds ProcessCameraProvider class.
4 changes: 1 addition & 3 deletions packages/camera/camera_android_camerax/android/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -38,15 +38,13 @@ android {

dependencies {
// CameraX core library using the camera2 implementation must use same version number.
def camerax_version = "1.2.0-beta02"
def camerax_version = "1.2.0-beta01"
implementation "androidx.camera:camera-core:${camerax_version}"
implementation "androidx.camera:camera-camera2:${camerax_version}"
implementation "androidx.camera:camera-lifecycle:${camerax_version}"
implementation 'com.google.guava:guava:28.1-android'
testImplementation 'junit:junit:4.13.2'
testImplementation 'org.mockito:mockito-inline:4.7.0'
testImplementation 'androidx.test:core:1.4.0'
testImplementation 'org.robolectric:robolectric:4.3'
}
testOptions {
unitTests.includeAndroidResources = true
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@
public final class CameraAndroidCameraxPlugin implements FlutterPlugin, ActivityAware {
private InstanceManager instanceManager;
private FlutterPluginBinding pluginBinding;
private ProcessCameraProviderHostApiImpl processCameraProviderHostApi;

/**
* Initialize this within the {@code #configureFlutterEngine} of a Flutter activity or fragment.
Expand All @@ -40,10 +39,6 @@ void setUp(BinaryMessenger binaryMessenger, Context context) {
binaryMessenger, new JavaObjectHostApiImpl(instanceManager));
GeneratedCameraXLibrary.CameraSelectorHostApi.setup(
binaryMessenger, new CameraSelectorHostApiImpl(binaryMessenger, instanceManager));
processCameraProviderHostApi =
new ProcessCameraProviderHostApiImpl(binaryMessenger, instanceManager, context);
GeneratedCameraXLibrary.ProcessCameraProviderHostApi.setup(
binaryMessenger, processCameraProviderHostApi);
}

@Override
Expand All @@ -65,33 +60,15 @@ public void onDetachedFromEngine(@NonNull FlutterPluginBinding binding) {
// Activity Lifecycle methods:

@Override
public void onAttachedToActivity(@NonNull ActivityPluginBinding activityPluginBinding) {
updateContext(activityPluginBinding.getActivity());
}
public void onAttachedToActivity(@NonNull ActivityPluginBinding activityPluginBinding) {}

@Override
public void onDetachedFromActivityForConfigChanges() {
updateContext(pluginBinding.getApplicationContext());
}
public void onDetachedFromActivityForConfigChanges() {}

@Override
public void onReattachedToActivityForConfigChanges(
@NonNull ActivityPluginBinding activityPluginBinding) {
updateContext(activityPluginBinding.getActivity());
}
@NonNull ActivityPluginBinding activityPluginBinding) {}

@Override
public void onDetachedFromActivity() {
updateContext(pluginBinding.getApplicationContext());
}

/**
* Updates context that is used to fetch the corresponding instance of a {@code
* ProcessCameraProvider}.
*/
private void updateContext(Context context) {
if (processCameraProviderHostApi != null) {
processCameraProviderHostApi.setContext(context);
}
}
public void onDetachedFromActivity() {}
}
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ public CameraInfoFlutterApiImpl(
}

void create(CameraInfo cameraInfo, Reply<Void> reply) {
create(instanceManager.addHostCreatedInstance(cameraInfo), reply);
instanceManager.addHostCreatedInstance(cameraInfo);
create(instanceManager.getIdentifierForStrongReference(cameraInfo), reply);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -22,13 +22,6 @@
/** Generated class from Pigeon. */
@SuppressWarnings({"unused", "unchecked", "CodeBlock2Expr", "RedundantSuppression"})
public class GeneratedCameraXLibrary {

public interface Result<T> {
void success(T result);

void error(Throwable error);
}

private static class JavaObjectHostApiCodec extends StandardMessageCodec {
public static final JavaObjectHostApiCodec INSTANCE = new JavaObjectHostApiCodec();

Expand Down Expand Up @@ -318,133 +311,6 @@ public void create(
}
}

private static class ProcessCameraProviderHostApiCodec extends StandardMessageCodec {
public static final ProcessCameraProviderHostApiCodec INSTANCE =
new ProcessCameraProviderHostApiCodec();

private ProcessCameraProviderHostApiCodec() {}
}

/** Generated interface from Pigeon that represents a handler of messages from Flutter. */
public interface ProcessCameraProviderHostApi {
void getInstance(Result<Long> result);

@NonNull
List<Long> getAvailableCameraInfos(@NonNull Long identifier);

/** The codec used by ProcessCameraProviderHostApi. */
static MessageCodec<Object> getCodec() {
return ProcessCameraProviderHostApiCodec.INSTANCE;
}

/**
* Sets up an instance of `ProcessCameraProviderHostApi` to handle messages through the
* `binaryMessenger`.
*/
static void setup(BinaryMessenger binaryMessenger, ProcessCameraProviderHostApi api) {
{
BasicMessageChannel<Object> channel =
new BasicMessageChannel<>(
binaryMessenger,
"dev.flutter.pigeon.ProcessCameraProviderHostApi.getInstance",
getCodec());
if (api != null) {
channel.setMessageHandler(
(message, reply) -> {
Map<String, Object> wrapped = new HashMap<>();
try {
Result<Long> resultCallback =
new Result<Long>() {
public void success(Long result) {
wrapped.put("result", result);
reply.reply(wrapped);
}

public void error(Throwable error) {
wrapped.put("error", wrapError(error));
reply.reply(wrapped);
}
};

api.getInstance(resultCallback);
} catch (Error | RuntimeException exception) {
wrapped.put("error", wrapError(exception));
reply.reply(wrapped);
}
});
} else {
channel.setMessageHandler(null);
}
}
{
BasicMessageChannel<Object> channel =
new BasicMessageChannel<>(
binaryMessenger,
"dev.flutter.pigeon.ProcessCameraProviderHostApi.getAvailableCameraInfos",
getCodec());
if (api != null) {
channel.setMessageHandler(
(message, reply) -> {
Map<String, Object> wrapped = new HashMap<>();
try {
ArrayList<Object> args = (ArrayList<Object>) message;
Number identifierArg = (Number) args.get(0);
if (identifierArg == null) {
throw new NullPointerException("identifierArg unexpectedly null.");
}
List<Long> output =
api.getAvailableCameraInfos(
(identifierArg == null) ? null : identifierArg.longValue());
wrapped.put("result", output);
} catch (Error | RuntimeException exception) {
wrapped.put("error", wrapError(exception));
}
reply.reply(wrapped);
});
} else {
channel.setMessageHandler(null);
}
}
}
}

private static class ProcessCameraProviderFlutterApiCodec extends StandardMessageCodec {
public static final ProcessCameraProviderFlutterApiCodec INSTANCE =
new ProcessCameraProviderFlutterApiCodec();

private ProcessCameraProviderFlutterApiCodec() {}
}

/** Generated class from Pigeon that represents Flutter messages that can be called from Java. */
public static class ProcessCameraProviderFlutterApi {
private final BinaryMessenger binaryMessenger;

public ProcessCameraProviderFlutterApi(BinaryMessenger argBinaryMessenger) {
this.binaryMessenger = argBinaryMessenger;
}

public interface Reply<T> {
void reply(T reply);
}

static MessageCodec<Object> getCodec() {
return ProcessCameraProviderFlutterApiCodec.INSTANCE;
}

public void create(@NonNull Long identifierArg, Reply<Void> callback) {
BasicMessageChannel<Object> channel =
new BasicMessageChannel<>(
binaryMessenger,
"dev.flutter.pigeon.ProcessCameraProviderFlutterApi.create",
getCodec());
channel.send(
new ArrayList<Object>(Arrays.asList(identifierArg)),
channelReply -> {
callback.reply(null);
});
}
}

private static Map<String, Object> wrapError(Throwable exception) {
Map<String, Object> errorMap = new HashMap<>();
errorMap.put("message", exception.toString());
Expand Down

This file was deleted.

This file was deleted.

Loading

0 comments on commit f75cfb4

Please sign in to comment.