class ProcessControllerFactory {

  public ProcessController createProcessController(final ProcessControllerParameters parameters,
      final int pid) {
    notNull(parameters, "Invalid parameters '" + parameters + "' specified");
    isTrue(pid > 0, "Invalid pid '" + pid + "' specified");

    if (!isAttachAPIFound()) {
      return new FileProcessController(parameters, pid);
    }

    return new MBeanOrFileProcessController(parameters, pid);
  }

  public  ProcessControllerFactory();

}