Search in sources :

Example 11 with Logger

use of org.apache.felix.resolver.Logger in project rt.equinox.framework by eclipse.

the class SystemBundleActivator method start.

@SuppressWarnings("deprecation")
public void start(BundleContext bc) throws Exception {
    registrations.clear();
    EquinoxBundle bundle = (EquinoxBundle) bc.getBundle();
    bundle.getEquinoxContainer().systemStart(bc);
    EquinoxConfiguration configuration = bundle.getEquinoxContainer().getConfiguration();
    installSecurityManager(configuration);
    bundle.getEquinoxContainer().getLogServices().start(bc);
    urlFactoryManager = new EquinoxFactoryManager(bundle.getEquinoxContainer());
    urlFactoryManager.installHandlerFactories(bc);
    FrameworkDebugOptions dbgOptions = (FrameworkDebugOptions) configuration.getDebugOptions();
    dbgOptions.start(bc);
    SecurityAdmin sa = bundle.getEquinoxContainer().getStorage().getSecurityAdmin();
    ClassLoader tccl = bundle.getEquinoxContainer().getContextFinder();
    registerLocations(bc, bundle.getEquinoxContainer().getLocations());
    register(bc, EnvironmentInfo.class, bundle.getEquinoxContainer().getConfiguration(), null);
    register(bc, PackageAdmin.class, bundle.getEquinoxContainer().getPackageAdmin(), null);
    register(bc, StartLevel.class, bundle.getEquinoxContainer().getStartLevel(), null);
    register(bc, PermissionAdmin.class, sa, null);
    register(bc, ConditionalPermissionAdmin.class, sa, null);
    Hashtable<String, Object> props = new Hashtable<>(7);
    props.clear();
    props.put(Constants.SERVICE_RANKING, Integer.MIN_VALUE);
    register(bc, Resolver.class, new ResolverImpl(new Logger(0), null), false, props);
    register(bc, DebugOptions.class, dbgOptions, null);
    if (tccl != null) {
        props.clear();
        // $NON-NLS-1$ //$NON-NLS-2$
        props.put("equinox.classloader.type", "contextClassLoader");
        register(bc, ClassLoader.class, tccl, props);
    }
    props.clear();
    // $NON-NLS-1$
    props.put("protocol", new String[] { BundleResourceHandler.OSGI_ENTRY_URL_PROTOCOL, BundleResourceHandler.OSGI_RESOURCE_URL_PROTOCOL });
    register(bc, URLConverter.class, new BundleURLConverter(), props);
    register(bc, BundleLocalization.class, new BundleLocalizationImpl(), null);
    // $NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
    boolean setTccl = "true".equals(bundle.getEquinoxContainer().getConfiguration().getConfiguration("eclipse.parsers.setTCCL", "true"));
    try {
        // $NON-NLS-1$
        register(bc, "javax.xml.parsers.SAXParserFactory", new XMLParsingServiceFactory(true, setTccl), false, null);
        // $NON-NLS-1$
        register(bc, "javax.xml.parsers.DocumentBuilderFactory", new XMLParsingServiceFactory(false, setTccl), false, null);
    } catch (NoClassDefFoundError e) {
    // ignore; on a platform with no javax.xml (Java 8 SE compact1 profile)
    }
    bundle.getEquinoxContainer().getStorage().getExtensionInstaller().startExtensionActivators(bc);
    // Add an options listener; we already read the options on initialization.
    // Here we are just allowing the options to change
    props.clear();
    props.put(DebugOptions.LISTENER_SYMBOLICNAME, EquinoxContainer.NAME);
    register(bc, DebugOptionsListener.class, bundle.getEquinoxContainer().getConfiguration().getDebug(), props);
    register(bc, DebugOptionsListener.class, bundle.getModule().getContainer(), props);
}
Also used : ResolverImpl(org.apache.felix.resolver.ResolverImpl) Logger(org.apache.felix.resolver.Logger) EquinoxFactoryManager(org.eclipse.osgi.internal.url.EquinoxFactoryManager) SecurityAdmin(org.eclipse.osgi.internal.permadmin.SecurityAdmin) BundleURLConverter(org.eclipse.osgi.storage.url.BundleURLConverter) FrameworkDebugOptions(org.eclipse.osgi.internal.debug.FrameworkDebugOptions) BundleLocalizationImpl(org.eclipse.osgi.storage.BundleLocalizationImpl)

Example 12 with Logger

use of org.apache.felix.resolver.Logger in project karaf by apache.

the class OfflineResolver method resolve.

public static void resolve(String resolutionFile) throws Exception {
    Map<String, Object> resolution;
    try (BufferedReader reader = Files.newBufferedReader(Paths.get(resolutionFile), StandardCharsets.UTF_8)) {
        resolution = (Map<String, Object>) JsonReader.read(reader);
    }
    final Repository globalRepository;
    if (resolution.containsKey("globalRepository")) {
        globalRepository = readRepository(resolution.get("globalRepository"));
    } else {
        globalRepository = null;
    }
    final Repository repository = readRepository(resolution.get("repository"));
    Resolver resolver = new ResolverImpl(new Logger(Logger.LOG_ERROR));
    Map<Resource, List<Wire>> wiring = resolver.resolve(new ResolveContext() {

        private final CandidateComparator candidateComparator = new CandidateComparator(r -> 0);

        @Override
        public Collection<Resource> getMandatoryResources() {
            List<Resource> resources = new ArrayList<>();
            Requirement req = new RequirementImpl(null, IDENTITY_NAMESPACE, Collections.emptyMap(), Collections.emptyMap(), SimpleFilter.parse("(" + IDENTITY_NAMESPACE + "=root)"));
            Collection<Capability> identities = repository.findProviders(Collections.singleton(req)).get(req);
            for (Capability identity : identities) {
                resources.add(identity.getResource());
            }
            return resources;
        }

        @Override
        public List<Capability> findProviders(Requirement requirement) {
            List<Capability> caps = new ArrayList<>();
            Map<Requirement, Collection<Capability>> resMap = repository.findProviders(Collections.singleton(requirement));
            Collection<Capability> res = resMap != null ? resMap.get(requirement) : null;
            if (res != null && !res.isEmpty()) {
                caps.addAll(res);
            } else if (globalRepository != null) {
                // Only bring in external resources for non optional requirements
                if (!RESOLUTION_OPTIONAL.equals(requirement.getDirectives().get(RESOLUTION_DIRECTIVE))) {
                    resMap = globalRepository.findProviders(Collections.singleton(requirement));
                    res = resMap != null ? resMap.get(requirement) : null;
                    if (res != null && !res.isEmpty()) {
                        caps.addAll(res);
                    }
                }
            }
            // Sort caps
            caps.sort(candidateComparator);
            return caps;
        }

        @Override
        public int insertHostedCapability(List<Capability> capabilities, HostedCapability hostedCapability) {
            int idx = Collections.binarySearch(capabilities, hostedCapability, candidateComparator);
            if (idx < 0) {
                idx = Math.abs(idx + 1);
            }
            capabilities.add(idx, hostedCapability);
            return idx;
        }

        @Override
        public boolean isEffective(Requirement requirement) {
            return true;
        }

        @Override
        public Map<Resource, Wiring> getWirings() {
            return Collections.emptyMap();
        }
    });
}
Also used : ResolveContext(org.osgi.service.resolver.ResolveContext) RequirementImpl(org.apache.felix.utils.resource.RequirementImpl) Resolver(org.osgi.service.resolver.Resolver) HostedCapability(org.osgi.service.resolver.HostedCapability) Capability(org.osgi.resource.Capability) Resource(org.osgi.resource.Resource) ResolverImpl(org.apache.felix.resolver.ResolverImpl) Logger(org.apache.felix.resolver.Logger) HostedCapability(org.osgi.service.resolver.HostedCapability) Requirement(org.osgi.resource.Requirement) Repository(org.osgi.service.repository.Repository) BaseRepository(org.apache.felix.utils.repository.BaseRepository) BufferedReader(java.io.BufferedReader) Collection(java.util.Collection) ArrayList(java.util.ArrayList) List(java.util.List) Map(java.util.Map)

Example 13 with Logger

use of org.apache.felix.resolver.Logger in project felix by apache.

the class Main method main.

public static void main(String[] args) throws ResolutionException {
    Resolver resolver = new ResolverImpl(new Logger(Logger.LOG_DEBUG));
    Map<Resource, Wiring> wirings = new HashMap<Resource, Wiring>();
    Map<Requirement, List<Capability>> candMap = new HashMap<Requirement, List<Capability>>();
    List<Resource> mandatory;
    ResolveContextImpl rci;
    Map<Resource, List<Wire>> wireMap;
    System.out.println("\nSCENARIO 1\n");
    mandatory = populateScenario1(wirings, candMap);
    rci = new ResolveContextImpl(wirings, candMap, mandatory, Collections.EMPTY_LIST);
    wireMap = resolver.resolve(rci);
    System.out.println("RESULT " + wireMap);
    System.out.println("\nSCENARIO 2\n");
    mandatory = populateScenario2(wirings, candMap);
    rci = new ResolveContextImpl(wirings, candMap, mandatory, Collections.EMPTY_LIST);
    wireMap = resolver.resolve(rci);
    System.out.println("RESULT " + wireMap);
    System.out.println("\nSCENARIO 3\n");
    mandatory = populateScenario3(wirings, candMap);
    rci = new ResolveContextImpl(wirings, candMap, mandatory, Collections.EMPTY_LIST);
    wireMap = resolver.resolve(rci);
    System.out.println("RESULT " + wireMap);
    System.out.println("\nSCENARIO 4\n");
    mandatory = populateScenario4(wirings, candMap);
    rci = new ResolveContextImpl(wirings, candMap, mandatory, Collections.EMPTY_LIST);
    try {
        wireMap = resolver.resolve(rci);
        System.err.println("UNEXPECTED RESULT " + wireMap);
    } catch (ResolutionException e) {
        System.out.println("EXPECTED ResolutionException:");
        e.printStackTrace(System.out);
    }
    System.out.println("\nSCENARIO 5\n");
    mandatory = populateScenario5(wirings, candMap);
    rci = new ResolveContextImpl(wirings, candMap, mandatory, Collections.EMPTY_LIST);
    try {
        wireMap = resolver.resolve(rci);
        System.err.println("UNEXPECTED RESULT " + wireMap);
    } catch (ResolutionException e) {
        System.out.println("EXPECTED ResolutionException:");
        e.printStackTrace(System.out);
    }
    System.out.println("\nSCENARIO 6\n");
    mandatory = populateScenario6(wirings, candMap);
    rci = new ResolveContextImpl(wirings, candMap, mandatory, Collections.EMPTY_LIST);
    wireMap = resolver.resolve(rci);
    System.out.println("RESULT " + wireMap);
    System.out.println("\nSCENARIO 7\n");
    mandatory = populateScenario7(wirings, candMap);
    rci = new ResolveContextImpl(wirings, candMap, mandatory, Collections.EMPTY_LIST);
    wireMap = resolver.resolve(rci);
    System.out.println("RESULT " + wireMap);
}
Also used : Resolver(org.osgi.service.resolver.Resolver) GenericCapability(org.apache.felix.resolver.test.util.GenericCapability) PackageCapability(org.apache.felix.resolver.test.util.PackageCapability) Capability(org.osgi.resource.Capability) BundleCapability(org.apache.felix.resolver.test.util.BundleCapability) HashMap(java.util.HashMap) Resource(org.osgi.resource.Resource) ResolverImpl(org.apache.felix.resolver.ResolverImpl) Logger(org.apache.felix.resolver.Logger) Wiring(org.osgi.resource.Wiring) ResolutionException(org.osgi.service.resolver.ResolutionException) Requirement(org.osgi.resource.Requirement) BundleRequirement(org.apache.felix.resolver.test.util.BundleRequirement) GenericRequirement(org.apache.felix.resolver.test.util.GenericRequirement) PackageRequirement(org.apache.felix.resolver.test.util.PackageRequirement) ArrayList(java.util.ArrayList) List(java.util.List) ResolveContextImpl(org.apache.felix.resolver.test.util.ResolveContextImpl)

Example 14 with Logger

use of org.apache.felix.resolver.Logger in project felix by apache.

the class ResolverTest method testScenario14.

@Test
public void testScenario14() throws Exception {
    ResolverImpl resolver = new ResolverImpl(new Logger(Logger.LOG_DEBUG), 1);
    Map<Resource, Wiring> wirings = new HashMap<Resource, Wiring>();
    Map<Requirement, List<Capability>> candMap = new HashMap<Requirement, List<Capability>>();
    ResourceImpl a1 = new ResourceImpl("A", IdentityNamespace.TYPE_BUNDLE, Version.parseVersion("1.0.0"));
    Capability a1_hostCap = addCap(a1, HostNamespace.HOST_NAMESPACE, "A");
    Capability a1_pkgCap = addCap(a1, PackageNamespace.PACKAGE_NAMESPACE, "a");
    Requirement a1_pkgReq = addReq(a1, PackageNamespace.PACKAGE_NAMESPACE, "a.impl");
    ResourceImpl a2 = new ResourceImpl("A", IdentityNamespace.TYPE_BUNDLE, Version.parseVersion("2.0.0"));
    Capability a2_hostCap = addCap(a2, HostNamespace.HOST_NAMESPACE, "A");
    Capability a2_pkgCap = addCap(a2, PackageNamespace.PACKAGE_NAMESPACE, "a");
    Requirement a2_pkgReq = addReq(a2, PackageNamespace.PACKAGE_NAMESPACE, "a.impl");
    ResourceImpl a3 = new ResourceImpl("A", IdentityNamespace.TYPE_BUNDLE, Version.parseVersion("3.0.0"));
    Capability a3_hostCap = addCap(a3, HostNamespace.HOST_NAMESPACE, "A");
    Capability a3_pkgCap = addCap(a3, PackageNamespace.PACKAGE_NAMESPACE, "a");
    Requirement a3_pkgReq = addReq(a3, PackageNamespace.PACKAGE_NAMESPACE, "a.impl");
    ResourceImpl f1 = new ResourceImpl("F1", IdentityNamespace.TYPE_FRAGMENT, Version.emptyVersion);
    Requirement f1_hostReq = addReq(f1, HostNamespace.HOST_NAMESPACE, "A");
    Capability f1_pkgCap = addCap(f1, PackageNamespace.PACKAGE_NAMESPACE, "a.impl");
    Requirement f1_pkgReq = addReq(f1, PackageNamespace.PACKAGE_NAMESPACE, "a");
    ResourceImpl b1 = new ResourceImpl("B");
    Requirement b_pkgReq1 = addReq(b1, PackageNamespace.PACKAGE_NAMESPACE, "a");
    candMap.put(a1_pkgReq, Collections.singletonList(f1_pkgCap));
    candMap.put(a2_pkgReq, Collections.singletonList(f1_pkgCap));
    candMap.put(a3_pkgReq, Collections.singletonList(f1_pkgCap));
    candMap.put(b_pkgReq1, Arrays.asList(a3_pkgCap, a2_pkgCap, a1_pkgCap));
    candMap.put(f1_pkgReq, Arrays.asList(a3_pkgCap, a2_pkgCap, a1_pkgCap));
    candMap.put(f1_hostReq, Arrays.asList(a3_hostCap, a2_hostCap, a1_hostCap));
    ResolveContextImpl rci = new ResolveContextImpl(wirings, candMap, Arrays.<Resource>asList(b1, a1, a2, a3), Collections.<Resource>emptyList());
    Map<Resource, List<Wire>> wireMap = resolver.resolve(rci);
    // all bundles should be resolved
    assertEquals(5, wireMap.size());
    List<Wire> wiresB = wireMap.get(b1);
    assertNotNull(wiresB);
    assertEquals(1, wiresB.size());
    assertEquals(a3, wiresB.get(0).getProvider());
    assertEquals(a3_pkgCap, wiresB.get(0).getCapability());
    // There should be three hosts
    List<Wire> wiresF1 = wireMap.get(f1);
    assertNotNull(wiresF1);
    assertEquals(3, wiresF1.size());
}
Also used : GenericCapability(org.apache.felix.resolver.test.util.GenericCapability) PackageCapability(org.apache.felix.resolver.test.util.PackageCapability) Capability(org.osgi.resource.Capability) BundleCapability(org.apache.felix.resolver.test.util.BundleCapability) HashMap(java.util.HashMap) Resource(org.osgi.resource.Resource) ResolverImpl(org.apache.felix.resolver.ResolverImpl) Logger(org.apache.felix.resolver.Logger) Wire(org.osgi.resource.Wire) Wiring(org.osgi.resource.Wiring) Requirement(org.osgi.resource.Requirement) BundleRequirement(org.apache.felix.resolver.test.util.BundleRequirement) GenericRequirement(org.apache.felix.resolver.test.util.GenericRequirement) PackageRequirement(org.apache.felix.resolver.test.util.PackageRequirement) ResourceImpl(org.apache.felix.resolver.test.util.ResourceImpl) ArrayList(java.util.ArrayList) List(java.util.List) ResolveContextImpl(org.apache.felix.resolver.test.util.ResolveContextImpl) Test(org.junit.Test)

Example 15 with Logger

use of org.apache.felix.resolver.Logger in project felix by apache.

the class ResolverTest method testScenario15.

@Test
public void testScenario15() throws Exception {
    ResolverImpl resolver = new ResolverImpl(new Logger(Logger.LOG_DEBUG), 1);
    Map<Requirement, List<Capability>> candMap = new HashMap<Requirement, List<Capability>>();
    ResourceImpl exporter = new ResourceImpl("exporter", IdentityNamespace.TYPE_BUNDLE, Version.parseVersion("1.0.0"));
    Capability exporter_hostCap = addCap(exporter, HostNamespace.HOST_NAMESPACE, "exporter");
    Capability exporter_pkgCap = addCap(exporter, PackageNamespace.PACKAGE_NAMESPACE, "exporter");
    ResourceImpl exporterFrag = new ResourceImpl("exporter.frag", IdentityNamespace.TYPE_FRAGMENT, Version.emptyVersion);
    Requirement exporterFrag_hostReq = addReq(exporterFrag, HostNamespace.HOST_NAMESPACE, "exporter");
    ResourceImpl host1 = new ResourceImpl("host", IdentityNamespace.TYPE_BUNDLE, Version.parseVersion("1.0.0"));
    Capability host1_hostCap = addCap(host1, HostNamespace.HOST_NAMESPACE, "host");
    Requirement host1_pkgReq = addReq(host1, PackageNamespace.PACKAGE_NAMESPACE, "exporter");
    ResourceImpl host2 = new ResourceImpl("host", IdentityNamespace.TYPE_BUNDLE, Version.parseVersion("2.0.0"));
    Capability host2_hostCap = addCap(host2, HostNamespace.HOST_NAMESPACE, "host");
    Requirement host2_pkgReq = addReq(host2, PackageNamespace.PACKAGE_NAMESPACE, "exporter");
    ResourceImpl host3 = new ResourceImpl("host", IdentityNamespace.TYPE_BUNDLE, Version.parseVersion("3.0.0"));
    Capability host3_hostCap = addCap(host3, HostNamespace.HOST_NAMESPACE, "host");
    Requirement host3_pkgReq = addReq(host3, PackageNamespace.PACKAGE_NAMESPACE, "exporter");
    ResourceImpl host4 = new ResourceImpl("host", IdentityNamespace.TYPE_BUNDLE, Version.parseVersion("4.0.0"));
    Capability host4_hostCap = addCap(host4, HostNamespace.HOST_NAMESPACE, "host");
    Requirement host4_pkgReq = addReq(host4, PackageNamespace.PACKAGE_NAMESPACE, "exporter");
    ResourceImpl host5 = new ResourceImpl("host", IdentityNamespace.TYPE_BUNDLE, Version.parseVersion("5.0.0"));
    Capability host5_hostCap = addCap(host5, HostNamespace.HOST_NAMESPACE, "host");
    Requirement host5_pkgReq = addReq(host5, PackageNamespace.PACKAGE_NAMESPACE, "exporter");
    ResourceImpl host6 = new ResourceImpl("host", IdentityNamespace.TYPE_BUNDLE, Version.parseVersion("6.0.0"));
    Capability host6_hostCap = addCap(host6, HostNamespace.HOST_NAMESPACE, "host");
    Requirement host6_pkgReq = addReq(host6, PackageNamespace.PACKAGE_NAMESPACE, "exporter");
    ResourceImpl host7 = new ResourceImpl("host", IdentityNamespace.TYPE_BUNDLE, Version.parseVersion("7.0.0"));
    Capability host7_hostCap = addCap(host7, HostNamespace.HOST_NAMESPACE, "host");
    Requirement host7_pkgReq = addReq(host7, PackageNamespace.PACKAGE_NAMESPACE, "exporter");
    ResourceImpl host8 = new ResourceImpl("host", IdentityNamespace.TYPE_BUNDLE, Version.parseVersion("8.0.0"));
    Capability host8_hostCap = addCap(host8, HostNamespace.HOST_NAMESPACE, "host");
    Requirement host8_pkgReq = addReq(host8, PackageNamespace.PACKAGE_NAMESPACE, "exporter");
    ResourceImpl hostFrag = new ResourceImpl("host.frag", IdentityNamespace.TYPE_FRAGMENT, Version.emptyVersion);
    Requirement hostFrag_hostReq = addReq(hostFrag, HostNamespace.HOST_NAMESPACE, "host");
    Requirement hostFrag_pkgReq = addReq(hostFrag, PackageNamespace.PACKAGE_NAMESPACE, "exporter");
    candMap.put(exporterFrag_hostReq, Collections.singletonList(exporter_hostCap));
    candMap.put(host1_pkgReq, Collections.singletonList(exporter_pkgCap));
    candMap.put(host2_pkgReq, Collections.singletonList(exporter_pkgCap));
    candMap.put(host3_pkgReq, Collections.singletonList(exporter_pkgCap));
    candMap.put(host4_pkgReq, Collections.singletonList(exporter_pkgCap));
    candMap.put(host5_pkgReq, Collections.singletonList(exporter_pkgCap));
    candMap.put(host6_pkgReq, Collections.singletonList(exporter_pkgCap));
    candMap.put(host7_pkgReq, Collections.singletonList(exporter_pkgCap));
    candMap.put(host8_pkgReq, Collections.singletonList(exporter_pkgCap));
    candMap.put(hostFrag_pkgReq, Collections.singletonList(exporter_pkgCap));
    candMap.put(hostFrag_hostReq, Arrays.asList(host1_hostCap, host2_hostCap, host3_hostCap, host4_hostCap, host5_hostCap, host6_hostCap, host7_hostCap, host8_hostCap));
    ResolveContextImpl rci = new ResolveContextImpl(Collections.<Resource, Wiring>emptyMap(), candMap, Arrays.<Resource>asList(host1, host2, host3, host4, exporter, exporterFrag, host5, host6, host7, host8, hostFrag), Collections.<Resource>emptyList());
    Map<Resource, List<Wire>> wireMap = resolver.resolve(rci);
    // all bundles should be resolved
    assertEquals(11, wireMap.size());
    // There should be 8 hosts
    List<Wire> wiresHostFrag = wireMap.get(hostFrag);
    assertNotNull(wiresHostFrag);
    assertEquals(8, wiresHostFrag.size());
    List<Wire> wiresHost1 = wireMap.get(host1);
    assertNotNull(wiresHost1);
}
Also used : GenericCapability(org.apache.felix.resolver.test.util.GenericCapability) PackageCapability(org.apache.felix.resolver.test.util.PackageCapability) Capability(org.osgi.resource.Capability) BundleCapability(org.apache.felix.resolver.test.util.BundleCapability) HashMap(java.util.HashMap) Resource(org.osgi.resource.Resource) ResolverImpl(org.apache.felix.resolver.ResolverImpl) Logger(org.apache.felix.resolver.Logger) Wire(org.osgi.resource.Wire) Requirement(org.osgi.resource.Requirement) BundleRequirement(org.apache.felix.resolver.test.util.BundleRequirement) GenericRequirement(org.apache.felix.resolver.test.util.GenericRequirement) PackageRequirement(org.apache.felix.resolver.test.util.PackageRequirement) ResourceImpl(org.apache.felix.resolver.test.util.ResourceImpl) ArrayList(java.util.ArrayList) List(java.util.List) ResolveContextImpl(org.apache.felix.resolver.test.util.ResolveContextImpl) Test(org.junit.Test)

Aggregations

Logger (org.apache.felix.resolver.Logger)29 ResolverImpl (org.apache.felix.resolver.ResolverImpl)29 Test (org.junit.Test)26 ArrayList (java.util.ArrayList)21 List (java.util.List)21 Resource (org.osgi.resource.Resource)21 Capability (org.osgi.resource.Capability)19 Requirement (org.osgi.resource.Requirement)19 HashMap (java.util.HashMap)18 ResolveContextImpl (org.apache.felix.resolver.test.util.ResolveContextImpl)18 BundleCapability (org.apache.felix.resolver.test.util.BundleCapability)17 BundleRequirement (org.apache.felix.resolver.test.util.BundleRequirement)17 GenericCapability (org.apache.felix.resolver.test.util.GenericCapability)17 GenericRequirement (org.apache.felix.resolver.test.util.GenericRequirement)17 PackageCapability (org.apache.felix.resolver.test.util.PackageCapability)17 PackageRequirement (org.apache.felix.resolver.test.util.PackageRequirement)17 Wiring (org.osgi.resource.Wiring)15 Wire (org.osgi.resource.Wire)13 Resolver (org.osgi.service.resolver.Resolver)12 ResolveContext (org.osgi.service.resolver.ResolveContext)10