Class StandardEEResolutionHints

    • Field Summary

      Fields 
      Modifier and Type Field Description
      private java.util.Map<org.eclipse.equinox.p2.metadata.VersionedId,​org.eclipse.equinox.p2.metadata.IInstallableUnit> additionalUnits  
      private ExecutionEnvironment executionEnvironment  
      private java.util.Map<org.eclipse.equinox.p2.metadata.VersionedId,​org.eclipse.equinox.p2.metadata.IInstallableUnit> temporaryUnits  
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      (package private) static void addIUsFromEnvironment​(ExecutionEnvironment executionEnvironment, java.util.Map<org.eclipse.equinox.p2.metadata.VersionedId,​org.eclipse.equinox.p2.metadata.IInstallableUnit> units)  
      private static java.util.Map<org.eclipse.equinox.p2.metadata.VersionedId,​org.eclipse.equinox.p2.metadata.IInstallableUnit> computeAdditionalUnits​(ExecutionEnvironment executionEnvironment)
      Return IUs that represent packages provided by target JRE
      private java.util.Map<org.eclipse.equinox.p2.metadata.VersionedId,​org.eclipse.equinox.p2.metadata.IInstallableUnit> computeTemporaryAdditions​(java.util.Map<org.eclipse.equinox.p2.metadata.VersionedId,​org.eclipse.equinox.p2.metadata.IInstallableUnit> additionalUnits)  
      boolean equals​(java.lang.Object obj)  
      java.util.Collection<org.eclipse.equinox.p2.metadata.IRequirement> getMandatoryRequires()
      Returns requirements to execution environment units to ensure that a) the execution environment units are available, and b) the units are used to the resolution result.
      java.util.Collection<org.eclipse.equinox.p2.metadata.IInstallableUnit> getMandatoryUnits()
      Returns the list of installable units that shall be used during resolution.
      java.util.Collection<org.eclipse.equinox.p2.metadata.IInstallableUnit> getTemporaryAdditions()
      Returns the list of installable units that shall be temporarily added to the list of installable units, i.e.
      int hashCode()  
      boolean isEESpecificationUnit​(org.eclipse.equinox.p2.metadata.IInstallableUnit unit)
      Returns true for the "a.jre" installable unit that contains the specification of the execution environment.
      boolean isNonApplicableEEUnit​(org.eclipse.equinox.p2.metadata.IInstallableUnit iu)
      p2 repositories are polluted with useless a.jre/config.a.jre IUs.
      private static java.util.stream.Stream<org.eclipse.equinox.p2.metadata.Version> parseEECapabilityVersion​(org.eclipse.osgi.util.ManifestElement eeCapability)  
      (package private) static java.util.Collection<org.eclipse.equinox.p2.metadata.IProvidedCapability> parseSystemCapabilities​(java.lang.String systemCapabilities)  
      private static void put​(java.util.Map<org.eclipse.equinox.p2.metadata.VersionedId,​org.eclipse.equinox.p2.metadata.IInstallableUnit> units, org.eclipse.equinox.p2.metadata.IInstallableUnit unit)  
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • additionalUnits

        private final java.util.Map<org.eclipse.equinox.p2.metadata.VersionedId,​org.eclipse.equinox.p2.metadata.IInstallableUnit> additionalUnits
      • temporaryUnits

        private final java.util.Map<org.eclipse.equinox.p2.metadata.VersionedId,​org.eclipse.equinox.p2.metadata.IInstallableUnit> temporaryUnits
    • Constructor Detail

      • StandardEEResolutionHints

        public StandardEEResolutionHints​(ExecutionEnvironment executionEnvironment)
    • Method Detail

      • isNonApplicableEEUnit

        public boolean isNonApplicableEEUnit​(org.eclipse.equinox.p2.metadata.IInstallableUnit iu)
        p2 repositories are polluted with useless a.jre/config.a.jre IUs. These IUs do not represent current/desired JRE and can expose resolver to packages that are not actually available.
        Specified by:
        isNonApplicableEEUnit in interface ExecutionEnvironmentResolutionHints
      • isEESpecificationUnit

        public boolean isEESpecificationUnit​(org.eclipse.equinox.p2.metadata.IInstallableUnit unit)
        Description copied from interface: ExecutionEnvironmentResolutionHints
        Returns true for the "a.jre" installable unit that contains the specification of the execution environment. This method is used for finding the specification unit of custom profiles.
        Specified by:
        isEESpecificationUnit in interface ExecutionEnvironmentResolutionHints
      • computeAdditionalUnits

        private static java.util.Map<org.eclipse.equinox.p2.metadata.VersionedId,​org.eclipse.equinox.p2.metadata.IInstallableUnit> computeAdditionalUnits​(ExecutionEnvironment executionEnvironment)
        Return IUs that represent packages provided by target JRE
        Parameters:
        executionEnvironment -
      • addIUsFromEnvironment

        static void addIUsFromEnvironment​(ExecutionEnvironment executionEnvironment,
                                          java.util.Map<org.eclipse.equinox.p2.metadata.VersionedId,​org.eclipse.equinox.p2.metadata.IInstallableUnit> units)
      • getMandatoryUnits

        public java.util.Collection<org.eclipse.equinox.p2.metadata.IInstallableUnit> getMandatoryUnits()
        Description copied from interface: ExecutionEnvironmentResolutionHints
        Returns the list of installable units that shall be used during resolution. These units are added to the available units so that requirements of the capabilities of the execution environment can be resolved, and their use during resolution is enforced so that other units providing the same capabilities are not used (unless they are needed for other reasons).
        Specified by:
        getMandatoryUnits in interface ExecutionEnvironmentResolutionHints
      • computeTemporaryAdditions

        private java.util.Map<org.eclipse.equinox.p2.metadata.VersionedId,​org.eclipse.equinox.p2.metadata.IInstallableUnit> computeTemporaryAdditions​(java.util.Map<org.eclipse.equinox.p2.metadata.VersionedId,​org.eclipse.equinox.p2.metadata.IInstallableUnit> additionalUnits)
      • getTemporaryAdditions

        public java.util.Collection<org.eclipse.equinox.p2.metadata.IInstallableUnit> getTemporaryAdditions()
        Description copied from interface: ExecutionEnvironmentResolutionHints
        Returns the list of installable units that shall be temporarily added to the list of installable units, i.e. they shall be available during resolution but must be removed from the resolution result.
        Specified by:
        getTemporaryAdditions in interface ExecutionEnvironmentResolutionHints
      • put

        private static void put​(java.util.Map<org.eclipse.equinox.p2.metadata.VersionedId,​org.eclipse.equinox.p2.metadata.IInstallableUnit> units,
                                org.eclipse.equinox.p2.metadata.IInstallableUnit unit)
      • parseSystemCapabilities

        static java.util.Collection<org.eclipse.equinox.p2.metadata.IProvidedCapability> parseSystemCapabilities​(java.lang.String systemCapabilities)
      • parseEECapabilityVersion

        private static java.util.stream.Stream<org.eclipse.equinox.p2.metadata.Version> parseEECapabilityVersion​(org.eclipse.osgi.util.ManifestElement eeCapability)