public boolean matches(IRequiredCapability toMatch) { if (!toMatch.getNamespace().equals(applyOn.getNamespace())) return false; if (!toMatch.getName().equals(applyOn.getName())) return false; if (toMatch.getRange().equals(applyOn.getRange())) return true; return toMatch.getRange().intersect(applyOn.getRange()) != null; }
private static String getFragmentHost(IInstallableUnit unit, String fragmentName) { Collection<IRequirement> requires = unit.getRequirements(); for (IRequirement iRequirement : requires) { if (iRequirement instanceof IRequiredCapability) { IRequiredCapability requiredCapability = (IRequiredCapability) iRequirement; if (fragmentName.equals(requiredCapability.getName())) { String fragmentHost = requiredCapability.getName(); if (!requiredCapability.getRange().toString().equals("0.0.0")) { //$NON-NLS-1$ fragmentHost += ";bundle-version=\"" + requiredCapability.getRange() + '"'; //$NON-NLS-1$ } return fragmentHost; } } } return null; }
private static String getFragmentHost(IInstallableUnit unit, String fragmentName) { Collection<IRequirement> requires = unit.getRequirements(); for (IRequirement iRequirement : requires) { if (iRequirement instanceof IRequiredCapability) { IRequiredCapability requiredCapability = (IRequiredCapability) iRequirement; if (fragmentName.equals(requiredCapability.getName())) { String fragmentHost = requiredCapability.getName(); if (!requiredCapability.getRange().toString().equals("0.0.0")) { //$NON-NLS-1$ fragmentHost += ";bundle-version=\"" + requiredCapability.getRange() + '"'; //$NON-NLS-1$ } return fragmentHost; } } } return null; }
@Override protected boolean isInteresting( IRequirement requirement ) { if ( !super.isInteresting( requirement ) ) { return false; } if ( requirement instanceof IRequiredCapability ) { return IncludedInstallableUnits.isSingleVersion( ( (IRequiredCapability) requirement ).getRange() ); } return false; } }
private static Collection<InstallableUnitInfo> getIncludedInstallableUnit( Map<IVersionedId, InstallableUnitInfo> nodes, IInstallableUnit parent ) { Set<InstallableUnitInfo> result = new LinkedHashSet<InstallableUnitInfo>(); for ( IRequirement r : parent.getRequirements() ) { if ( r instanceof IRequiredCapability ) { IRequiredCapability rc = (IRequiredCapability) r; if ( isSingleVersion( rc.getRange() ) ) { InstallableUnitInfo otherNode = nodes.get( new VersionedId( rc.getName(), rc.getRange().getMinimum() ) ); if ( otherNode != null ) { result.add( otherNode ); } } } } return result; }
return ((IRequiredCapability) element).getRange().getMaximum().toString();