private BeanDefinitionBuilder preInvoke(Element element, Object obj, String method, Object[] args, ParserContext parserContext, boolean factory) { BeanDefinitionBuilder builder = createBeanDefinitionBuilder(element, parserContext, factory ? MethodInvokingFactoryBean.class : BeanMethodInvoker.class); if (obj instanceof Class) { builder.addPropertyValue("staticMethod", ((Class) obj).getName() + "." + method); } else { builder.addPropertyValue("targetMethod", method); } builder.addPropertyValue("arguments", args); if (element != null) { parserContext.getDelegate().parseQualifierElements(element, builder.getRawBeanDefinition()); } return builder; }
private BeanDefinitionBuilder preInvoke(Element element, Object obj, String method, Object[] args, ParserContext parserContext, boolean factory) { BeanDefinitionBuilder builder = createBeanDefinitionBuilder(element, parserContext, factory ? MethodInvokingFactoryBean.class : BeanMethodInvoker.class); if (obj instanceof Class) { builder.addPropertyValue("staticMethod", ((Class) obj).getName() + "." + method); } else { builder.addPropertyValue("targetMethod", method); } builder.addPropertyValue("arguments", args); if (element != null) { parserContext.getDelegate().parseQualifierElements(element, builder.getRawBeanDefinition()); } return builder; }
@Override protected final void doParse(Element element, ParserContext parserContext, BeanDefinitionBuilder builder) { Assert.state(helper.isRedissonNS(element), "Illegal state. " + this.getClass().getName() + " can only parse " + RedissonNamespaceParserSupport.REDISSON_NAMESPACE + " namespace elements"); Assert.state(element.hasAttribute(parentRefAttribute), "Illegal state. property \"" + parentRefAttribute + "\" is required in the \"" + helper.getName(element) + "\" element."); helper.populateIdAttribute(element, builder, parserContext); AbstractBeanDefinition bd = builder.getRawBeanDefinition(); parseNested(element, parserContext, builder, bd); decorator.decorate(element, parserContext, builder, helper); parserContext.getDelegate().parseQualifierElements(element, bd); if (parserContext.isNested()) { helper.registerBeanDefinition(builder, element, parserContext); } }
@Override protected final void doParse(Element element, ParserContext parserContext, BeanDefinitionBuilder builder) { Assert.state(helper.isRedissonNS(element), "Illegal state. " + this.getClass().getName() + " can only parse " + RedissonNamespaceParserSupport.REDISSON_NAMESPACE + " namespace elements"); Assert.state(element.hasAttribute(parentRefAttribute), "Illegal state. property \"" + parentRefAttribute + "\" is required in the \"" + helper.getName(element) + "\" element."); helper.populateIdAttribute(element, builder, parserContext); AbstractBeanDefinition bd = builder.getRawBeanDefinition(); parseNested(element, parserContext, builder, bd); decorator.decorate(element, parserContext, builder, helper); parserContext.getDelegate().parseQualifierElements(element, bd); if (parserContext.isNested()) { helper.registerBeanDefinition(builder, element, parserContext); } }
@Override public BeanDefinition parse(Element element, ParserContext parserContext) { //Sort out the Config Class BeanDefinitionBuilder configBuilder = helper.createBeanDefinitionBuilder(element, parserContext, Config.class); String configId = helper.getId(null, configBuilder, parserContext); helper.parseAttributes(element, parserContext, configBuilder); helper.registerBeanDefinition(configBuilder, configId, null, parserContext); //Do the main Redisson bean BeanDefinitionBuilder builder = helper.createBeanDefinitionBuilder(element, parserContext, Redisson.class); builder.setFactoryMethod("create"); builder.setDestroyMethodName("shutdown"); builder.addConstructorArgReference(configId); parserContext.getDelegate().parseQualifierElements(element, builder.getRawBeanDefinition()); String id = helper.getId(element, builder, parserContext); helper.parseAttributes(element, parserContext, configBuilder); //Sort out all the nested elements parseChildElements(element, configId, id, builder, parserContext); helper.registerBeanDefinition(builder, id, helper.parseAliase(element), parserContext); return builder.getBeanDefinition(); } }
private void parseConfigTypes(Element element, String configType, BeanDefinitionBuilder redissonDef, ParserContext parserContext) { BeanDefinitionBuilder builder = helper.createBeanDefinitionBuilder(element, parserContext, null); //Use factory method on the Config bean AbstractBeanDefinition bd = builder.getRawBeanDefinition(); bd.setFactoryMethodName("use" + StringUtils.capitalize(configType)); bd.setFactoryBeanName(parserContext.getContainingComponent().getName()); String id = parserContext.getReaderContext().generateBeanName(bd); helper.registerBeanDefinition(builder, id, helper.parseAliase(element), parserContext); helper.parseAttributes(element, parserContext, builder); redissonDef.addDependsOn(id); parseChildElements(element, id, null, redissonDef, parserContext); parserContext.getDelegate().parseQualifierElements(element, bd); }
@Override public BeanDefinition parse(Element element, ParserContext parserContext) { //Sort out the Config Class BeanDefinitionBuilder configBuilder = helper.createBeanDefinitionBuilder(element, parserContext, Config.class); String configId = helper.getId(null, configBuilder, parserContext); helper.parseAttributes(element, parserContext, configBuilder); helper.registerBeanDefinition(configBuilder, configId, null, parserContext); //Do the main Redisson bean BeanDefinitionBuilder builder = helper.createBeanDefinitionBuilder(element, parserContext, Redisson.class); builder.setFactoryMethod("create"); builder.setDestroyMethodName("shutdown"); builder.addConstructorArgReference(configId); parserContext.getDelegate().parseQualifierElements(element, builder.getRawBeanDefinition()); String id = helper.getId(element, builder, parserContext); helper.parseAttributes(element, parserContext, configBuilder); //Sort out all the nested elements parseChildElements(element, configId, id, builder, parserContext); helper.registerBeanDefinition(builder, id, helper.parseAliase(element), parserContext); return builder.getBeanDefinition(); } }
private void parseConfigTypes(Element element, String configType, BeanDefinitionBuilder redissonDef, ParserContext parserContext) { BeanDefinitionBuilder builder = helper.createBeanDefinitionBuilder(element, parserContext, null); //Use factory method on the Config bean AbstractBeanDefinition bd = builder.getRawBeanDefinition(); bd.setFactoryMethodName("use" + StringUtils.capitalize(configType)); bd.setFactoryBeanName(parserContext.getContainingComponent().getName()); String id = parserContext.getReaderContext().generateBeanName(bd); helper.registerBeanDefinition(builder, id, helper.parseAliase(element), parserContext); helper.parseAttributes(element, parserContext, builder); redissonDef.addDependsOn(id); parseChildElements(element, id, null, redissonDef, parserContext); parserContext.getDelegate().parseQualifierElements(element, bd); }
@Override protected void doParse(Element element, ParserContext parserContext, BeanDefinitionBuilder builder) { builder.getRawBeanDefinition().setBeanClass(RedisClient.class); if (helper.hasAttribute(element, HOST_ATTRIBUTE)) { helper.addConstructorArgs(element, HOST_ATTRIBUTE, String.class, builder); helper.addConstructorArgs(element, PORT_ATTRIBUTE, int.class, builder); helper.addConstructorArgs(element, CONNECTION_TIMEOUT_ATTRIBUTE, int.class, builder); helper.addConstructorArgs(element, COMMAND_TIMEOUT_ATTRIBUTE, int.class, builder); } else { BeanDefinitionBuilder b = helper.createBeanDefinitionBuilder(element, parserContext, RedisClientConfig.class); String configId = helper.getId(null, b, parserContext); helper.parseAttributes(element, parserContext, b); BeanComponentDefinition def = helper.registerBeanDefinition(b, configId, null, parserContext); helper.addConstructorArgs(def, RedisClientConfig.class, builder); } builder.setDestroyMethodName("shutdown"); parserContext.getDelegate().parseQualifierElements(element, builder.getRawBeanDefinition()); }
@Override protected void doParse(Element element, ParserContext parserContext, BeanDefinitionBuilder builder) { builder.getRawBeanDefinition().setBeanClass(RedisClient.class); if (helper.hasAttribute(element, HOST_ATTRIBUTE)) { helper.addConstructorArgs(element, HOST_ATTRIBUTE, String.class, builder); helper.addConstructorArgs(element, PORT_ATTRIBUTE, int.class, builder); helper.addConstructorArgs(element, CONNECTION_TIMEOUT_ATTRIBUTE, int.class, builder); helper.addConstructorArgs(element, COMMAND_TIMEOUT_ATTRIBUTE, int.class, builder); } else { BeanDefinitionBuilder b = helper.createBeanDefinitionBuilder(element, parserContext, RedisClientConfig.class); String configId = helper.getId(null, b, parserContext); helper.parseAttributes(element, parserContext, b); BeanComponentDefinition def = helper.registerBeanDefinition(b, configId, null, parserContext); helper.addConstructorArgs(def, RedisClientConfig.class, builder); } builder.setDestroyMethodName("shutdown"); parserContext.getDelegate().parseQualifierElements(element, builder.getRawBeanDefinition()); }
private BeanDefinitionBuilder preInvoke(Element element, Object obj, String method, Object[] args, ParserContext parserContext, boolean factory) { BeanDefinitionBuilder builder = createBeanDefinitionBuilder(element, parserContext, factory ? MethodInvokingFactoryBean.class : BeanMethodInvoker.class); if (obj instanceof Class) { builder.addPropertyValue("staticMethod", ((Class) obj).getName() + "." + method); } else { builder.addPropertyValue("targetMethod", method); } builder.addPropertyValue("arguments", args); if (element != null) { parserContext.getDelegate().parseQualifierElements(element, builder.getRawBeanDefinition()); } return builder; }
@Override protected final void doParse(Element element, ParserContext parserContext, BeanDefinitionBuilder builder) { Assert.state(helper.isRedissonNS(element), "Illegal state. " + this.getClass().getName() + " can only parse " + RedissonNamespaceParserSupport.REDISSON_NAMESPACE + " namespace elements"); Assert.state(element.hasAttribute(parentRefAttribute), "Illegal state. property \"" + parentRefAttribute + "\" is required in the \"" + helper.getName(element) + "\" element."); helper.populateIdAttribute(element, builder, parserContext); AbstractBeanDefinition bd = builder.getRawBeanDefinition(); parseNested(element, parserContext, builder, bd); decorator.decorate(element, parserContext, builder, helper); parserContext.getDelegate().parseQualifierElements(element, bd); if (parserContext.isNested()) { helper.registerBeanDefinition(builder, element, parserContext); } }
@Override public BeanDefinition parse(Element element, ParserContext parserContext) { //Sort out the Config Class BeanDefinitionBuilder configBuilder = helper.createBeanDefinitionBuilder(element, parserContext, Config.class); String configId = helper.getId(null, configBuilder, parserContext); helper.parseAttributes(element, parserContext, configBuilder); helper.registerBeanDefinition(configBuilder, configId, null, parserContext); //Do the main Redisson bean BeanDefinitionBuilder builder = helper.createBeanDefinitionBuilder(element, parserContext, Redisson.class); builder.setFactoryMethod("create"); builder.setDestroyMethodName("shutdown"); builder.addConstructorArgReference(configId); parserContext.getDelegate().parseQualifierElements(element, builder.getRawBeanDefinition()); String id = helper.getId(element, builder, parserContext); helper.parseAttributes(element, parserContext, configBuilder); //Sort out all the nested elements parseChildElements(element, configId, id, builder, parserContext); helper.registerBeanDefinition(builder, id, helper.parseAliase(element), parserContext); return builder.getBeanDefinition(); } }
private void parseConfigTypes(Element element, String configType, BeanDefinitionBuilder redissonDef, ParserContext parserContext) { BeanDefinitionBuilder builder = helper.createBeanDefinitionBuilder(element, parserContext, null); //Use factory method on the Config bean AbstractBeanDefinition bd = builder.getRawBeanDefinition(); bd.setFactoryMethodName("use" + StringUtils.capitalize(configType)); bd.setFactoryBeanName(parserContext.getContainingComponent().getName()); String id = parserContext.getReaderContext().generateBeanName(bd); helper.registerBeanDefinition(builder, id, helper.parseAliase(element), parserContext); helper.parseAttributes(element, parserContext, builder); redissonDef.addDependsOn(id); parseChildElements(element, id, null, redissonDef, parserContext); parserContext.getDelegate().parseQualifierElements(element, bd); }
@Override protected void doParse(Element element, ParserContext parserContext, BeanDefinitionBuilder builder) { builder.getRawBeanDefinition().setBeanClass(RedisClient.class); if (helper.hasAttribute(element, HOST_ATTRIBUTE)) { helper.addConstructorArgs(element, HOST_ATTRIBUTE, String.class, builder); helper.addConstructorArgs(element, PORT_ATTRIBUTE, int.class, builder); helper.addConstructorArgs(element, CONNECTION_TIMEOUT_ATTRIBUTE, int.class, builder); helper.addConstructorArgs(element, COMMAND_TIMEOUT_ATTRIBUTE, int.class, builder); } else { BeanDefinitionBuilder b = helper.createBeanDefinitionBuilder(element, parserContext, RedisClientConfig.class); String configId = helper.getId(null, b, parserContext); helper.parseAttributes(element, parserContext, b); BeanComponentDefinition def = helper.registerBeanDefinition(b, configId, null, parserContext); helper.addConstructorArgs(def, RedisClientConfig.class, builder); } builder.setDestroyMethodName("shutdown"); parserContext.getDelegate().parseQualifierElements(element, builder.getRawBeanDefinition()); }