Move UseCaseConfigFactory related files to impl package (LIBRARY_GROUP)
- UseCaseConfigFactory, and ExtendableUseCaseConfigFactory are used in camera2
and testing modules.
- Add related annotations and remove whitelist in lint-baseline.xml
Bug: 146236769
Test: ./gradlew :camera:camera-core:lintDebug &&
./gradlew :camera:camera-view:lintDebug &&
./gradlew :camera:camera-camera2:lintDebug &&
./gradlew :camera:camera-extensions:lintDebug &&
./gradlew :camera:camera-lifecycle:lintDebug &&
Change-Id: If690fd5031c9361304a6ed218325154e39300958
diff --git a/camera/camera-camera2/src/main/java/androidx/camera/camera2/Camera2Config.java b/camera/camera-camera2/src/main/java/androidx/camera/camera2/Camera2Config.java
index 3a23776..8c4a47b8 100644
--- a/camera/camera-camera2/src/main/java/androidx/camera/camera2/Camera2Config.java
+++ b/camera/camera-camera2/src/main/java/androidx/camera/camera2/Camera2Config.java
@@ -25,13 +25,13 @@
import androidx.camera.camera2.internal.VideoCaptureConfigProvider;
import androidx.camera.core.CameraFactory;
import androidx.camera.core.CameraXConfig;
-import androidx.camera.core.ExtendableUseCaseConfigFactory;
import androidx.camera.core.ImageAnalysisConfig;
import androidx.camera.core.ImageCaptureConfig;
import androidx.camera.core.PreviewConfig;
-import androidx.camera.core.UseCaseConfigFactory;
import androidx.camera.core.VideoCaptureConfig;
import androidx.camera.core.impl.CameraDeviceSurfaceManager;
+import androidx.camera.core.impl.ExtendableUseCaseConfigFactory;
+import androidx.camera.core.impl.UseCaseConfigFactory;
/**
* Convenience class for generating a pre-populated Camera2 {@link CameraXConfig}.
diff --git a/camera/camera-camera2/src/test/java/androidx/camera/camera2/internal/Camera2DeviceSurfaceManagerTest.java b/camera/camera-camera2/src/test/java/androidx/camera/camera2/internal/Camera2DeviceSurfaceManagerTest.java
index 0d25412..2f72c70 100644
--- a/camera/camera-camera2/src/test/java/androidx/camera/camera2/internal/Camera2DeviceSurfaceManagerTest.java
+++ b/camera/camera-camera2/src/test/java/androidx/camera/camera2/internal/Camera2DeviceSurfaceManagerTest.java
@@ -40,7 +40,6 @@
import androidx.camera.core.CameraSelector;
import androidx.camera.core.CameraX;
import androidx.camera.core.CameraXConfig;
-import androidx.camera.core.ExtendableUseCaseConfigFactory;
import androidx.camera.core.ImageAnalysisConfig;
import androidx.camera.core.ImageCapture;
import androidx.camera.core.ImageCaptureConfig;
@@ -48,14 +47,15 @@
import androidx.camera.core.Preview;
import androidx.camera.core.PreviewConfig;
import androidx.camera.core.UseCase;
-import androidx.camera.core.UseCaseConfigFactory;
import androidx.camera.core.VideoCapture;
import androidx.camera.core.VideoCaptureConfig;
import androidx.camera.core.impl.CameraDeviceSurfaceManager;
+import androidx.camera.core.impl.ExtendableUseCaseConfigFactory;
import androidx.camera.core.impl.SurfaceCombination;
import androidx.camera.core.impl.SurfaceConfig;
import androidx.camera.core.impl.SurfaceConfig.ConfigSize;
import androidx.camera.core.impl.SurfaceConfig.ConfigType;
+import androidx.camera.core.impl.UseCaseConfigFactory;
import androidx.camera.testing.CameraUtil;
import androidx.camera.testing.StreamConfigurationMapUtil;
import androidx.camera.testing.fakes.FakeCamera;
diff --git a/camera/camera-camera2/src/test/java/androidx/camera/camera2/internal/DisplayOrientedMeteringPointFactoryTest.java b/camera/camera-camera2/src/test/java/androidx/camera/camera2/internal/DisplayOrientedMeteringPointFactoryTest.java
index 3a670fa..5eefd4d 100644
--- a/camera/camera-camera2/src/test/java/androidx/camera/camera2/internal/DisplayOrientedMeteringPointFactoryTest.java
+++ b/camera/camera-camera2/src/test/java/androidx/camera/camera2/internal/DisplayOrientedMeteringPointFactoryTest.java
@@ -30,11 +30,11 @@
import androidx.camera.core.CameraX;
import androidx.camera.core.CameraXConfig;
import androidx.camera.core.DisplayOrientedMeteringPointFactory;
-import androidx.camera.core.ExtendableUseCaseConfigFactory;
import androidx.camera.core.MeteringPoint;
import androidx.camera.core.MeteringPointFactory;
-import androidx.camera.core.UseCaseConfigFactory;
import androidx.camera.core.impl.CameraDeviceSurfaceManager;
+import androidx.camera.core.impl.ExtendableUseCaseConfigFactory;
+import androidx.camera.core.impl.UseCaseConfigFactory;
import androidx.camera.testing.fakes.FakeCamera;
import androidx.camera.testing.fakes.FakeCameraDeviceSurfaceManager;
import androidx.camera.testing.fakes.FakeCameraFactory;
diff --git a/camera/camera-core/lint-baseline.xml b/camera/camera-core/lint-baseline.xml
index a295491..f8eaa36 100644
--- a/camera/camera-core/lint-baseline.xml
+++ b/camera/camera-core/lint-baseline.xml
@@ -818,39 +818,6 @@
<issue
id="UnknownNullness"
message="Unknown nullability; explicitly declare as `@Nullable` or `@NonNull` to improve Kotlin interoperability; see https://android.github.io/kotlin-guides/interop.html#nullability-annotations"
- errorLine1=" Class<C> configType, ConfigProvider<C> defaultProvider) {"
- errorLine2=" ~~~~~~~~">
- <location
- file="src/main/java/androidx/camera/core/ExtendableUseCaseConfigFactory.java"
- line="37"
- column="13"/>
- </issue>
-
- <issue
- id="UnknownNullness"
- message="Unknown nullability; explicitly declare as `@Nullable` or `@NonNull` to improve Kotlin interoperability; see https://android.github.io/kotlin-guides/interop.html#nullability-annotations"
- errorLine1=" Class<C> configType, ConfigProvider<C> defaultProvider) {"
- errorLine2=" ~~~~~~~~~~~~~~~~~">
- <location
- file="src/main/java/androidx/camera/core/ExtendableUseCaseConfigFactory.java"
- line="37"
- column="34"/>
- </issue>
-
- <issue
- id="UnknownNullness"
- message="Unknown nullability; explicitly declare as `@Nullable` or `@NonNull` to improve Kotlin interoperability; see https://android.github.io/kotlin-guides/interop.html#nullability-annotations"
- errorLine1=" public <C extends UseCaseConfig<?>> C getConfig(Class<C> configType,"
- errorLine2=" ~~~~~~~~">
- <location
- file="src/main/java/androidx/camera/core/ExtendableUseCaseConfigFactory.java"
- line="43"
- column="53"/>
- </issue>
-
- <issue
- id="UnknownNullness"
- message="Unknown nullability; explicitly declare as `@Nullable` or `@NonNull` to improve Kotlin interoperability; see https://android.github.io/kotlin-guides/interop.html#nullability-annotations"
errorLine1=" void onFailure(Throwable t);"
errorLine2=" ~~~~~~~~~">
<location
@@ -1518,18 +1485,7 @@
line="527"
column="54"/>
</issue>
-
- <issue
- id="UnknownNullness"
- message="Unknown nullability; explicitly declare as `@Nullable` or `@NonNull` to improve Kotlin interoperability; see https://android.github.io/kotlin-guides/interop.html#nullability-annotations"
- errorLine1=" <C extends UseCaseConfig<?>> C getConfig(Class<C> configType, @Nullable Integer lensFacing);"
- errorLine2=" ~~~~~~~~">
- <location
- file="src/main/java/androidx/camera/core/UseCaseConfigFactory.java"
- line="38"
- column="46"/>
- </issue>
-
+
<issue
id="UnknownNullness"
message="Unknown nullability; explicitly declare as `@Nullable` or `@NonNull` to improve Kotlin interoperability; see https://android.github.io/kotlin-guides/interop.html#nullability-annotations"
diff --git a/camera/camera-core/src/androidTest/java/androidx/camera/core/CameraXTest.java b/camera/camera-core/src/androidTest/java/androidx/camera/core/CameraXTest.java
index 7334a1a..b940dd0 100644
--- a/camera/camera-core/src/androidTest/java/androidx/camera/core/CameraXTest.java
+++ b/camera/camera-core/src/androidTest/java/androidx/camera/core/CameraXTest.java
@@ -32,6 +32,8 @@
import androidx.camera.core.impl.CameraControlInternal;
import androidx.camera.core.impl.CameraInfoInternal;
import androidx.camera.core.impl.CameraInternal;
+import androidx.camera.core.impl.ExtendableUseCaseConfigFactory;
+import androidx.camera.core.impl.UseCaseConfigFactory;
import androidx.camera.core.impl.utils.executor.CameraXExecutors;
import androidx.camera.testing.fakes.FakeCamera;
import androidx.camera.testing.fakes.FakeCameraDeviceSurfaceManager;
diff --git a/camera/camera-core/src/main/java/androidx/camera/core/CameraX.java b/camera/camera-core/src/main/java/androidx/camera/core/CameraX.java
index 4caedff..3e95496 100644
--- a/camera/camera-core/src/main/java/androidx/camera/core/CameraX.java
+++ b/camera/camera-core/src/main/java/androidx/camera/core/CameraX.java
@@ -33,6 +33,7 @@
import androidx.camera.core.impl.CameraIdFilter;
import androidx.camera.core.impl.CameraInfoInternal;
import androidx.camera.core.impl.CameraInternal;
+import androidx.camera.core.impl.UseCaseConfigFactory;
import androidx.camera.core.impl.utils.Threads;
import androidx.camera.core.impl.utils.executor.CameraXExecutors;
import androidx.camera.core.impl.utils.futures.FutureCallback;
diff --git a/camera/camera-core/src/main/java/androidx/camera/core/CameraXConfig.java b/camera/camera-core/src/main/java/androidx/camera/core/CameraXConfig.java
index aec39b9..079bff4 100644
--- a/camera/camera-core/src/main/java/androidx/camera/core/CameraXConfig.java
+++ b/camera/camera-core/src/main/java/androidx/camera/core/CameraXConfig.java
@@ -23,6 +23,7 @@
import androidx.annotation.RestrictTo;
import androidx.annotation.RestrictTo.Scope;
import androidx.camera.core.impl.CameraDeviceSurfaceManager;
+import androidx.camera.core.impl.UseCaseConfigFactory;
import androidx.camera.core.internal.TargetConfig;
import java.util.Set;
diff --git a/camera/camera-core/src/main/java/androidx/camera/core/ExtendableUseCaseConfigFactory.java b/camera/camera-core/src/main/java/androidx/camera/core/impl/ExtendableUseCaseConfigFactory.java
similarity index 89%
rename from camera/camera-core/src/main/java/androidx/camera/core/ExtendableUseCaseConfigFactory.java
rename to camera/camera-core/src/main/java/androidx/camera/core/impl/ExtendableUseCaseConfigFactory.java
index 536e64f..b34433ed 100644
--- a/camera/camera-core/src/main/java/androidx/camera/core/ExtendableUseCaseConfigFactory.java
+++ b/camera/camera-core/src/main/java/androidx/camera/core/impl/ExtendableUseCaseConfigFactory.java
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2019 The Android Open Source Project
+ * Copyright 2019 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -14,12 +14,13 @@
* limitations under the License.
*/
-package androidx.camera.core;
+package androidx.camera.core.impl;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
-import androidx.annotation.RestrictTo;
-import androidx.annotation.RestrictTo.Scope;
+import androidx.camera.core.Config;
+import androidx.camera.core.ConfigProvider;
+import androidx.camera.core.UseCaseConfig;
import java.util.HashMap;
import java.util.Map;
@@ -27,9 +28,8 @@
/**
* A {@link UseCaseConfigFactory} that uses {@link ConfigProvider}s to provide configurations.
*
- * @hide
*/
-@RestrictTo(Scope.LIBRARY_GROUP)
+
public final class ExtendableUseCaseConfigFactory implements UseCaseConfigFactory {
private final Map<Class<?>, ConfigProvider<?>> mDefaultProviders = new HashMap<>();
diff --git a/camera/camera-core/src/main/java/androidx/camera/core/UseCaseConfigFactory.java b/camera/camera-core/src/main/java/androidx/camera/core/impl/UseCaseConfigFactory.java
similarity index 87%
rename from camera/camera-core/src/main/java/androidx/camera/core/UseCaseConfigFactory.java
rename to camera/camera-core/src/main/java/androidx/camera/core/impl/UseCaseConfigFactory.java
index b33f38f..9f69946 100644
--- a/camera/camera-core/src/main/java/androidx/camera/core/UseCaseConfigFactory.java
+++ b/camera/camera-core/src/main/java/androidx/camera/core/impl/UseCaseConfigFactory.java
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2019 The Android Open Source Project
+ * Copyright 2019 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -14,21 +14,18 @@
* limitations under the License.
*/
-package androidx.camera.core;
+package androidx.camera.core.impl;
import android.content.Context;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
-import androidx.annotation.RestrictTo;
-import androidx.annotation.RestrictTo.Scope;
+import androidx.camera.core.UseCaseConfig;
/**
* A Repository for generating use case configurations.
*
- * @hide
*/
-@RestrictTo(Scope.LIBRARY_GROUP)
public interface UseCaseConfigFactory {
/**
diff --git a/camera/camera-core/src/test/java/androidx/camera/core/CameraSelectorTest.java b/camera/camera-core/src/test/java/androidx/camera/core/CameraSelectorTest.java
index 83791ae..945dc97 100644
--- a/camera/camera-core/src/test/java/androidx/camera/core/CameraSelectorTest.java
+++ b/camera/camera-core/src/test/java/androidx/camera/core/CameraSelectorTest.java
@@ -26,6 +26,8 @@
import androidx.camera.core.impl.CameraDeviceSurfaceManager;
import androidx.camera.core.impl.CameraIdFilter;
import androidx.camera.core.impl.CameraInternal;
+import androidx.camera.core.impl.ExtendableUseCaseConfigFactory;
+import androidx.camera.core.impl.UseCaseConfigFactory;
import androidx.camera.testing.fakes.FakeCamera;
import androidx.camera.testing.fakes.FakeCameraDeviceSurfaceManager;
import androidx.camera.testing.fakes.FakeCameraFactory;
diff --git a/camera/camera-core/src/test/java/androidx/camera/core/ExtendableUseCaseConfigFactoryTest.java b/camera/camera-core/src/test/java/androidx/camera/core/ExtendableUseCaseConfigFactoryTest.java
index 0c5b657..2b23381 100644
--- a/camera/camera-core/src/test/java/androidx/camera/core/ExtendableUseCaseConfigFactoryTest.java
+++ b/camera/camera-core/src/test/java/androidx/camera/core/ExtendableUseCaseConfigFactoryTest.java
@@ -21,6 +21,7 @@
import android.os.Build;
import androidx.annotation.Nullable;
+import androidx.camera.core.impl.ExtendableUseCaseConfigFactory;
import androidx.camera.testing.fakes.FakeUseCase;
import androidx.camera.testing.fakes.FakeUseCaseConfig;
import androidx.test.filters.SmallTest;
diff --git a/camera/camera-testing/src/main/java/androidx/camera/testing/fakes/FakeAppConfig.java b/camera/camera-testing/src/main/java/androidx/camera/testing/fakes/FakeAppConfig.java
index 2cd2d87..997eb01 100644
--- a/camera/camera-testing/src/main/java/androidx/camera/testing/fakes/FakeAppConfig.java
+++ b/camera/camera-testing/src/main/java/androidx/camera/testing/fakes/FakeAppConfig.java
@@ -20,8 +20,8 @@
import androidx.camera.core.CameraFactory;
import androidx.camera.core.CameraSelector;
import androidx.camera.core.CameraXConfig;
-import androidx.camera.core.ExtendableUseCaseConfigFactory;
import androidx.camera.core.impl.CameraDeviceSurfaceManager;
+import androidx.camera.core.impl.ExtendableUseCaseConfigFactory;
/**
* Convenience class for generating a fake {@link CameraXConfig}.