Program: 167946
Project: 167946
Buggy source:
public HostControllerEnvironment(Map<String,String> hostSystemProperties,boolean isRestart,InputStream stdin,PrintStream stdout,PrintStream stderr,String processName,InetAddress processControllerAddress,Integer processControllerPort,InetAddress hostControllerAddress,Integer hostControllerPort,String defaultJVM,String domainConfig,String hostConfig,boolean backupDomainFiles,boolean useCachedDc){
  if (hostSystemProperties == null) {
    throw new IllegalArgumentException("String_Node_Str");
  }
  this.hostSystemProperties=Collections.unmodifiableMap(hostSystemProperties);
  if (stdin == null) {
    throw new IllegalArgumentException("String_Node_Str");
  }
  this.stdin=stdin;
  if (stdout == null) {
    throw new IllegalArgumentException("String_Node_Str");
  }
  this.stdout=stdout;
  if (stderr == null) {
    throw new IllegalArgumentException("String_Node_Str");
  }
  this.stderr=stderr;
  if (processName == null) {
    throw new IllegalArgumentException("String_Node_Str");
  }
  if (processControllerAddress == null) {
    throw new IllegalArgumentException("String_Node_Str");
  }
  if (processControllerPort == null) {
    throw new IllegalArgumentException("String_Node_Str");
  }
  if (hostControllerAddress == null) {
    throw new IllegalArgumentException("String_Node_Str");
  }
  if (hostControllerPort == null) {
    throw new IllegalArgumentException("String_Node_Str");
  }
  this.processName=processName;
  this.processControllerPort=processControllerPort;
  this.processControllerAddress=processControllerAddress;
  this.hostControllerAddress=hostControllerAddress;
  this.hostControllerPort=hostControllerPort;
  this.isRestart=isRestart;
  File home=getFileFromProperty(HOME_DIR);
  if (home == null) {
    home=new File(System.getProperty("String_Node_Str"));
  }
  this.homeDir=home;
  System.setProperty(HOME_DIR,homeDir.getAbsolutePath());
  File tmp=getFileFromProperty(MODULES_DIR);
  if (tmp == null) {
    tmp=new File(this.homeDir,"String_Node_Str");
  }
  this.modulesDir=tmp;
  System.setProperty(MODULES_DIR,this.modulesDir.getAbsolutePath());
  tmp=getFileFromProperty(DOMAIN_BASE_DIR);
  if (tmp == null) {
    tmp=new File(this.homeDir,"String_Node_Str");
  }
  this.domainBaseDir=tmp;
  System.setProperty(DOMAIN_BASE_DIR,this.domainBaseDir.getAbsolutePath());
  tmp=getFileFromProperty(DOMAIN_CONFIG_DIR);
  if (tmp == null) {
    tmp=new File(this.domainBaseDir,"String_Node_Str");
  }
  this.domainConfigurationDir=tmp;
  System.setProperty(DOMAIN_CONFIG_DIR,this.domainConfigurationDir.getAbsolutePath());
  hostConfigurationFile=new ConfigurationFile(domainConfigurationDir,"String_Node_Str",hostConfig);
  domainConfigurationFile=new ConfigurationFile(domainConfigurationDir,"String_Node_Str",domainConfig);
  tmp=getFileFromProperty(DOMAIN_DEPLOYMENT_DIR);
  if (tmp == null) {
    tmp=new File(this.domainBaseDir,"String_Node_Str");
  }
  this.domainDeploymentDir=tmp;
  System.setProperty(DOMAIN_DEPLOYMENT_DIR,this.domainDeploymentDir.getAbsolutePath());
  tmp=getFileFromProperty(DOMAIN_SYSTEM_DEPLOYMENT_DIR);
  if (tmp == null) {
    tmp=new File(this.domainBaseDir,"String_Node_Str");
  }
  this.domainSystemDeploymentDir=tmp;
  System.setProperty(DOMAIN_DEPLOYMENT_DIR,this.domainDeploymentDir.getAbsolutePath());
  tmp=getFileFromProperty(DOMAIN_DATA_DIR);
  if (tmp == null) {
    tmp=new File(this.domainBaseDir,"String_Node_Str");
  }
  this.domainDataDir=tmp;
  System.setProperty(DOMAIN_DATA_DIR,this.domainDataDir.getAbsolutePath());
  tmp=getFileFromProperty(DOMAIN_LOG_DIR);
  if (tmp == null) {
    tmp=new File(this.domainBaseDir,"String_Node_Str");
  }
  this.domainLogDir=tmp;
  System.setProperty(DOMAIN_LOG_DIR,this.domainLogDir.getAbsolutePath());
  tmp=getFileFromProperty(DOMAIN_SERVERS_DIR);
  if (tmp == null) {
    tmp=new File(this.domainBaseDir,"String_Node_Str");
  }
  this.domainServersDir=tmp;
  System.setProperty(DOMAIN_SERVERS_DIR,this.domainServersDir.getAbsolutePath());
  tmp=getFileFromProperty(DOMAIN_TEMP_DIR);
  if (tmp == null) {
    tmp=new File(this.domainBaseDir,"String_Node_Str");
  }
  this.domainTempDir=tmp;
  System.setProperty(DOMAIN_TEMP_DIR,this.domainTempDir.getAbsolutePath());
  if (defaultJVM != null) {
    if (defaultJVM.equals("String_Node_Str")) {
      defaultJVM=DefaultJvmUtils.findJavaExecutable(DefaultJvmUtils.getCurrentJvmHome());
    }
    this.defaultJVM=new File(defaultJVM);
  }
 else {
    this.defaultJVM=null;
  }
  this.backupDomainFiles=backupDomainFiles;
  this.useCachedDc=useCachedDc;
}

Fixed version (ground truth):
public HostControllerEnvironment(Map<String,String> hostSystemProperties,boolean isRestart,InputStream stdin,PrintStream stdout,PrintStream stderr,String processName,InetAddress processControllerAddress,Integer processControllerPort,InetAddress hostControllerAddress,Integer hostControllerPort,String defaultJVM,String domainConfig,String hostConfig,boolean backupDomainFiles,boolean useCachedDc){
  if (hostSystemProperties == null) {
    throw new IllegalArgumentException("String_Node_Str");
  }
  this.hostSystemProperties=Collections.unmodifiableMap(hostSystemProperties);
  if (stdin == null) {
    throw new IllegalArgumentException("String_Node_Str");
  }
  this.stdin=stdin;
  if (stdout == null) {
    throw new IllegalArgumentException("String_Node_Str");
  }
  this.stdout=stdout;
  if (stderr == null) {
    throw new IllegalArgumentException("String_Node_Str");
  }
  this.stderr=stderr;
  if (processName == null) {
    throw new IllegalArgumentException("String_Node_Str");
  }
  if (processControllerAddress == null) {
    throw new IllegalArgumentException("String_Node_Str");
  }
  if (processControllerPort == null) {
    throw new IllegalArgumentException("String_Node_Str");
  }
  if (hostControllerAddress == null) {
    throw new IllegalArgumentException("String_Node_Str");
  }
  if (hostControllerPort == null) {
    throw new IllegalArgumentException("String_Node_Str");
  }
  this.processName=processName;
  this.processControllerPort=processControllerPort;
  this.processControllerAddress=processControllerAddress;
  this.hostControllerAddress=hostControllerAddress;
  this.hostControllerPort=hostControllerPort;
  this.isRestart=isRestart;
  File home=getFileFromProperty(HOME_DIR);
  if (home == null) {
    home=new File(System.getProperty("String_Node_Str"));
  }
  this.homeDir=home;
  System.setProperty(HOME_DIR,homeDir.getAbsolutePath());
  File tmp=getFileFromProperty(MODULES_DIR);
  if (tmp == null) {
    tmp=new File(this.homeDir,"String_Node_Str");
  }
  this.modulesDir=tmp;
  System.setProperty(MODULES_DIR,this.modulesDir.getAbsolutePath());
  tmp=getFileFromProperty(DOMAIN_BASE_DIR);
  if (tmp == null) {
    tmp=new File(this.homeDir,"String_Node_Str");
  }
  this.domainBaseDir=tmp;
  System.setProperty(DOMAIN_BASE_DIR,this.domainBaseDir.getAbsolutePath());
  tmp=getFileFromProperty(DOMAIN_CONFIG_DIR);
  if (tmp == null) {
    tmp=new File(this.domainBaseDir,"String_Node_Str");
  }
  this.domainConfigurationDir=tmp;
  System.setProperty(DOMAIN_CONFIG_DIR,this.domainConfigurationDir.getAbsolutePath());
  hostConfigurationFile=new ConfigurationFile(domainConfigurationDir,"String_Node_Str",hostConfig);
  domainConfigurationFile=new ConfigurationFile(domainConfigurationDir,"String_Node_Str",domainConfig);
  tmp=getFileFromProperty(DOMAIN_DEPLOYMENT_DIR);
  if (tmp == null) {
    tmp=new File(this.domainBaseDir,"String_Node_Str");
  }
  this.domainDeploymentDir=tmp;
  System.setProperty(DOMAIN_DEPLOYMENT_DIR,this.domainDeploymentDir.getAbsolutePath());
  tmp=getFileFromProperty(DOMAIN_DATA_DIR);
  if (tmp == null) {
    tmp=new File(this.domainBaseDir,"String_Node_Str");
  }
  this.domainDataDir=tmp;
  System.setProperty(DOMAIN_DATA_DIR,this.domainDataDir.getAbsolutePath());
  tmp=getFileFromProperty(DOMAIN_LOG_DIR);
  if (tmp == null) {
    tmp=new File(this.domainBaseDir,"String_Node_Str");
  }
  this.domainLogDir=tmp;
  System.setProperty(DOMAIN_LOG_DIR,this.domainLogDir.getAbsolutePath());
  tmp=getFileFromProperty(DOMAIN_SERVERS_DIR);
  if (tmp == null) {
    tmp=new File(this.domainBaseDir,"String_Node_Str");
  }
  this.domainServersDir=tmp;
  System.setProperty(DOMAIN_SERVERS_DIR,this.domainServersDir.getAbsolutePath());
  tmp=getFileFromProperty(DOMAIN_TEMP_DIR);
  if (tmp == null) {
    tmp=new File(this.domainBaseDir,"String_Node_Str");
  }
  this.domainTempDir=tmp;
  System.setProperty(DOMAIN_TEMP_DIR,this.domainTempDir.getAbsolutePath());
  if (defaultJVM != null) {
    if (defaultJVM.equals("String_Node_Str")) {
      defaultJVM=DefaultJvmUtils.findJavaExecutable(DefaultJvmUtils.getCurrentJvmHome());
    }
    this.defaultJVM=new File(defaultJVM);
  }
 else {
    this.defaultJVM=null;
  }
  this.backupDomainFiles=backupDomainFiles;
  this.useCachedDc=useCachedDc;
}