Move java/framework to libs/framework-virtualization
and run formatter as requested
Bug: 352458998
Test: pass TH
Change-Id: I606f8c173728315c4fc88866809af20900520838
diff --git a/README.md b/README.md
index a47f5b3..fc4d389 100644
--- a/README.md
+++ b/README.md
@@ -23,7 +23,7 @@
* [Encrypted Storage](guest/encryptedstore/README.md)
AVF APIs:
-* [Java API](java/framework/README.md)
+* [Java API](libs/framework-virtualization/README.md)
* [VM Payload API](libs/libvm_payload/README.md)
How-Tos:
diff --git a/build/microdroid/README.md b/build/microdroid/README.md
index da81300..197eec7 100644
--- a/build/microdroid/README.md
+++ b/build/microdroid/README.md
@@ -132,7 +132,7 @@
### Using the APIs
Use the [Android Virtualization Framework Java
-APIs](https://android.googlesource.com/platform/packages/modules/Virtualization/+/refs/heads/main/java/framework/README.md)
+APIs](https://android.googlesource.com/platform/packages/modules/Virtualization/+/refs/heads/main/libs/framework-virtualization/README.md)
in your app to create a microdroid VM and run payload in it. The APIs are currently
@SystemApi, and only available to preinstalled apps.
diff --git a/java/framework/Android.bp b/libs/framework-virtualization/Android.bp
similarity index 100%
rename from java/framework/Android.bp
rename to libs/framework-virtualization/Android.bp
diff --git a/java/framework/README.md b/libs/framework-virtualization/README.md
similarity index 98%
rename from java/framework/README.md
rename to libs/framework-virtualization/README.md
index e80d908..0dd7e64 100644
--- a/java/framework/README.md
+++ b/libs/framework-virtualization/README.md
@@ -343,7 +343,7 @@
powerful attacker could delete it, wholly or partially roll it back to an
earlier version, or modify it, corrupting the data.
-For more info see [README](https://cs.android.com/android/platform/superproject/main/+/main:packages/modules/Virtualization/java/framework/README.md)
+For more info see [README](https://cs.android.com/android/platform/superproject/main/+/main:packages/modules/Virtualization/libs/framework-virtualization/README.md)
# Transferring a VM
diff --git a/java/framework/api/current.txt b/libs/framework-virtualization/api/current.txt
similarity index 100%
rename from java/framework/api/current.txt
rename to libs/framework-virtualization/api/current.txt
diff --git a/java/framework/api/module-lib-current.txt b/libs/framework-virtualization/api/module-lib-current.txt
similarity index 100%
rename from java/framework/api/module-lib-current.txt
rename to libs/framework-virtualization/api/module-lib-current.txt
diff --git a/java/framework/api/module-lib-removed.txt b/libs/framework-virtualization/api/module-lib-removed.txt
similarity index 100%
rename from java/framework/api/module-lib-removed.txt
rename to libs/framework-virtualization/api/module-lib-removed.txt
diff --git a/java/framework/api/removed.txt b/libs/framework-virtualization/api/removed.txt
similarity index 100%
rename from java/framework/api/removed.txt
rename to libs/framework-virtualization/api/removed.txt
diff --git a/java/framework/api/system-current.txt b/libs/framework-virtualization/api/system-current.txt
similarity index 100%
rename from java/framework/api/system-current.txt
rename to libs/framework-virtualization/api/system-current.txt
diff --git a/java/framework/api/system-removed.txt b/libs/framework-virtualization/api/system-removed.txt
similarity index 100%
rename from java/framework/api/system-removed.txt
rename to libs/framework-virtualization/api/system-removed.txt
diff --git a/java/framework/api/test-current.txt b/libs/framework-virtualization/api/test-current.txt
similarity index 100%
rename from java/framework/api/test-current.txt
rename to libs/framework-virtualization/api/test-current.txt
diff --git a/java/framework/api/test-removed.txt b/libs/framework-virtualization/api/test-removed.txt
similarity index 100%
rename from java/framework/api/test-removed.txt
rename to libs/framework-virtualization/api/test-removed.txt
diff --git a/java/framework/jarjar-rules.txt b/libs/framework-virtualization/jarjar-rules.txt
similarity index 100%
rename from java/framework/jarjar-rules.txt
rename to libs/framework-virtualization/jarjar-rules.txt
diff --git a/java/framework/lint-baseline.xml b/libs/framework-virtualization/lint-baseline.xml
similarity index 80%
rename from java/framework/lint-baseline.xml
rename to libs/framework-virtualization/lint-baseline.xml
index 7c6e92e..a77a80b 100644
--- a/java/framework/lint-baseline.xml
+++ b/libs/framework-virtualization/lint-baseline.xml
@@ -7,7 +7,7 @@
errorLine1=" if (!vmConfig.getExtraApks().isEmpty()) {"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~">
<location
- file="packages/modules/Virtualization/java/framework/src/android/system/virtualmachine/VirtualMachine.java"
+ file="packages/modules/Virtualization/libs/framework-virtualization/src/android/system/virtualmachine/VirtualMachine.java"
line="1105"
column="14"/>
</issue>
@@ -18,7 +18,7 @@
errorLine1=" List<String> extraApks = config.getExtraApks();"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~">
<location
- file="packages/modules/Virtualization/java/framework/src/android/system/virtualmachine/VirtualMachine.java"
+ file="packages/modules/Virtualization/libs/framework-virtualization/src/android/system/virtualmachine/VirtualMachine.java"
line="1730"
column="34"/>
</issue>
@@ -29,7 +29,7 @@
errorLine1=" builder.setVendorDiskImage(new File(vendorDiskImagePath));"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
- file="packages/modules/Virtualization/java/framework/src/android/system/virtualmachine/VirtualMachineConfig.java"
+ file="packages/modules/Virtualization/libs/framework-virtualization/src/android/system/virtualmachine/VirtualMachineConfig.java"
line="367"
column="13"/>
</issue>
@@ -40,7 +40,7 @@
errorLine1=" builder.setOs(b.getString(KEY_OS));"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
- file="packages/modules/Virtualization/java/framework/src/android/system/virtualmachine/VirtualMachineConfig.java"
+ file="packages/modules/Virtualization/libs/framework-virtualization/src/android/system/virtualmachine/VirtualMachineConfig.java"
line="370"
column="9"/>
</issue>
@@ -51,7 +51,7 @@
errorLine1=" builder.addExtraApk(extraApk);"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
- file="packages/modules/Virtualization/java/framework/src/android/system/virtualmachine/VirtualMachineConfig.java"
+ file="packages/modules/Virtualization/libs/framework-virtualization/src/android/system/virtualmachine/VirtualMachineConfig.java"
line="375"
column="17"/>
</issue>
@@ -62,7 +62,7 @@
errorLine1=" @OsName private final String DEFAULT_OS = MICRODROID;"
errorLine2=" ~~~~~~~~~~">
<location
- file="packages/modules/Virtualization/java/framework/src/android/system/virtualmachine/VirtualMachineConfig.java"
+ file="packages/modules/Virtualization/libs/framework-virtualization/src/android/system/virtualmachine/VirtualMachineConfig.java"
line="855"
column="51"/>
</issue>
diff --git a/java/framework/src/android/system/virtualmachine/VirtualMachine.java b/libs/framework-virtualization/src/android/system/virtualmachine/VirtualMachine.java
similarity index 98%
rename from java/framework/src/android/system/virtualmachine/VirtualMachine.java
rename to libs/framework-virtualization/src/android/system/virtualmachine/VirtualMachine.java
index ace3b82..3b16a8a 100644
--- a/java/framework/src/android/system/virtualmachine/VirtualMachine.java
+++ b/libs/framework-virtualization/src/android/system/virtualmachine/VirtualMachine.java
@@ -193,11 +193,9 @@
* @hide
*/
@Retention(RetentionPolicy.SOURCE)
- @IntDef(prefix = "STATUS_", value = {
- STATUS_STOPPED,
- STATUS_RUNNING,
- STATUS_DELETED
- })
+ @IntDef(
+ prefix = "STATUS_",
+ value = {STATUS_STOPPED, STATUS_RUNNING, STATUS_DELETED})
public @interface Status {}
/** The virtual machine has just been created, or {@link #stop} was called on it. */
@@ -245,9 +243,7 @@
/** Name of this VM within the package. The name should be unique in the package. */
@NonNull private final String mName;
- /**
- * Path to the directory containing all the files related to this VM.
- */
+ /** Path to the directory containing all the files related to this VM. */
@NonNull private final File mVmRootPath;
/**
@@ -691,8 +687,7 @@
try {
byte[] instanceId = Files.readAllBytes(mInstanceIdPath.toPath());
service.claimVmInstance(instanceId);
- }
- catch (IOException e) {
+ } catch (IOException e) {
throw new VirtualMachineException("failed to read instance_id", e);
} catch (RemoteException e) {
throw e.rethrowAsRuntimeException();
@@ -1773,7 +1768,6 @@
}
}
-
/**
* Returns the stream object representing the log output from the virtual machine. The log
* output is only available if the VirtualMachineConfig specifies that it should be {@linkplain
@@ -1907,22 +1901,26 @@
private static void deleteRecursively(File dir) throws IOException {
// Note: This doesn't follow symlinks, which is important. Instead they are just deleted
// (and Files.delete deletes the link not the target).
- Files.walkFileTree(dir.toPath(), new SimpleFileVisitor<>() {
- @Override
- public FileVisitResult visitFile(Path file, BasicFileAttributes attrs)
- throws IOException {
- Files.delete(file);
- return FileVisitResult.CONTINUE;
- }
+ Files.walkFileTree(
+ dir.toPath(),
+ new SimpleFileVisitor<>() {
+ @Override
+ public FileVisitResult visitFile(Path file, BasicFileAttributes attrs)
+ throws IOException {
+ Files.delete(file);
+ return FileVisitResult.CONTINUE;
+ }
- @Override
- public FileVisitResult postVisitDirectory(Path dir, IOException e) throws IOException {
- // Directory is deleted after we've visited (deleted) all its contents, so it
- // should be empty by now.
- Files.delete(dir);
- return FileVisitResult.CONTINUE;
- }
- });
+ @Override
+ public FileVisitResult postVisitDirectory(Path dir, IOException e)
+ throws IOException {
+ // Directory is deleted after we've visited (deleted) all its contents, so
+ // it
+ // should be empty by now.
+ Files.delete(dir);
+ return FileVisitResult.CONTINUE;
+ }
+ });
}
/**
@@ -2110,21 +2108,14 @@
String payloadBinaryName = config.getPayloadBinaryName();
StringBuilder result = new StringBuilder();
- result.append("VirtualMachine(")
- .append("name:")
- .append(getName())
- .append(", ");
+ result.append("VirtualMachine(").append("name:").append(getName()).append(", ");
if (payloadBinaryName != null) {
result.append("payload:").append(payloadBinaryName).append(", ");
}
if (payloadConfigPath != null) {
- result.append("config:")
- .append(payloadConfigPath)
- .append(", ");
+ result.append("config:").append(payloadConfigPath).append(", ");
}
- result.append("package: ")
- .append(mPackageName)
- .append(")");
+ result.append("package: ").append(mPackageName).append(")");
return result.toString();
}
@@ -2232,7 +2223,7 @@
throws VirtualMachineException {
try (FileChannel idOutput = new FileOutputStream(mInstanceIdPath).getChannel();
FileChannel idInput = new AutoCloseInputStream(instanceIdFd).getChannel()) {
- idOutput.transferFrom(idInput, /*position=*/ 0, idInput.size());
+ idOutput.transferFrom(idInput, /* position= */ 0, idInput.size());
} catch (IOException e) {
throw new VirtualMachineException("failed to copy instance_id", e);
}
@@ -2242,7 +2233,7 @@
throws VirtualMachineException {
try (FileChannel instance = new FileOutputStream(mInstanceFilePath).getChannel();
FileChannel instanceInput = new AutoCloseInputStream(instanceFd).getChannel()) {
- instance.transferFrom(instanceInput, /*position=*/ 0, instanceInput.size());
+ instance.transferFrom(instanceInput, /* position= */ 0, instanceInput.size());
} catch (IOException e) {
throw new VirtualMachineException("failed to transfer instance image", e);
}
@@ -2252,7 +2243,7 @@
throws VirtualMachineException {
try (FileChannel storeOutput = new FileOutputStream(mEncryptedStoreFilePath).getChannel();
FileChannel storeInput = new AutoCloseInputStream(encryptedStoreFd).getChannel()) {
- storeOutput.transferFrom(storeInput, /*position=*/ 0, storeInput.size());
+ storeOutput.transferFrom(storeInput, /* position= */ 0, storeInput.size());
} catch (IOException e) {
throw new VirtualMachineException("failed to transfer encryptedstore image", e);
}
diff --git a/java/framework/src/android/system/virtualmachine/VirtualMachineCallback.java b/libs/framework-virtualization/src/android/system/virtualmachine/VirtualMachineCallback.java
similarity index 95%
rename from java/framework/src/android/system/virtualmachine/VirtualMachineCallback.java
rename to libs/framework-virtualization/src/android/system/virtualmachine/VirtualMachineCallback.java
index d72ba14..b077826 100644
--- a/java/framework/src/android/system/virtualmachine/VirtualMachineCallback.java
+++ b/libs/framework-virtualization/src/android/system/virtualmachine/VirtualMachineCallback.java
@@ -35,23 +35,28 @@
public interface VirtualMachineCallback {
/** @hide */
@Retention(RetentionPolicy.SOURCE)
- @IntDef(prefix = "ERROR_", value = {
- ERROR_UNKNOWN,
- ERROR_PAYLOAD_VERIFICATION_FAILED,
- ERROR_PAYLOAD_CHANGED,
- ERROR_PAYLOAD_INVALID_CONFIG
- })
+ @IntDef(
+ prefix = "ERROR_",
+ value = {
+ ERROR_UNKNOWN,
+ ERROR_PAYLOAD_VERIFICATION_FAILED,
+ ERROR_PAYLOAD_CHANGED,
+ ERROR_PAYLOAD_INVALID_CONFIG
+ })
@interface ErrorCode {}
/** Error code for all other errors not listed below. */
int ERROR_UNKNOWN = 0;
+
/**
* Error code indicating that the payload can't be verified due to various reasons (e.g invalid
* merkle tree, invalid formats, etc).
*/
int ERROR_PAYLOAD_VERIFICATION_FAILED = 1;
+
/** Error code indicating that the payload is verified, but has changed since the last boot. */
int ERROR_PAYLOAD_CHANGED = 2;
+
/** Error code indicating that the payload config is invalid. */
int ERROR_PAYLOAD_INVALID_CONFIG = 3;
diff --git a/java/framework/src/android/system/virtualmachine/VirtualMachineConfig.java b/libs/framework-virtualization/src/android/system/virtualmachine/VirtualMachineConfig.java
similarity index 98%
rename from java/framework/src/android/system/virtualmachine/VirtualMachineConfig.java
rename to libs/framework-virtualization/src/android/system/virtualmachine/VirtualMachineConfig.java
index 26dc3ab..7ae4a55 100644
--- a/java/framework/src/android/system/virtualmachine/VirtualMachineConfig.java
+++ b/libs/framework-virtualization/src/android/system/virtualmachine/VirtualMachineConfig.java
@@ -105,10 +105,9 @@
/** @hide */
@Retention(RetentionPolicy.SOURCE)
- @IntDef(prefix = "DEBUG_LEVEL_", value = {
- DEBUG_LEVEL_NONE,
- DEBUG_LEVEL_FULL
- })
+ @IntDef(
+ prefix = "DEBUG_LEVEL_",
+ value = {DEBUG_LEVEL_NONE, DEBUG_LEVEL_FULL})
public @interface DebugLevel {}
/**
@@ -164,9 +163,7 @@
@DebugLevel private final int mDebugLevel;
- /**
- * Whether to run the VM in protected mode, so the host can't access its memory.
- */
+ /** Whether to run the VM in protected mode, so the host can't access its memory. */
private final boolean mProtectedVm;
/**
@@ -181,9 +178,7 @@
/** The serial device for VM console input. */
@Nullable private final String mConsoleInputDevice;
- /**
- * Path within the APK to the payload config file that defines software aspects of the VM.
- */
+ /** Path within the APK to the payload config file that defines software aspects of the VM. */
@Nullable private final String mPayloadConfigPath;
/** Name of the payload binary file within the APK that will be executed within the VM. */
@@ -754,11 +749,9 @@
VirtualMachinePayloadConfig payloadConfig = new VirtualMachinePayloadConfig();
payloadConfig.payloadBinaryName = mPayloadBinaryName;
payloadConfig.extraApks = Collections.emptyList();
- vsConfig.payload =
- VirtualMachineAppConfig.Payload.payloadConfig(payloadConfig);
+ vsConfig.payload = VirtualMachineAppConfig.Payload.payloadConfig(payloadConfig);
} else {
- vsConfig.payload =
- VirtualMachineAppConfig.Payload.configPath(mPayloadConfigPath);
+ vsConfig.payload = VirtualMachineAppConfig.Payload.configPath(mPayloadConfigPath);
}
vsConfig.osName = mOs;
switch (mDebugLevel) {
diff --git a/java/framework/src/android/system/virtualmachine/VirtualMachineCustomImageConfig.java b/libs/framework-virtualization/src/android/system/virtualmachine/VirtualMachineCustomImageConfig.java
similarity index 99%
rename from java/framework/src/android/system/virtualmachine/VirtualMachineCustomImageConfig.java
rename to libs/framework-virtualization/src/android/system/virtualmachine/VirtualMachineCustomImageConfig.java
index 2da83a0..37dc8fa 100644
--- a/java/framework/src/android/system/virtualmachine/VirtualMachineCustomImageConfig.java
+++ b/libs/framework-virtualization/src/android/system/virtualmachine/VirtualMachineCustomImageConfig.java
@@ -211,8 +211,6 @@
return builder.build();
}
-
-
PersistableBundle toPersistableBundle() {
PersistableBundle pb = new PersistableBundle();
pb.putString(KEY_NAME, this.name);
diff --git a/java/framework/src/android/system/virtualmachine/VirtualMachineDescriptor.java b/libs/framework-virtualization/src/android/system/virtualmachine/VirtualMachineDescriptor.java
similarity index 100%
rename from java/framework/src/android/system/virtualmachine/VirtualMachineDescriptor.java
rename to libs/framework-virtualization/src/android/system/virtualmachine/VirtualMachineDescriptor.java
diff --git a/java/framework/src/android/system/virtualmachine/VirtualMachineException.java b/libs/framework-virtualization/src/android/system/virtualmachine/VirtualMachineException.java
similarity index 100%
rename from java/framework/src/android/system/virtualmachine/VirtualMachineException.java
rename to libs/framework-virtualization/src/android/system/virtualmachine/VirtualMachineException.java
diff --git a/java/framework/src/android/system/virtualmachine/VirtualMachineManager.java b/libs/framework-virtualization/src/android/system/virtualmachine/VirtualMachineManager.java
similarity index 98%
rename from java/framework/src/android/system/virtualmachine/VirtualMachineManager.java
rename to libs/framework-virtualization/src/android/system/virtualmachine/VirtualMachineManager.java
index abb2c81..242dc91 100644
--- a/java/framework/src/android/system/virtualmachine/VirtualMachineManager.java
+++ b/libs/framework-virtualization/src/android/system/virtualmachine/VirtualMachineManager.java
@@ -89,10 +89,10 @@
* @hide
*/
@Retention(RetentionPolicy.SOURCE)
- @IntDef(prefix = "CAPABILITY_", flag = true, value = {
- CAPABILITY_PROTECTED_VM,
- CAPABILITY_NON_PROTECTED_VM
- })
+ @IntDef(
+ prefix = "CAPABILITY_",
+ flag = true,
+ value = {CAPABILITY_PROTECTED_VM, CAPABILITY_NON_PROTECTED_VM})
public @interface Capability {}
/**
diff --git a/java/framework/src/android/system/virtualmachine/VirtualizationFrameworkInitializer.java b/libs/framework-virtualization/src/android/system/virtualmachine/VirtualizationFrameworkInitializer.java
similarity index 100%
rename from java/framework/src/android/system/virtualmachine/VirtualizationFrameworkInitializer.java
rename to libs/framework-virtualization/src/android/system/virtualmachine/VirtualizationFrameworkInitializer.java
diff --git a/java/framework/src/android/system/virtualmachine/VirtualizationService.java b/libs/framework-virtualization/src/android/system/virtualmachine/VirtualizationService.java
similarity index 100%
rename from java/framework/src/android/system/virtualmachine/VirtualizationService.java
rename to libs/framework-virtualization/src/android/system/virtualmachine/VirtualizationService.java
diff --git a/libs/libvm_payload/README.md b/libs/libvm_payload/README.md
index eb2ccf0..8ef1bac 100644
--- a/libs/libvm_payload/README.md
+++ b/libs/libvm_payload/README.md
@@ -9,7 +9,7 @@
available in the VM, and only 64 bit code is supported.
To create a VM and run the payload from Android see the [AVF Java
-APIs](../java/framework/README.md).
+APIs](../libs/framework-virtualization/README.md).
## Entry point
@@ -17,7 +17,7 @@
under the `lib/<ABI>` directory, like other JNI code.
The primary .so, which is specified as part of the VM configuration via
-[VirtualMachineConfig.Builder#setPayloadBinaryPath](https://android.googlesource.com/platform/packages/modules/Virtualization/+/refs/heads/main/java/framework/src/android/system/virtualmachine/VirtualMachineConfig.java),
+[VirtualMachineConfig.Builder#setPayloadBinaryPath](https://android.googlesource.com/platform/packages/modules/Virtualization/+/refs/heads/main/libs/framework-virtualization/src/android/system/virtualmachine/VirtualMachineConfig.java),
must define the entry point for the payload.
This entry point is a C function called `AVmPayload_main()`, as declared in