Exemplo n.º 1
0
  protected void assertModuleLibDep(
      String moduleName,
      String depName,
      String classesPath,
      String sourcePath,
      String javadocPath) {
    LibraryOrderEntry lib = getModuleLibDep(moduleName, depName);

    assertModuleLibDepPath(
        lib,
        OrderRootType.CLASSES,
        classesPath == null ? null : Collections.singletonList(classesPath));
    assertModuleLibDepPath(
        lib,
        OrderRootType.SOURCES,
        sourcePath == null ? null : Collections.singletonList(sourcePath));
    assertModuleLibDepPath(
        lib,
        JavadocOrderRootType.getInstance(),
        javadocPath == null ? null : Collections.singletonList(javadocPath));
  }
  public static List<MavenImporter> getSuitableImporters(MavenProject p) {
    List<MavenImporter> result = null;
    Set<ModuleType> moduleTypes = null;

    for (MavenImporter importer : EXTENSION_POINT_NAME.getExtensions()) {
      if (importer.isApplicable(p)) {
        if (result == null) {
          result = new ArrayList<MavenImporter>();
          moduleTypes = new THashSet<ModuleType>();
        }

        result.add(importer);
        moduleTypes.add(importer.getModuleType());
      }
    }

    if (result == null) {
      return Collections.emptyList();
    }

    if (moduleTypes.size() <= 1) {
      return result;
    }

    // This code is reached when several importers say that they are applicable but they want to
    // have different module types.
    // Now we select one module type and return only those importers that are ok with it.
    // If possible - return at least one importer that explicitly supports packaging of the given
    // maven project.
    ModuleType moduleType = result.get(0).getModuleType();
    List<String> supportedPackagings = new ArrayList<String>();
    for (MavenImporter importer : result) {
      supportedPackagings.clear();
      importer.getSupportedPackagings(supportedPackagings);
      if (supportedPackagings.contains(p.getPackaging())) {
        moduleType = importer.getModuleType();
        break;
      }
    }

    final ModuleType finalModuleType = moduleType;
    return ContainerUtil.filter(
        result,
        new Condition<MavenImporter>() {
          public boolean value(final MavenImporter importer) {
            return importer.getModuleType() == finalModuleType;
          }
        });
  }
Exemplo n.º 3
0
 protected void importProjectWithProfiles(String... profiles) {
   doImportProjects(Collections.singletonList(myProjectPom), profiles);
 }