Refactor: Add HalManifest::inferredKernelLevel().
For now, this directly returns kernel()->level(). Replace some
usages of kernel()->level() with this. Usages of kernel()->level()
that is not replaced will either be cleaned up in follow up CLs, or
commented to describe the intention.
If there's no <kernel> tag, returns UNSPECIFIED.
Test: libvintf_test
Test: vintf_object_test
Bug: 161317193
Change-Id: Id738f568dc61c248e4048381e31843ba62a870bf
diff --git a/VintfObject.cpp b/VintfObject.cpp
index 559b8d8..55fa7a3 100644
--- a/VintfObject.cpp
+++ b/VintfObject.cpp
@@ -549,11 +549,7 @@
mDeviceRuntimeInfo.fetchedFlags &= ~RuntimeInfo::FetchFlag::KERNEL_FCM;
return nullptr;
}
- Level level = Level::UNSPECIFIED;
- if (manifest->kernel().has_value()) {
- level = manifest->kernel()->level();
- }
- mDeviceRuntimeInfo.object->setKernelLevel(level);
+ mDeviceRuntimeInfo.object->setKernelLevel(manifest->inferredKernelLevel());
flags &= ~RuntimeInfo::FetchFlag::KERNEL_FCM;
}
@@ -935,6 +931,7 @@
if (error) *error = "Cannot retrieve device manifest.";
return Level::UNSPECIFIED;
}
+ // TODO(b/161317193): read kernel level from RuntimeInfo
if (manifest->kernel().has_value() && manifest->kernel()->level() != Level::UNSPECIFIED) {
return manifest->kernel()->level();
}