private static IRequirement optionalGreedyRequirementTo(String bundleId) { return MetadataFactory.createRequirement(IInstallableUnit.NAMESPACE_IU_ID, bundleId, VersionRange.emptyRange, null, true, true, true); }
IRequirement createRequirement(String namespace, String name, VersionRange range, String filter, boolean optional, boolean multiple, boolean greedy) { if (optional && optionalAction == OptionalResolutionAction.IGNORE) { return null; } return MetadataFactory.createRequirement(namespace, name, range, filter, false/* optional */, multiple, true/* greedy */); }
protected IRequirement createRequirement(String namespace, String name, VersionRange range, String filter, boolean optional, boolean multiple, boolean greedy) { return MetadataFactory.createRequirement(namespace, name, range, filter, optional, multiple, greedy); }
protected IRequirement createRequirement(String namespace, String name, VersionRange range, String filter, boolean optional, boolean multiple, boolean greedy) { return MetadataFactory.createRequirement(namespace, name, range, filter, optional, multiple, greedy); }
private void createRequirementFromPlatformURL(ArrayList<IRequirement> result, String url) { Pattern platformURL = Pattern.compile("platform:/(plugin|fragment)/([^/]*)(/)*.*"); Matcher m = platformURL.matcher(url); if (m.matches()) result.add(MetadataFactory.createRequirement(IInstallableUnit.NAMESPACE_IU_ID, m.group(2), VersionRange.emptyRange, null, false, false)); }
@Override public Collection<IRequirement> getMandatoryRequires() { VersionRange strictUnitRange = new VersionRange(unitVersion, true, unitVersion, true); return Collections.singleton(MetadataFactory.createRequirement(IInstallableUnit.NAMESPACE_IU_ID, unitName, strictUnitRange, null, false, false)); }
protected void addRequirement(List<IRequirement> reqsDeps, GenericSpecification requireCapSpec, ManifestElement[] rawRequireCapabilities) { BundleRequirement req = requireCapSpec.getRequirement(); String namespace = req.getNamespace(); Map<String, String> directives = req.getDirectives(); String capFilter = directives.get(Namespace.REQUIREMENT_FILTER_DIRECTIVE); boolean optional = directives.get(Namespace.REQUIREMENT_RESOLUTION_DIRECTIVE) == Namespace.RESOLUTION_OPTIONAL; boolean greedy = optional ? INSTALLATION_GREEDY.equals(directives.get(INSTALLATION_DIRECTIVE)) : true; IRequirement requireCap = MetadataFactory.createRequirement(namespace, capFilter, null, optional ? 0 : 1, 1, greedy); reqsDeps.add(requireCap); }
protected void addRequiredCapability(Set<IRequirement> required, String id, Version version, String filter, boolean optional) { VersionRange range = getVersionRange(version); required.add(MetadataFactory.createRequirement(IInstallableUnit.NAMESPACE_IU_ID, id, range, InstallableUnit.parseFilter(filter), optional, false)); }
protected void addRequireBundleRequirement(ArrayList<IRequirement> reqsDeps, BundleSpecification requiredBundle, ManifestElement[] rawRequireBundleHeader) { final boolean optional = requiredBundle.isOptional(); final boolean greedy; if (optional) greedy = INSTALLATION_GREEDY.equals(getInstallationDirective(requiredBundle.getName(), rawRequireBundleHeader)); else greedy = true; reqsDeps.add(MetadataFactory.createRequirement(CAPABILITY_NS_OSGI_BUNDLE, requiredBundle.getName(), PublisherHelper.fromOSGiVersionRange(requiredBundle.getVersionRange()), null, optional ? 0 : 1, 1, greedy)); }
protected void addRequireBundleRequirement(List<IRequirement> reqsDeps, BundleSpecification requiredBundle, ManifestElement[] rawRequireBundleHeader) { final boolean optional = requiredBundle.isOptional(); final boolean greedy; if (optional) { greedy = INSTALLATION_GREEDY.equals(getInstallationDirective(requiredBundle.getName(), rawRequireBundleHeader)); } else { greedy = true; } reqsDeps.add(MetadataFactory.createRequirement(CAPABILITY_NS_OSGI_BUNDLE, requiredBundle.getName(), PublisherHelper.fromOSGiVersionRange(requiredBundle.getVersionRange()), null, optional ? 0 : 1, 1, greedy)); }
protected void addImportPackageRequirement(ArrayList<IRequirement> reqsDeps, ImportPackageSpecification importSpec, ManifestElement[] rawImportPackageHeader) { VersionRange versionRange = PublisherHelper.fromOSGiVersionRange(importSpec.getVersionRange()); final boolean optional = isOptional(importSpec); final boolean greedy; if (optional) greedy = INSTALLATION_GREEDY.equals(getInstallationDirective(importSpec.getName(), rawImportPackageHeader)); else greedy = true; //TODO this needs to be refined to take into account all the attribute handled by imports reqsDeps.add(MetadataFactory.createRequirement(PublisherHelper.CAPABILITY_NS_JAVA_PACKAGE, importSpec.getName(), versionRange, null, optional ? 0 : 1, 1, greedy)); }
protected void addImportPackageRequirement(List<IRequirement> reqsDeps, ImportPackageSpecification importSpec, ManifestElement[] rawImportPackageHeader) { VersionRange versionRange = PublisherHelper.fromOSGiVersionRange(importSpec.getVersionRange()); final boolean optional = isOptional(importSpec); final boolean greedy; if (optional) { greedy = INSTALLATION_GREEDY.equals(getInstallationDirective(importSpec.getName(), rawImportPackageHeader)); } else { greedy = true; } //TODO this needs to be refined to take into account all the attribute handled by imports reqsDeps.add(MetadataFactory.createRequirement(PublisherHelper.CAPABILITY_NS_JAVA_PACKAGE, importSpec.getName(), versionRange, null, optional, false, greedy)); }
@Override protected void addRequireBundleRequirement(List<IRequirement> reqsDeps, BundleSpecification requiredBundle, ManifestElement[] rawRequireBundleHeader) { if (optionalAction == OptionalResolutionAction.OPTIONAL) { super.addRequireBundleRequirement(reqsDeps, requiredBundle, rawRequireBundleHeader); return; } VersionRange versionRange = PublisherHelper.fromOSGiVersionRange(requiredBundle.getVersionRange()); final boolean required = !requiredBundle.isOptional() || optionalAction == OptionalResolutionAction.REQUIRE; if (required) { reqsDeps.add(MetadataFactory.createRequirement(CAPABILITY_NS_OSGI_BUNDLE, requiredBundle.getName(), versionRange, null, 1, 1, true /* greedy */)); } }
private IRequirement createNegation(IInstallableUnit unit) { return MetadataFactory.createRequirement(IInstallableUnit.NAMESPACE_IU_ID, unit.getId(), // new VersionRange(unit.getVersion(), true, unit.getVersion(), true), null, 0, 0, false); }
private IRequirement createOptionalRequirement(IInstallableUnit iu) { return MetadataFactory.createRequirement(IInstallableUnit.NAMESPACE_IU_ID, iu.getId(), new VersionRange(iu.getVersion(), true, iu.getVersion(), true), null, true, false, true); }
protected IRequirement createRequirement(String requirement, String filter, int min, int max, boolean greedy, String description) { IExpression expr = ExpressionUtil.parse(substituteVersionAndQualifier(requirement)); IMatchExpression<IInstallableUnit> requirementExp = ExpressionUtil.getFactory().matchExpression(expr); IMatchExpression<IInstallableUnit> filterExp = InstallableUnit.parseFilter(filter); return MetadataFactory.createRequirement(requirementExp, filterExp, min, max, greedy, description); }
protected IRequirement createRequirement(String requirement, String filter, int min, int max, boolean greedy, String description) { IExpression expr = ExpressionUtil.parse(substituteVersionAndQualifier(requirement)); IMatchExpression<IInstallableUnit> requirementExp = ExpressionUtil.getFactory().matchExpression(expr); IMatchExpression<IInstallableUnit> filterExp = InstallableUnit.parseFilter(filter); return MetadataFactory.createRequirement(requirementExp, filterExp, min, max, greedy, description); }
private static IRequirement createStrictRequirementTo(IInstallableUnit unit) { VersionRange strictRange = new VersionRange(unit.getVersion(), true, unit.getVersion(), true); int min = 1; int max = Integer.MAX_VALUE; boolean greedy = true; IRequirement requirement = MetadataFactory.createRequirement(IInstallableUnit.NAMESPACE_IU_ID, unit.getId(), strictRange, unit.getFilter(), min, max, greedy); return requirement; } }
protected IRequirement createRequirement(String requirement, String filter, int min, int max, boolean greedy, String description) { IExpression expr = ExpressionUtil.parse(substituteVersionAndQualifier(requirement)); IMatchExpression<IInstallableUnit> requirementExp = ExpressionUtil.getFactory().matchExpression(expr); IMatchExpression<IInstallableUnit> filterExp = InstallableUnit.parseFilter(filter); return MetadataFactory.createRequirement(requirementExp, filterExp, min, max, greedy, description); }
protected IRequirement createRequirement(String requirement, String filter, int min, int max, boolean greedy, String description) { IExpression expr = ExpressionUtil.parse(substituteVersionAndQualifier(requirement)); IMatchExpression<IInstallableUnit> requirementExp = ExpressionUtil.getFactory().matchExpression(expr); IMatchExpression<IInstallableUnit> filterExp = InstallableUnit.parseFilter(filter); return MetadataFactory.createRequirement(requirementExp, filterExp, min, max, greedy, description); }