controller/dependency: Refactor SplitCPV usages.

Refactor SplitCPV usages to parse. Also refactor some PackageInfo
message code to use the controller_util helpers instead.

BUG=chromium:1077379
TEST=./run_pytest

Change-Id: Ide9d3ee66d0d61a7fc1ab99d7f8fc340c06c3d7a
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/chromite/+/2453858
Tested-by: Alex Klein <saklein@chromium.org>
Reviewed-by: Michael Mortensen <mmortensen@google.com>
Commit-Queue: Alex Klein <saklein@chromium.org>
diff --git a/api/controller/dependency.py b/api/controller/dependency.py
index 13eece5..bd2ad62 100644
--- a/api/controller/dependency.py
+++ b/api/controller/dependency.py
@@ -43,16 +43,11 @@
     package_info_msg.category = data['category']
     package_info_msg.version = data['version']
     for dep in data['deps']:
-      cpv = package_info.SplitCPV(dep, strict=False)
+      cpv = package_info.parse(dep)
       dep_package = package_dep_info.dependency_packages.add()
-      dep_package.package_name = cpv.package
-      dep_package.category = cpv.category
-      if cpv.version:
-        dep_package.version = cpv.version
+      controller_util.serialize_package_info(cpv, dep_package)
 
-    package_CPV = '%s/%s-%s' % (package_info_msg.category,
-                                package_info_msg.package_name,
-                                package_info_msg.version)
+    package_CPV = controller_util.PackageInfoToString(package_info_msg)
     for path in json_map['source_path_mapping'][package_CPV]:
       source_path = package_dep_info.dependency_source_paths.add()
       source_path.path = path
@@ -128,9 +123,9 @@
       src_paths=src_paths,
       packages=packages)
   for package in package_deps:
-    pkg_info = output_proto.package_deps.add()
-    cpv = package_info.SplitCPV(package, strict=False)
-    controller_util.CPVToPackageInfo(cpv, pkg_info)
+    pkg_info_msg = output_proto.package_deps.add()
+    pkg_info = package_info.parse(package)
+    controller_util.serialize_package_info(pkg_info, pkg_info_msg)
 
 
 def _DummyGetToolchainPathsResponse(_input_proto, output_proto, _config):