public void instantiateCompositeWires(Composite composite, LogicalCompositeComponent parent, InstantiationContext context) {
for (WireDefinition definition : composite.getWires()) {
Target referenceTarget = definition.getReferenceTarget();
LogicalReference reference = resolveReference(referenceTarget, parent, context);
if (reference == null) {
continue;
}
Target serviceTarget = definition.getServiceTarget();
LogicalService service = resolveService(reference, serviceTarget, parent, context);
if (service == null) {
continue;
}
QName deployable = parent.getDeployable();
LogicalWire wire = new LogicalWire(parent, reference, service, deployable);
wire.setReplaces(definition.isReplace());
String referenceBindingName = referenceTarget.getBinding();
String serviceBindingName = serviceTarget.getBinding();
resolveBindings(reference, referenceBindingName, service, wire, serviceBindingName, context);
parent.addWire(reference, wire);
}
}