private ManagedServerBootCmdFactory createBootFactory(
     final String serverName, final ModelNode domainModel) {
   final String hostControllerName = domainController.getLocalHostInfo().getLocalHostName();
   final ModelNode hostModel = domainModel.require(HOST).require(hostControllerName);
   return new ManagedServerBootCmdFactory(
       serverName, domainModel, hostModel, environment, domainController.getExpressionResolver());
 }
 private void addSystemProperties(
     final ModelNode source, final Map<String, String> props, boolean boottimeOnly) {
   if (source.hasDefined(SYSTEM_PROPERTY)) {
     for (Property prop : source.get(SYSTEM_PROPERTY).asPropertyList()) {
       ModelNode propResource = prop.getValue();
       try {
         if (boottimeOnly
             && !SystemPropertyResourceDefinition.BOOT_TIME
                 .resolveModelAttribute(domainController.getExpressionResolver(), propResource)
                 .asBoolean()) {
           continue;
         }
       } catch (OperationFailedException e) {
         throw new IllegalStateException(e);
       }
       String val = propResource.hasDefined(VALUE) ? propResource.get(VALUE).asString() : null;
       props.put(prop.getName(), val);
     }
   }
 }