Package org.jboss.gravia.resource

Examples of org.jboss.gravia.resource.Requirement


        try {
            ResolveContext context = new DefaultResolveContext(env, mandatory, null);
            Set<Entry<Resource, List<Wire>>> wiremap = resolver.resolve(context).entrySet();
            for (Entry<Resource, List<Wire>> entry : wiremap) {
                for (Wire wire : entry.getValue()) {
                    Requirement req = wire.getRequirement();
                    Resource provider = wire.getProvider();
                    mapping.put(req, provider);
                }
            }
            unstatisfied.clear();
View Full Code Here


            DefaultWiring envwiring = new DefaultWiring(envres, null, null);
            Wiring auxwiring = entry.getValue();
            for (Wire auxwire : auxwiring.getProvidedResourceWires(null)) {
                Capability auxcap = auxwire.getCapability();
                Capability envcap = findTargetCapability(auxcap);
                Requirement auxreq = auxwire.getRequirement();
                Requirement envreq = findTargetRequirement(auxreq);
                envwiring.addProvidedWire(new DefaultWire(envreq, envcap));
            }
            for (Wire auxwire : auxwiring.getRequiredResourceWires(null)) {
                Capability auxcap = auxwire.getCapability();
                Capability envcap = findTargetCapability(auxcap);
                Requirement auxreq = auxwire.getRequirement();
                Requirement envreq = findTargetRequirement(auxreq);
                envwiring.addRequiredWire(new DefaultWire(envreq, envcap));
            }
            AbstractEnvironment absenv = AbstractEnvironment.assertAbstractEnvironment(environment);
            absenv.putWiring(envres, envwiring);
        }
View Full Code Here

        LOGGER.debug("Finding unsatisfied reqs");

        Iterator<Requirement> itun = unstatisfied.iterator();
        while (itun.hasNext()) {
            Requirement req = itun.next();

            // Ignore requirements that are already in the environment
            if (!env.findProviders(req).isEmpty()) {
                continue;
            }
View Full Code Here

        try {
            ResolveContext context = new DefaultResolveContext(env, mandatory, null);
            Set<Entry<Resource, List<Wire>>> wiremap = resolver.resolve(context).entrySet();
            for (Entry<Resource, List<Wire>> entry : wiremap) {
                for (Wire wire : entry.getValue()) {
                    Requirement req = wire.getRequirement();
                    Resource provider = wire.getProvider();
                    mapping.put(req, provider);
                }
            }
            unstatisfied.clear();
View Full Code Here

                        }
                        int index = reqs.size() - 1;
                        while (index >= 0) {
                            if (candidates.get(index).hasNext()) {
                                Wire wire = candidates.get(index).next();
                                Requirement req = wire.getRequirement();
                                wires.put(req, wire);
                                hasNext = true;
                                return true;
                            } else {
                                if (index > 0 && candidates.get(index - 1).hasNext()) {
                                    initWiremap(context, index);
                                }
                                index--;
                            }
                        }
                    } catch (ResolutionException ex) {
                        resolutionException = ex;
                    }
                    hasNext = false;
                    return false;
                }

                private void initWiremap(final ResolveContext context, int start) throws ResolutionException {
                    for (int i = start; i < reqs.size(); i++) {
                        Requirement req = reqs.get(i);
                        RequirementCandidates reqcan = new RequirementCandidates(req);
                        Iterator<Wire> itcan = reqcan.iterator(context);
                        if (start == 0) {
                            candidates.add(itcan);
                        } else {
View Full Code Here

    }

    @Override
    public Requirement addIdentityRequirement(String symbolicName, VersionRange range, Map<String, Object> atts, Map<String, String> dirs) {
        IllegalArgumentAssertion.assertNotNull(symbolicName, "symbolicName");
        Requirement ireq = addRequirement(IdentityNamespace.IDENTITY_NAMESPACE, symbolicName);
        if (range != null) {
            ireq.getAttributes().put(IdentityNamespace.CAPABILITY_VERSION_ATTRIBUTE, range);
        }
        if (atts != null) {
            ireq.getAttributes().putAll(atts);
        }
        if (dirs != null) {
            ireq.getDirectives().putAll(dirs);
        }
        return ireq;
    }
View Full Code Here

                        }
                        int index = reqs.size() - 1;
                        while (index >= 0) {
                            if (candidates.get(index).hasNext()) {
                                Wire wire = candidates.get(index).next();
                                Requirement req = wire.getRequirement();
                                wires.put(req, wire);
                                hasNext = true;
                                return true;
                            } else {
                                if (index > 0 && candidates.get(index - 1).hasNext()) {
                                    initWiremap(context, index);
                                }
                                index--;
                            }
                        }
                    } catch (ResolutionException ex) {
                        resolutionException = ex;
                    }
                    hasNext = false;
                    return false;
                }

                private void initWiremap(final ResolveContext context, int start) throws ResolutionException {
                    for (int i = start; i < reqs.size(); i++) {
                        Requirement req = reqs.get(i);
                        RequirementCandidates reqcan = new RequirementCandidates(req);
                        Iterator<Wire> itcan = reqcan.iterator(context);
                        if (start == 0) {
                            candidates.add(itcan);
                        } else {
View Full Code Here

    @Override
    public List<Requirement> getResourceRequirements(String namespace) {
        List<Requirement> result = new ArrayList<Requirement>();
        for (Wire wire : getRequiredResourceWires(namespace)) {
            Requirement req = wire.getRequirement();
            result.add(req);
        }
        return Collections.unmodifiableList(result);
    }
View Full Code Here

    @Override
    public List<Wire> getRequiredResourceWires(String namespace) {
        List<Wire> result = new ArrayList<Wire>();
        for (Wire wire : required) {
            Requirement req = wire.getRequirement();
            if (namespace == null || namespace.equals(req.getNamespace())) {
                result.add(wire);
            }
        }
        return Collections.unmodifiableList(result);
    }
View Full Code Here

        return addIdentityRequirement(symbolicName, version, null,  null);
    }

    @Override
    public Requirement addIdentityRequirement(String symbolicName, VersionRange version, Map<String, Object> atts, Map<String, String> dirs) {
        Requirement ireq = addRequirement(IdentityNamespace.IDENTITY_NAMESPACE, symbolicName);
        if (version != null) {
            ireq.getAttributes().put(IdentityNamespace.CAPABILITY_VERSION_ATTRIBUTE, version);
        }
        if (atts != null) {
            ireq.getAttributes().putAll(atts);
        }
        if (dirs != null) {
            ireq.getDirectives().putAll(dirs);
        }
        return ireq;
    }
View Full Code Here

TOP

Related Classes of org.jboss.gravia.resource.Requirement

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.