Prepare to move VCN: Define utility lib for IPsec module

This is a preparation CL before moving VCN code from frameworks/base
to p/m/Connectivity/

After VCN is move out of frameworks/base/, the IPsec module will
no longer include PersistableBundleUtils via framework-ike-shared-srcs
but will do that via vcn-utils-framework-ipsec

Bug: 379938062
Flag: EXEMPT; pure refactoring
Test: CtsIkeTestCases, FrameworksIkeTestCases
Change-Id: I2d405be630a05f5019e7711946fa46b4cf2a6ef8
diff --git a/Android.bp b/Android.bp
index f9cb9cc07..1ac0813 100644
--- a/Android.bp
+++ b/Android.bp
@@ -601,7 +601,6 @@
     srcs: [
         "core/java/com/android/internal/util/HexDump.java",
         "core/java/com/android/internal/util/WakeupMessage.java",
-        "packages/Vcn/framework-b/src/android/net/vcn/util/PersistableBundleUtils.java",
         "telephony/java/android/telephony/Annotation.java",
     ],
 }
diff --git a/packages/Vcn/framework-b/Android.bp b/packages/Vcn/framework-b/Android.bp
index c531233..7103c7c 100644
--- a/packages/Vcn/framework-b/Android.bp
+++ b/packages/Vcn/framework-b/Android.bp
@@ -31,6 +31,22 @@
     ],
 }
 
+// Utility library for the IPsec module
+java_library {
+    name: "vcn-utils-framework-ipsec",
+    sdk_version: "module_current",
+    min_sdk_version: "30",
+    srcs: ["src/android/net/vcn/util/PersistableBundleUtils.java"],
+    libs: [
+        "framework-annotations-lib",
+        "net-utils-framework-vcn", // For HexDump.java
+    ],
+    visibility: [
+        "//packages/modules/IPsec",
+    ],
+    apex_available: ["com.android.ipsec"],
+}
+
 java_defaults {
     name: "framework-connectivity-b-defaults-base",
     sdk_version: "module_current",