
org.aion.avm.core.AvmConfiguration Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of javaee-rt Show documentation
Show all versions of javaee-rt Show documentation
An Execution Environment for Java SCOREs
package org.aion.avm.core;
/**
* A class to describe how to configure an AVM instance, when requesting that it be created.
* The overall strategy with this class is just to make it into a plain-old-data struct, with each field set to a "default" value
* which can be overwritten by a caller.
*/
public class AvmConfiguration {
/**
* Decides if debug data and names need to be preserved during deployment transformation.
* Note that this must be set to false as a requirement of the security model but that prohibits local debugging.
* Hence, it should only be enabled for embedded use-cases during development, never in actual deployment in a node.
* Some security violations will change into fatal assertion errors, instead of being rejected, if this is enabled.
*/
public boolean preserveDebuggability;
/**
* If set to true, will log details of uncaught contract exceptions to stderr.
* Enabling this is useful for local debugging cases.
*/
public boolean enableVerboseContractErrors;
/**
* If set to true, will pass calls to Context.println to the underlying stdout console.
* If false, this call is still legal but will have no effect.
*/
public boolean enableContextPrintln;
public AvmConfiguration() {
// By default, none of our verbose options are enabled.
this.preserveDebuggability = false;
this.enableVerboseContractErrors = false;
this.enableContextPrintln = false;
}
public AvmConfiguration(AvmConfiguration conf) {
this.preserveDebuggability = conf.preserveDebuggability;
this.enableVerboseContractErrors = conf.enableVerboseContractErrors;
this.enableContextPrintln = conf.enableContextPrintln;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy