private Map<String, String> handleDefaultReferenceMappings(Component<SpringImplementation> component, ComponentType type) { Map<String, String> mappings = new HashMap<>(); for (Reference reference : type.getReferences().values()) { SpringReference springReference = (SpringReference) reference; String defaultStr = springReference.getDefaultValue(); if (defaultStr == null) { continue; } String refName = springReference.getName(); if (component.getReferences().containsKey(refName)) { continue; } mappings.put(defaultStr, refName); } return mappings; }
private Map<String, String> handleDefaultReferenceMappings(Component<SpringImplementation> component, ComponentType type) { Map<String, String> mappings = new HashMap<>(); for (Reference reference : type.getReferences().values()) { SpringReference springReference = (SpringReference) reference; String defaultStr = springReference.getDefaultValue(); if (defaultStr == null) { continue; } String refName = springReference.getName(); if (component.getReferences().containsKey(refName)) { continue; } mappings.put(defaultStr, refName); } return mappings; }
/** * Gets the explicit reference associated with this logical reference. * * @return Component reference if defined, otherwise null. */ public Reference<Component> getComponentReference() { return getParent().getDefinition().getReferences().get(getDefinition().getName()); }
private void createReferences(Component<?> component, LogicalComponent<?> logicalComponent, ComponentType componentType) { for (Reference<ComponentType> reference : componentType.getReferences().values()) { String name = reference.getName(); URI referenceUri = logicalComponent.getUri().resolve('#' + name); LogicalReference logicalReference = new LogicalReference(referenceUri, reference, logicalComponent); Reference<Component> componentReference = component.getReferences().get(name); if (componentReference != null) { // reference is configured in the component definition for (Binding binding : componentReference.getBindings()) { LogicalBinding<Binding> logicalBinding = new LogicalBinding<>(binding, logicalReference); logicalReference.addBinding(logicalBinding); } for (Binding binding : componentReference.getCallbackBindings()) { LogicalBinding<Binding> logicalBinding = new LogicalBinding<>(binding, logicalReference); logicalReference.addCallbackBinding(logicalBinding); } } else { // check if reference is configured with bindings in the component type for (Binding binding : reference.getBindings()) { LogicalBinding<Binding> logicalBinding = new LogicalBinding<>(binding, logicalReference); logicalReference.addBinding(logicalBinding); } for (Binding binding : reference.getCallbackBindings()) { LogicalBinding<Binding> logicalBinding = new LogicalBinding<>(binding, logicalReference); logicalReference.addCallbackBinding(logicalBinding); } } logicalComponent.addReference(logicalReference); } }
private void createReferences(Component<?> component, LogicalComponent<?> logicalComponent, ComponentType componentType) { for (Reference<ComponentType> reference : componentType.getReferences().values()) { String name = reference.getName(); URI referenceUri = logicalComponent.getUri().resolve('#' + name); LogicalReference logicalReference = new LogicalReference(referenceUri, reference, logicalComponent); Reference<Component> componentReference = component.getReferences().get(name); if (componentReference != null) { // reference is configured in the component definition for (Binding binding : componentReference.getBindings()) { LogicalBinding<Binding> logicalBinding = new LogicalBinding<>(binding, logicalReference); logicalReference.addBinding(logicalBinding); } for (Binding binding : componentReference.getCallbackBindings()) { LogicalBinding<Binding> logicalBinding = new LogicalBinding<>(binding, logicalReference); logicalReference.addCallbackBinding(logicalBinding); } } else { // check if reference is configured with bindings in the component type for (Binding binding : reference.getBindings()) { LogicalBinding<Binding> logicalBinding = new LogicalBinding<>(binding, logicalReference); logicalReference.addBinding(logicalBinding); } for (Binding binding : reference.getCallbackBindings()) { LogicalBinding<Binding> logicalBinding = new LogicalBinding<>(binding, logicalReference); logicalReference.addCallbackBinding(logicalBinding); } } logicalComponent.addReference(logicalReference); } }