Allow ANDROID_LENS_FOCAL_LENGTH in virtual camera capture result

... and set only ANDROID_LENS_INFO_AVAILABLE_FOCAL_LENGTHS into
camera characteristics during camera creation.

Test: atest virtual_camera_tests
Fixes: 324385418
Change-Id: I28d0ed636210bee9309fce0eaaa531d99670f26b
diff --git a/services/camera/virtualcamera/util/MetadataBuilder.cc b/services/camera/virtualcamera/util/MetadataBuilder.cc
index 5669e12..db5a5dd 100644
--- a/services/camera/virtualcamera/util/MetadataBuilder.cc
+++ b/services/camera/virtualcamera/util/MetadataBuilder.cc
@@ -99,13 +99,17 @@
   return *this;
 }
 
-MetadataBuilder& MetadataBuilder::setFocalLength(float focalLength) {
-  std::vector<float> focalLengths({focalLength});
-  mEntryMap[ANDROID_LENS_FOCAL_LENGTH] = focalLengths;
+MetadataBuilder& MetadataBuilder::setAvailableFocalLengths(
+    const std::vector<float>& focalLengths) {
   mEntryMap[ANDROID_LENS_INFO_AVAILABLE_FOCAL_LENGTHS] = focalLengths;
   return *this;
 }
 
+MetadataBuilder& MetadataBuilder::setFocalLength(float focalLength) {
+  mEntryMap[ANDROID_LENS_FOCAL_LENGTH] = asVectorOf<float>(focalLength);
+  return *this;
+}
+
 MetadataBuilder& MetadataBuilder::setSensorOrientation(int32_t sensorOrientation) {
   mEntryMap[ANDROID_SENSOR_ORIENTATION] = asVectorOf<int32_t>(sensorOrientation);
   return *this;