/** * Adds a producer to the implementation. * * @param producer the producer to add */ public void add(Producer<ComponentType> producer) { producer.setParent(this); producers.put(producer.getName(), producer); }
/** * Adds a producer to this component. * * @param producer the producer to add */ public void add(Producer<Component> producer) { producer.setParent(this); producers.put(producer.getName(), producer); }
private void generateProducerInjectionMapping(Producer definition, WebComponentType type, Map<String, Map<String, InjectionSite>> mappings) { Map<String, InjectionSite> mapping = mappings.get(definition.getName()); if (mapping == null) { mapping = new HashMap<>(); mappings.put(definition.getName(), mapping); } for (Map.Entry<String, Map<InjectionSite, Injectable>> entry : type.getInjectionSites().entrySet()) { for (Map.Entry<InjectionSite, Injectable> siteMap : entry.getValue().entrySet()) { if (siteMap.getValue().getName().equals(definition.getName())) { mapping.put(entry.getKey(), siteMap.getKey()); } } } ServiceContract contract = definition.getServiceContract(); Class<?> interfaceClass = contract.getInterfaceClass(); // also inject the reference into the servlet context WebContextInjectionSite servletContextSite = new WebContextInjectionSite(interfaceClass, SERVLET_CONTEXT); mapping.put(SERVLET_CONTEXT_SITE, servletContextSite); }
/** * Add a producer and its associated injection site. * * @param producer the producer to add * @param injectionSite the injection site for the producer */ public void add(Producer<ComponentType> producer, InjectionSite injectionSite) { super.add(producer); Injectable injectable = new Injectable(InjectableType.PRODUCER, producer.getName()); addInjectionSite(injectionSite, injectable); injectionSiteMapping.put(producer, injectionSite); }
private void createProducers(Component<?> component, LogicalComponent<?> logicalComponent, ComponentType componentType) { for (Producer<ComponentType> producer : componentType.getProducers().values()) { String name = producer.getName(); URI producerUri = logicalComponent.getUri().resolve('#' + name); LogicalProducer logicalProducer = new LogicalProducer(producerUri, producer, logicalComponent); // producer is configured in the logicalComponent definition Producer<Component> componentProducer = component.getProducers().get(name); if (componentProducer != null) { for (URI uri : componentProducer.getTargets()) { addTarget(logicalProducer, uri, logicalComponent); } } else { for (URI uri : producer.getTargets()) { addTarget(logicalProducer, uri, logicalComponent); } } logicalComponent.addProducer(logicalProducer); } }
private void createProducers(Component<?> component, LogicalComponent<?> logicalComponent, ComponentType componentType) { for (Producer<ComponentType> producer : componentType.getProducers().values()) { String name = producer.getName(); URI producerUri = logicalComponent.getUri().resolve('#' + name); LogicalProducer logicalProducer = new LogicalProducer(producerUri, producer, logicalComponent); // producer is configured in the logicalComponent definition Producer<Component> componentProducer = component.getProducers().get(name); if (componentProducer != null) { for (URI uri : componentProducer.getTargets()) { addTarget(logicalProducer, uri, logicalComponent); } } else { for (URI uri : producer.getTargets()) { addTarget(logicalProducer, uri, logicalComponent); } } logicalComponent.addProducer(logicalProducer); } }
public PhysicalConnectionSource generateConnectionSource(LogicalProducer producer) throws Fabric3Exception { String producerName = producer.getDefinition().getName(); URI uri = producer.getParent().getUri(); JavaServiceContract serviceContract = (JavaServiceContract) producer.getDefinition().getServiceContract(); return new SpringConnectionSource(producerName, serviceContract.getInterfaceClass(), uri); }
public PhysicalConnectionSource generateConnectionSource(LogicalProducer producer) throws Fabric3Exception { String producerName = producer.getDefinition().getName(); URI uri = producer.getParent().getUri(); JavaServiceContract serviceContract = (JavaServiceContract) producer.getDefinition().getServiceContract(); return new SpringConnectionSource(producerName, serviceContract.getInterfaceClass(), uri); }