public class PublishProductToolImpl extends java.lang.Object implements PublishProductTool
Modifier and Type | Field and Description |
---|---|
private java.lang.String |
buildQualifier |
private Interpolator |
interpolator |
private MavenLogger |
logger |
private PublisherActionRunner |
publisherRunner |
private PublishingRepository |
publishingRepository |
private P2TargetPlatform |
targetPlatform |
Constructor and Description |
---|
PublishProductToolImpl(PublisherActionRunner publisherRunner,
PublishingRepository publishingRepository,
P2TargetPlatform targetPlatform,
java.lang.String buildQualifier,
Interpolator interpolator,
MavenLogger logger) |
Modifier and Type | Method and Description |
---|---|
private static void |
addRootFeatures(ExpandedProduct product,
java.util.List<DependencySeed> seeds) |
private static org.eclipse.equinox.p2.publisher.IPublisherAdvice[] |
getProductSpecificAdviceFileAdvice(java.io.File productFile,
org.eclipse.equinox.internal.p2.publisher.eclipse.IProductDescriptor expandedProduct)
In addition to the p2.inf file in the project root (which is automatically picked up by p2,
see see
ProductAction.createAdviceFileAdvice() ), we allow a "xx.p2.inf" next to a
product file "xx.product". |
private static java.lang.String |
getProductSpecificP2InfName(java.lang.String productFileName) |
private static org.eclipse.equinox.internal.p2.publisher.eclipse.IProductDescriptor |
loadProductFile(java.io.File productFile) |
java.util.List<DependencySeed> |
publishProduct(java.io.File productFile,
java.io.File launcherBinaries,
java.lang.String flavor)
Publishes the given product definition.
|
private static org.eclipse.equinox.p2.metadata.IInstallableUnit |
selectUnit(java.util.Collection<org.eclipse.equinox.p2.metadata.IInstallableUnit> units,
java.lang.String id) |
private final P2TargetPlatform targetPlatform
private final PublisherActionRunner publisherRunner
private final PublishingRepository publishingRepository
private final java.lang.String buildQualifier
private final Interpolator interpolator
private final MavenLogger logger
public PublishProductToolImpl(PublisherActionRunner publisherRunner, PublishingRepository publishingRepository, P2TargetPlatform targetPlatform, java.lang.String buildQualifier, Interpolator interpolator, MavenLogger logger)
public java.util.List<DependencySeed> publishProduct(java.io.File productFile, java.io.File launcherBinaries, java.lang.String flavor) throws java.lang.IllegalArgumentException
PublishProductTool
publishProduct
in interface PublishProductTool
productFile
- A .product file as defined by the Eclipse PDElauncherBinaries
- A folder that contains the native Eclipse launcher binariesflavor
- The installation flavor the product shall be published forjava.lang.IllegalArgumentException
private static org.eclipse.equinox.p2.publisher.IPublisherAdvice[] getProductSpecificAdviceFileAdvice(java.io.File productFile, org.eclipse.equinox.internal.p2.publisher.eclipse.IProductDescriptor expandedProduct)
ProductAction.createAdviceFileAdvice()
), we allow a "xx.p2.inf" next to a
product file "xx.product".private static java.lang.String getProductSpecificP2InfName(java.lang.String productFileName)
private static void addRootFeatures(ExpandedProduct product, java.util.List<DependencySeed> seeds)
private static org.eclipse.equinox.internal.p2.publisher.eclipse.IProductDescriptor loadProductFile(java.io.File productFile) throws java.lang.IllegalArgumentException
java.lang.IllegalArgumentException
private static org.eclipse.equinox.p2.metadata.IInstallableUnit selectUnit(java.util.Collection<org.eclipse.equinox.p2.metadata.IInstallableUnit> units, java.lang.String id)