[go: nahoru, domu]

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&lt;C> configType, ConfigProvider&lt;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&lt;C> configType, ConfigProvider&lt;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 &lt;C extends UseCaseConfig&lt;?>> C getConfig(Class&lt;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="    &lt;C extends UseCaseConfig&lt;?>> C getConfig(Class&lt;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}.