Skip to main content
aboutsummaryrefslogblamecommitdiffstats
blob: 781f2f68292da6b39ac6927c59faecfc64772840 (plain) (tree)




















































                                                                                                                   
/*******************************************************************************
 * Copyright (c) 2012 Red Hat, Inc.
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v10.html
 *
 * Contributors:
 *      Red Hat, Inc. - initial API and implementation
 *******************************************************************************/

package org.eclipse.m2e.jdt;

import java.util.Set;

import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.jdt.launching.IRuntimeClasspathEntry;

import org.eclipse.m2e.core.project.IMavenProjectFacade;


/**
 * Configures Runtime Classpath for Launch configuration of a given workspace project, depending on its classifier.
 * 
 * @author Fred Bricon
 * @since 1.3
 */
public interface IClassifierClasspathProvider {

  /**
   * Checks if this provider applies to the given project / classifier combo.
   */
  boolean applies(IMavenProjectFacade mavenProjectFacade, String classifier);

  /**
   * @return the classifier key this provider applies to. Can be <code>null</code>.
   */
  String getClassifier();

  /**
   * Configures the test classpath of the given project
   */
  void setTestClasspath(Set<IRuntimeClasspathEntry> testClasspath, IMavenProjectFacade mavenProjectFacade,
      IProgressMonitor monitor) throws CoreException;

  /**
   * Configures the runtime classpath of the given project.
   */
  void setRuntimeClasspath(Set<IRuntimeClasspathEntry> runtimeClasspath, IMavenProjectFacade mavenProjectFacade,
      IProgressMonitor monitor) throws CoreException;

}

Back to the top