public AbstractWiring(Resource resource, List<Wire> reqwires, List<Wire> provwires) { if (resource == null) throw new IllegalArgumentException("Null resource"); this.resource = resource; if (reqwires != null) { for (Wire wire : reqwires) { addRequiredWire(wire); } } if (provwires != null) { for (Wire wire : provwires) { addProvidedWire(wire); } } }
@Override public List<Capability> getResourceCapabilities(String namespace) { List<Capability> result = new ArrayList<Capability>(); for (Wire wire : getProvidedResourceWires(namespace)) { Capability req = wire.getCapability(); result.add(req); } return Collections.unmodifiableList(result); }
@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); }
private int getCapabilityIndex(Capability cap) { return getResource().getCapabilities(cap.getNamespace()).indexOf(cap); }
int capindex = getCapabilityIndex(cap); for (Wire aux : nswires) { int auxindex = getCapabilityIndex(aux.getCapability()); if (auxindex < capindex) { index++;
} else { for (Wire wire : reqwires) { reqwiring.addRequiredWire(wire); context.putWiring(provider, provwiring); provwiring.addProvidedWire(wire);