public synchronized ConfigurationPersisterFactory getConfigurationPersisterFactory() {
if (configurationPersisterFactory == null) {
configurationPersisterFactory = new ConfigurationPersisterFactory() {
@Override
public ExtensibleConfigurationPersister createConfigurationPersister(ServerEnvironment serverEnvironment, ExecutorService executorService) {
ConfigurationFile configurationFile = serverEnvironment.getServerConfigurationFile();
if (runningModeControl.isReloaded()) {
configurationFile.resetBootFile(runningModeControl.isUseCurrentConfig());
}
QName rootElement = new QName(Namespace.CURRENT.getUriString(), "server");
StandaloneXml parser = new StandaloneXml(Module.getBootModuleLoader(), executorService, extensionRegistry);
BackupXmlConfigurationPersister persister = new BackupXmlConfigurationPersister(configurationFile, rootElement, parser, parser);
for (Namespace namespace : Namespace.domainValues()) {