コード例 #1
0
  private void validateDbImportConfiguration(DbImportConfiguration config, Injector injector)
      throws MojoExecutionException {
    DataNodeDescriptor dataNodeDescriptor = config.createDataNodeDescriptor();
    DataSource dataSource = null;
    DbAdapter adapter = null;

    try {
      dataSource = injector.getInstance(DataSourceFactory.class).getDataSource(dataNodeDescriptor);
      adapter =
          injector
              .getInstance(DbAdapterFactory.class)
              .createAdapter(dataNodeDescriptor, dataSource);

      if (!adapter.supportsCatalogsOnReverseEngineering()
          && reverseEngineering.getCatalogs() != null
          && !reverseEngineering.getCatalogs().isEmpty()) {
        String message =
            "Your database does not support catalogs on reverse engineering. "
                + "It allows to connect to only one at the moment. Please don't note catalogs as param.";
        throw new MojoExecutionException(message);
      }
    } catch (Exception e) {
      throw new MojoExecutionException(
          "Error creating DataSource ("
              + dataSource
              + ") or DbAdapter ("
              + adapter
              + ") for DataNodeDescriptor ("
              + dataNodeDescriptor
              + ")",
          e);
    }
  }