public static boolean isFragment(Resource resource) { IdentityCapability identity = getIdentityCapability(resource); if (identity == null) return false; return IdentityNamespace.TYPE_FRAGMENT.equals(identity.getAttributes() .get(IdentityNamespace.CAPABILITY_TYPE_ATTRIBUTE)); }
public static boolean isFragment(Resource resource) { IdentityCapability identity = getIdentityCapability(resource); if (identity == null) return false; return IdentityNamespace.TYPE_FRAGMENT.equals(identity.getAttributes() .get(IdentityNamespace.CAPABILITY_TYPE_ATTRIBUTE)); }
public Requirement getIdentity(Resource resource) { IdentityCapability identityCapability = getIdentityCapability(resource); return createRequirementFromCapability(identityCapability).buildSyntheticRequirement(); }
public Requirement getIdentity(Resource resource) { IdentityCapability identityCapability = getIdentityCapability(resource); return createRequirementFromCapability(identityCapability).buildSyntheticRequirement(); }
public IdentityCapability getResource(String bsn, String version) { Requirement requirement = CapReqBuilder.createBundleRequirement(bsn, version) .buildSyntheticRequirement(); List<Capability> result = getContext().findProviders(requirement); if (result == null || result.isEmpty()) return null; return ResourceUtils.getIdentityCapability(result.get(0) .getResource()); }
public IdentityCapability getResource(String bsn, String version) { Requirement requirement = CapReqBuilder.createBundleRequirement(bsn, version) .buildSyntheticRequirement(); List<Capability> result = getContext().findProviders(requirement); if (result == null || result.isEmpty()) return null; return ResourceUtils.getIdentityCapability(result.get(0) .getResource()); }
@Override public int compareTo(Resource o) { IdentityCapability me = ResourceUtils.getIdentityCapability(this); IdentityCapability them = ResourceUtils.getIdentityCapability(o); String myName = me.osgi_identity(); String theirName = them.osgi_identity(); if (myName == theirName) return 0; if (myName == null) return -1; if (theirName == null) return 1; int n = myName.compareTo(theirName); if (n != 0) return n; Version myVersion = me.version(); Version theirVersion = them.version(); if (myVersion == theirVersion) return 0; if (myVersion == null) return -1; if (theirVersion == null) return 1; return myVersion.compareTo(theirVersion); }
@Override public int compareTo(Resource o) { IdentityCapability me = ResourceUtils.getIdentityCapability(this); IdentityCapability them = ResourceUtils.getIdentityCapability(o); String myName = me.osgi_identity(); String theirName = them.osgi_identity(); if (myName == theirName) return 0; if (myName == null) return -1; if (theirName == null) return 1; int n = myName.compareTo(theirName); if (n != 0) return n; Version myVersion = me.version(); Version theirVersion = them.version(); if (myVersion == theirVersion) return 0; if (myVersion == null) return -1; if (theirVersion == null) return 1; return myVersion.compareTo(theirVersion); }
private void index(Resource r) { String bsn; Version version; IdentityCapability bc = ResourceUtils.getIdentityCapability(r); if (bc != null) { bsn = bc.osgi_identity(); version = bc.version(); } else { logger.debug("No identity for {}, trying info", r); InfoCapability info = getInfo(r); if (info == null) { // No way to index this logger.debug("Also no info, giving up indexing"); return; } bsn = info.name(); version = info.version(); if (version == null) version = Version.LOWEST; } Map<Version, ResourceInfo> map = index.get(bsn); if (map == null) { map = new HashMap<>(); index.put(bsn, map); } map.put(version, new ResourceInfo(r)); }
private void index(Resource r) { String bsn; Version version; IdentityCapability bc = ResourceUtils.getIdentityCapability(r); if (bc != null) { bsn = bc.osgi_identity(); version = bc.version(); } else { logger.debug("No identity for {}, trying info", r); InfoCapability info = getInfo(r); if (info == null) { // No way to index this logger.debug("Also no info, giving up indexing"); return; } bsn = info.name(); version = info.version(); if (version == null) version = Version.LOWEST; } Map<Version, ResourceInfo> map = index.get(bsn); if (map == null) { map = new HashMap<>(); index.put(bsn, map); } map.put(version, new ResourceInfo(r)); }
.next(); IdentityCapability idCap = ResourceUtils.getIdentityCapability(cap.getResource()); Map<String, Object> idAttrs = idCap.getAttributes(); String id = (String) idAttrs.get(IdentityNamespace.IDENTITY_NAMESPACE);
.next(); IdentityCapability idCap = ResourceUtils.getIdentityCapability(cap.getResource()); Map<String, Object> idAttrs = idCap.getAttributes(); String id = (String) idAttrs.get(IdentityNamespace.IDENTITY_NAMESPACE);
.stream() .collect(toMap(capability -> { IdentityCapability identity = ResourceUtils.getIdentityCapability(capability.getResource()); return new ArtifactID(identity.osgi_identity(), identity.version(), (String) capability.getAttributes() .get(MD5_ATTRIBUTE));
/** * Get the run bundles from the resolution. Resolve if this has not happened * yet. */ public List<Container> getRunBundles() throws Exception { Map<Resource, List<Wire>> resolution = this.resolution; if (resolution == null) { resolution = resolve(); } List<Container> containers = new ArrayList<>(); for (Resource r : resolution.keySet()) { IdentityCapability identity = ResourceUtils.getIdentityCapability(r); if (identity == null) { error("Identity for %s not found", r); continue; } Container bundle = project.getBundle(identity.osgi_identity(), identity.version() .toString(), Strategy.EXACT, null); if (bundle == null) { error("Bundle for %s-%s not found", identity.osgi_identity(), identity.version()); continue; } containers.add(bundle); } return containers; }
/** * Get the run bundles from the resolution. Resolve if this has not happened * yet. */ public List<Container> getRunBundles() throws Exception { Map<Resource, List<Wire>> resolution = this.resolution; if (resolution == null) { resolution = resolve(); } List<Container> containers = new ArrayList<>(); for (Resource r : resolution.keySet()) { IdentityCapability identity = ResourceUtils.getIdentityCapability(r); if (identity == null) { error("Identity for %s not found", r); continue; } Container bundle = project.getBundle(identity.osgi_identity(), identity.version() .toString(), Strategy.EXACT, null); if (bundle == null) { error("Bundle for %s-%s not found", identity.osgi_identity(), identity.version()); continue; } containers.add(bundle); } return containers; }
.stream() .collect(toMap(capability -> { IdentityCapability identity = ResourceUtils.getIdentityCapability(capability.getResource()); return new ArtifactID(identity.osgi_identity(), identity.version(), (String) capability.getAttributes() .get(MD5_ATTRIBUTE));
/** * Create a VersionedClause by applying a version range mask to the * resource! Masks are defined by * {@link aQute.bnd.osgi.Macro#_range(String[])}. If the resource should * represent a project in the bnd workspace, then instead the VersionClause * will refer to it as a snapshot version: e.g. <bsn>;version=snapshot */ public static VersionedClause toVersionClause(Resource resource, String mask) { Capability idCap = getIdentityCapability(resource); String identity = getIdentity(idCap); String versionString; if (resource.getCapabilities(WORKSPACE_NAMESPACE) .isEmpty()) { Macro macro = new Macro(new Processor()); Version version = getVersion(idCap); versionString = macro._range(new String[] { "range", mask, version.toString() }); } else { versionString = "snapshot"; } Attrs attribs = new Attrs(); attribs.put(Constants.VERSION_ATTRIBUTE, versionString); return new VersionedClause(identity, attribs); }
/** * Create a VersionedClause by applying a version range mask to the * resource! Masks are defined by * {@link aQute.bnd.osgi.Macro#_range(String[])}. If the resource should * represent a project in the bnd workspace, then instead the VersionClause * will refer to it as a snapshot version: e.g. <bsn>;version=snapshot */ public static VersionedClause toVersionClause(Resource resource, String mask) { Capability idCap = getIdentityCapability(resource); String identity = getIdentity(idCap); String versionString; if (resource.getCapabilities(WORKSPACE_NAMESPACE) .isEmpty()) { Macro macro = new Macro(new Processor()); Version version = getVersion(idCap); versionString = macro._range(new String[] { "range", mask, version.toString() }); } else { versionString = "snapshot"; } Attrs attribs = new Attrs(); attribs.put(Constants.VERSION_ATTRIBUTE, versionString); return new VersionedClause(identity, attribs); }
private void resource(Resource r) { IdentityCapability id = ResourceUtils.getIdentityCapability(r); String resolveError = null; if (!context.isSystemResource(r) && level >= 3 && id != null)
private void resource(Resource r) { IdentityCapability id = ResourceUtils.getIdentityCapability(r); String resolveError = null; if (!context.isSystemResource(r) && level >= 3 && id != null)