/** * Add a reference to a named bean as a constructor arg. * @see #addConstructorArgValue(Object) */ public BeanDefinitionBuilder addConstructorArgReference(String beanName) { this.beanDefinition.getConstructorArgumentValues().addIndexedArgumentValue( this.constructorArgIndex++, new RuntimeBeanReference(beanName)); return this; }
/** * Add an indexed constructor arg value. The current index is tracked internally * and all additions are at the present point. */ public BeanDefinitionBuilder addConstructorArgValue(@Nullable Object value) { this.beanDefinition.getConstructorArgumentValues().addIndexedArgumentValue( this.constructorArgIndex++, value); return this; }
/** * Add a reference to a named bean as a constructor arg. * @see #addConstructorArgValue(Object) */ public BeanDefinitionBuilder addConstructorArgReference(String beanName) { this.beanDefinition.getConstructorArgumentValues().addIndexedArgumentValue( this.constructorArgIndex++, new RuntimeBeanReference(beanName)); return this; }
/** * Add an indexed constructor arg value. The current index is tracked internally * and all additions are at the present point. */ public BeanDefinitionBuilder addConstructorArgValue(@Nullable Object value) { this.beanDefinition.getConstructorArgumentValues().addIndexedArgumentValue( this.constructorArgIndex++, value); return this; }
.getConstructorArgumentValues(); if (args.getArgumentCount() > 0) { ConstructorArgumentValues.ValueHolder value
.getConstructorArgumentValues(); if (args.getArgumentCount() > 0) { ConstructorArgumentValues.ValueHolder value
getConstructorArgumentValues().addArgumentValues(other.getConstructorArgumentValues()); getConstructorArgumentValues().addArgumentValues(other.getConstructorArgumentValues()); getPropertyValues().addPropertyValues(other.getPropertyValues()); setResourceDescription(other.getResourceDescription());
/** * Add an indexed constructor arg value. The current index is tracked internally * and all additions are at the present point. */ public BeanDefinitionBuilder addConstructorArgValue(Object value) { this.beanDefinition.getConstructorArgumentValues().addIndexedArgumentValue( this.constructorArgIndex++, value); return this; }
/** * Add a reference to a named bean as a constructor arg. * @see #addConstructorArgValue(Object) */ public BeanDefinitionBuilder addConstructorArgReference(String beanName) { this.beanDefinition.getConstructorArgumentValues().addIndexedArgumentValue( this.constructorArgIndex++, new RuntimeBeanReference(beanName)); return this; }
getConstructorArgumentValues().addArgumentValues(other.getConstructorArgumentValues()); getConstructorArgumentValues().addArgumentValues(other.getConstructorArgumentValues()); getPropertyValues().addPropertyValues(other.getPropertyValues()); setResourceDescription(other.getResourceDescription());
@Override protected BeanDefinitionBuilder getBuilder(Element element, ParserContext parserContext) { BeanDefinitionBuilder builder = BeanDefinitionBuilder.genericBeanDefinition(WebFluxRequestExecutingMessageHandler.class); String webClientRef = element.getAttribute("web-client"); if (StringUtils.hasText(webClientRef)) { builder.getBeanDefinition() .getConstructorArgumentValues() .addIndexedArgumentValue(1, new RuntimeBeanReference(webClientRef)); } return builder; }
@Override public void addReferenceConstructorArg(String beanName) { beanDefinition.getConstructorArgumentValues().addGenericArgumentValue(new RuntimeBeanReference(beanName)); }
@Override protected void parseTransformer(Element element, ParserContext parserContext, BeanDefinitionBuilder builder) { String ref = element.getAttribute("ref"); String type = element.getAttribute("type"); if (StringUtils.hasText(ref) && StringUtils.hasText(type)) { parserContext.getReaderContext().error("'type' and 'ref' attributes are mutually-exclusive, " + "but both have valid values; type: " + type + "; ref: " + ref, IntegrationNamespaceUtils.createElementDescription(element)); } if (StringUtils.hasText(ref)) { builder.getBeanDefinition().getConstructorArgumentValues().addGenericArgumentValue(ref, "java.lang.String"); } else if (StringUtils.hasText(type)) { builder.getBeanDefinition().getConstructorArgumentValues().addGenericArgumentValue(type, "java.lang.Class"); } }
@Override protected BeanDefinitionBuilder getBuilder(Element element, ParserContext parserContext) { BeanDefinitionBuilder builder = BeanDefinitionBuilder.genericBeanDefinition(WebFluxRequestExecutingMessageHandler.class); String webClientRef = element.getAttribute("web-client"); if (StringUtils.hasText(webClientRef)) { builder.getBeanDefinition() .getConstructorArgumentValues() .addIndexedArgumentValue(1, new RuntimeBeanReference(webClientRef)); } IntegrationNamespaceUtils.setValueIfAttributeDefined(builder, element, "reply-payload-to-flux"); IntegrationNamespaceUtils.setReferenceIfAttributeDefined(builder, element, "body-extractor"); return builder; }
@Override protected String resolveId(Element element, AbstractBeanDefinition definition, ParserContext parserContext) throws BeanDefinitionStoreException { RuntimeBeanReference wireTapBean = (RuntimeBeanReference) definition.getConstructorArgumentValues() .getIndexedArgumentValues() .values() .iterator() .next() .getValue(); return wireTapBean.getBeanName() + ".globalChannelInterceptor"; // NOSONAR never null }
protected BeanDefinitionBuilder getBuilder(Element element, ParserContext parserContext) { BeanDefinitionBuilder builder = BeanDefinitionBuilder.genericBeanDefinition(HttpRequestExecutingMessageHandler.class); String restTemplateRef = element.getAttribute("rest-template"); if (StringUtils.hasText(restTemplateRef)) { HttpAdapterParsingUtils.verifyNoRestTemplateAttributes(element, parserContext); builder.getBeanDefinition() .getConstructorArgumentValues() .addIndexedArgumentValue(1, new RuntimeBeanReference(restTemplateRef)); } else { for (String referenceAttributeName : HttpAdapterParsingUtils.SYNC_REST_TEMPLATE_REFERENCE_ATTRIBUTES) { IntegrationNamespaceUtils.setReferenceIfAttributeDefined(builder, element, referenceAttributeName); } } return builder; }
@Override protected void postProcessBuilder(BeanDefinitionBuilder builder, Element element) { BeanDefinition templateDefinition = (BeanDefinition) builder.getRawBeanDefinition() .getConstructorArgumentValues() .getIndexedArgumentValues() .values() .iterator() .next() .getValue(); templateDefinition.getPropertyValues() // NOSONAR never null .add("existsMode", FtpRemoteFileTemplate.ExistsMode.NLST); }
protected BeanDefinitionBuilder getBuilder(Element element, ParserContext parserContext) { BeanDefinitionBuilder builder = BeanDefinitionBuilder.genericBeanDefinition(HttpRequestExecutingMessageHandler.class); String restTemplateRef = element.getAttribute("rest-template"); if (StringUtils.hasText(restTemplateRef)) { HttpAdapterParsingUtils.verifyNoRestTemplateAttributes(element, parserContext); builder.getBeanDefinition() .getConstructorArgumentValues() .addIndexedArgumentValue(1, new RuntimeBeanReference(restTemplateRef)); } else { for (String referenceAttributeName : HttpAdapterParsingUtils.SYNC_REST_TEMPLATE_REFERENCE_ATTRIBUTES) { IntegrationNamespaceUtils.setReferenceIfAttributeDefined(builder, element, referenceAttributeName); } } return builder; }
@Override protected void postProcessBuilder(BeanDefinitionBuilder builder, Element element) { BeanDefinition templateDefinition = (BeanDefinition) builder.getRawBeanDefinition() .getConstructorArgumentValues() .getIndexedArgumentValues() .values() .iterator() .next() .getValue(); templateDefinition.getPropertyValues() // NOSONAR never null .add("existsMode", FtpRemoteFileTemplate.ExistsMode.NLST); IntegrationNamespaceUtils.setValueIfAttributeDefined(builder, element, "working-dir-expression", "workingDirExpressionString"); }
private void beanConstructorArgs() { ConstructorArgumentValues values = bd.getConstructorArgumentValues(); // indexed args @SuppressWarnings("unchecked") Map<Integer, ValueHolder> indexedArgs = new TreeMap<Integer, ValueHolder>(values.getIndexedArgumentValues()); for (Map.Entry<Integer, ValueHolder> entry : indexedArgs.entrySet()) { Integer index = entry.getKey(); ValueHolder valueHolder = entry.getValue(); Element constructorArgElement = beanElement.newSubElement("constructor-arg"); constructorArgElement.addAttribute("index", index.toString()); beanConstructorArg(constructorArgElement, valueHolder); } // generic args @SuppressWarnings("unchecked") List<ValueHolder> genericArgs = values.getGenericArgumentValues(); for (ValueHolder valueHolder : genericArgs) { Element constructorArgElement = beanElement.newSubElement("constructor-arg"); beanConstructorArg(constructorArgElement, valueHolder); } }