Class InstallableUnitSlicer

java.lang.Object
org.eclipse.tycho.p2maven.InstallableUnitSlicer

@Component(role=InstallableUnitSlicer.class) public class InstallableUnitSlicer extends Object
A strategy that computes a slice from a set of all units.
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    org.eclipse.equinox.p2.query.IQueryResult<org.eclipse.equinox.p2.metadata.IInstallableUnit>
    computeDependencies(Collection<org.eclipse.equinox.p2.metadata.IInstallableUnit> rootIus, org.eclipse.equinox.p2.query.IQueryable<org.eclipse.equinox.p2.metadata.IInstallableUnit> avaiableIUs)
    Computes a "slice" of a given set of IInstallableUnits that include as much of the requirements of the root units that are fulfilled by the available units.
    org.eclipse.equinox.p2.query.IQueryResult<org.eclipse.equinox.p2.metadata.IInstallableUnit>
    computeDirectDependencies(Collection<org.eclipse.equinox.p2.metadata.IInstallableUnit> rootIus, org.eclipse.equinox.p2.query.IQueryable<org.eclipse.equinox.p2.metadata.IInstallableUnit> avaiableIUs)
    Computes a "slice" that is the direct dependencies of the given IInstallableUnits in a way that the result contains any unit that satisfies a requirement in for rootIus

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • InstallableUnitSlicer

      public InstallableUnitSlicer()
  • Method Details

    • computeDependencies

      public org.eclipse.equinox.p2.query.IQueryResult<org.eclipse.equinox.p2.metadata.IInstallableUnit> computeDependencies(Collection<org.eclipse.equinox.p2.metadata.IInstallableUnit> rootIus, org.eclipse.equinox.p2.query.IQueryable<org.eclipse.equinox.p2.metadata.IInstallableUnit> avaiableIUs) throws org.eclipse.core.runtime.CoreException
      Computes a "slice" of a given set of IInstallableUnits that include as much of the requirements of the root units that are fulfilled by the available units. The slice is greedy, that means that as much as possible is included.
      Parameters:
      rootIus - the root units that are inspected for the slice
      avaiableIUs - the IQueryable of all units that could be used for the slice
      Returns:
      the result of the slicing
      Throws:
      org.eclipse.core.runtime.CoreException - if there is any error
    • computeDirectDependencies

      public org.eclipse.equinox.p2.query.IQueryResult<org.eclipse.equinox.p2.metadata.IInstallableUnit> computeDirectDependencies(Collection<org.eclipse.equinox.p2.metadata.IInstallableUnit> rootIus, org.eclipse.equinox.p2.query.IQueryable<org.eclipse.equinox.p2.metadata.IInstallableUnit> avaiableIUs) throws org.eclipse.core.runtime.CoreException
      Computes a "slice" that is the direct dependencies of the given IInstallableUnits in a way that the result contains any unit that satisfies a requirement in for rootIus
      Parameters:
      rootIus - the root InstallableUnits to take into account
      avaiableIUs - the IQueryable of all units that could be used for fulfilling a requirement
      Returns:
      the result of the slicing
      Throws:
      org.eclipse.core.runtime.CoreException - if there is any error