/** * Parse definition of JSON command encoder. * * @param encoder * @param context * @param destination */ protected void parseJsonCommandEncoder(Element encoder, ParserContext context, BeanDefinitionBuilder destination) { BeanDefinitionBuilder builder = BeanDefinitionBuilder.rootBeanDefinition(JsonCommandExecutionEncoder.class); AbstractBeanDefinition bean = builder.getBeanDefinition(); String name = nameGenerator.generateBeanName(bean, context.getRegistry()); context.getRegistry().registerBeanDefinition(name, bean); destination.addPropertyReference("commandExecutionEncoder", name); }
/** * Parse definition of SiteWhere GPB command encoder. * * @param encoder * @param context * @param destination */ protected void parseProtobufCommandEncoder(Element encoder, ParserContext context, BeanDefinitionBuilder destination) { BeanDefinitionBuilder builder = BeanDefinitionBuilder.rootBeanDefinition(ProtobufExecutionEncoder.class); AbstractBeanDefinition bean = builder.getBeanDefinition(); String name = nameGenerator.generateBeanName(bean, context.getRegistry()); context.getRegistry().registerBeanDefinition(name, bean); destination.addPropertyReference("commandExecutionEncoder", name); }
/** * Parse definition of JSON command encoder. * * @param encoder * @param context * @param destination */ protected void parseJsonCommandEncoder(Element encoder, ParserContext context, BeanDefinitionBuilder destination) { BeanDefinitionBuilder builder = BeanDefinitionBuilder.rootBeanDefinition(JsonCommandExecutionEncoder.class); AbstractBeanDefinition bean = builder.getBeanDefinition(); String name = nameGenerator.generateBeanName(bean, context.getRegistry()); context.getRegistry().registerBeanDefinition(name, bean); destination.addPropertyReference("commandExecutionEncoder", name); }
/** * Parse definition of SiteWhere Java/GPB hybrid command encoder. * * @param encoder * @param context * @param destination */ protected void parseJavaHybridProtobufEncoder(Element encoder, ParserContext context, BeanDefinitionBuilder destination) { BeanDefinitionBuilder builder = BeanDefinitionBuilder .rootBeanDefinition(JavaHybridProtobufExecutionEncoder.class); AbstractBeanDefinition bean = builder.getBeanDefinition(); String name = nameGenerator.generateBeanName(bean, context.getRegistry()); context.getRegistry().registerBeanDefinition(name, bean); destination.addPropertyReference("commandExecutionEncoder", name); }
/** * Parse definition of SiteWhere GPB command encoder. * * @param encoder * @param context * @param destination */ protected void parseProtobufCommandEncoder(Element encoder, ParserContext context, BeanDefinitionBuilder destination) { BeanDefinitionBuilder builder = BeanDefinitionBuilder.rootBeanDefinition(ProtobufExecutionEncoder.class); AbstractBeanDefinition bean = builder.getBeanDefinition(); String name = nameGenerator.generateBeanName(bean, context.getRegistry()); context.getRegistry().registerBeanDefinition(name, bean); destination.addPropertyReference("commandExecutionEncoder", name); }
/** * Parse definition of SiteWhere Java/GPB hybrid command encoder. * * @param encoder * @param context * @param destination */ protected void parseJavaHybridProtobufEncoder(Element encoder, ParserContext context, BeanDefinitionBuilder destination) { BeanDefinitionBuilder builder = BeanDefinitionBuilder .rootBeanDefinition(JavaHybridProtobufExecutionEncoder.class); AbstractBeanDefinition bean = builder.getBeanDefinition(); String name = nameGenerator.generateBeanName(bean, context.getRegistry()); context.getRegistry().registerBeanDefinition(name, bean); destination.addPropertyReference("commandExecutionEncoder", name); }
public String generateBeanName(BeanDefinition definition, BeanDefinitionRegistry registry) { String id = super.generateBeanName(definition, registry); return generateBeanName(id); }
/** * Parse configuration for {@link HttpInteractionHandler} factory * implementation. * * @param parent * @param decoder * @param context * @param source */ protected void parseHttpFactory(Element parent, Element decoder, ParserContext context, BeanDefinitionBuilder source) { LOGGER.debug("Configuring HTTP socket interaction handler factory for " + parent.getLocalName()); BeanDefinitionBuilder builder = BeanDefinitionBuilder.rootBeanDefinition(HttpInteractionHandler.Factory.class); AbstractBeanDefinition bean = builder.getBeanDefinition(); String name = nameGenerator.generateBeanName(bean, context.getRegistry()); context.getRegistry().registerBeanDefinition(name, bean); source.addPropertyReference("handlerFactory", name); }
/** * Parse configuration for {@link HttpInteractionHandler} factory * implementation. * * @param parent * @param decoder * @param context * @param source */ protected void parseHttpFactory(Element parent, Element decoder, ParserContext context, BeanDefinitionBuilder source) { LOGGER.debug("Configuring HTTP socket interaction handler factory for " + parent.getLocalName()); BeanDefinitionBuilder builder = BeanDefinitionBuilder.rootBeanDefinition(HttpInteractionHandler.Factory.class); AbstractBeanDefinition bean = builder.getBeanDefinition(); String name = nameGenerator.generateBeanName(bean, context.getRegistry()); context.getRegistry().registerBeanDefinition(name, bean); source.addPropertyReference("handlerFactory", name); }
/** * Parse configuration for {@link ReadAllInteractionHandler} factory * implementation. * * @param parent * @param decoder * @param context * @param source */ protected void parseReadAllFactory(Element parent, Element decoder, ParserContext context, BeanDefinitionBuilder source) { LOGGER.debug("Configuring 'read all' socket interaction handler factory for " + parent.getLocalName()); BeanDefinitionBuilder builder = BeanDefinitionBuilder .rootBeanDefinition(ReadAllInteractionHandler.Factory.class); AbstractBeanDefinition bean = builder.getBeanDefinition(); String name = nameGenerator.generateBeanName(bean, context.getRegistry()); context.getRegistry().registerBeanDefinition(name, bean); source.addPropertyReference("handlerFactory", name); }
/** * Parse definition of Groovy command encoder. * * @param encoder * @param context * @param destination */ protected void parseGroovyCommandEncoder(Element encoder, ParserContext context, BeanDefinitionBuilder destination) { BeanDefinitionBuilder builder = BeanDefinitionBuilder.rootBeanDefinition(GroovyCommandExecutionEncoder.class); Attr scriptId = encoder.getAttributeNode("scriptId"); if (scriptId != null) { builder.addPropertyValue("scriptId", scriptId.getValue()); } AbstractBeanDefinition bean = builder.getBeanDefinition(); String name = nameGenerator.generateBeanName(bean, context.getRegistry()); context.getRegistry().registerBeanDefinition(name, bean); destination.addPropertyReference("commandExecutionEncoder", name); }
/** * Parse definition of Groovy String command encoder. * * @param encoder * @param context * @param destination */ protected void parseGroovyStringCommandEncoder(Element encoder, ParserContext context, BeanDefinitionBuilder destination) { BeanDefinitionBuilder builder = BeanDefinitionBuilder .rootBeanDefinition(GroovyStringCommandExecutionEncoder.class); Attr scriptPath = encoder.getAttributeNode("scriptPath"); if (scriptPath == null) { throw new RuntimeException("Script path required but not specified."); } builder.addPropertyValue("scriptPath", scriptPath.getValue()); AbstractBeanDefinition bean = builder.getBeanDefinition(); String name = nameGenerator.generateBeanName(bean, context.getRegistry()); context.getRegistry().registerBeanDefinition(name, bean); destination.addPropertyReference("commandExecutionEncoder", name); }
/** * Parse configuration for {@link ReadAllInteractionHandler} factory * implementation. * * @param parent * @param decoder * @param context * @param source */ protected void parseReadAllFactory(Element parent, Element decoder, ParserContext context, BeanDefinitionBuilder source) { LOGGER.debug("Configuring 'read all' socket interaction handler factory for " + parent.getLocalName()); BeanDefinitionBuilder builder = BeanDefinitionBuilder .rootBeanDefinition(ReadAllInteractionHandler.Factory.class); AbstractBeanDefinition bean = builder.getBeanDefinition(); String name = nameGenerator.generateBeanName(bean, context.getRegistry()); context.getRegistry().registerBeanDefinition(name, bean); source.addPropertyReference("handlerFactory", name); }
/** * Parse definition of Groovy String command encoder. * * @param encoder * @param context * @param destination */ protected void parseGroovyStringCommandEncoder(Element encoder, ParserContext context, BeanDefinitionBuilder destination) { BeanDefinitionBuilder builder = BeanDefinitionBuilder .rootBeanDefinition(GroovyStringCommandExecutionEncoder.class); Attr scriptId = encoder.getAttributeNode("scriptId"); if (scriptId != null) { builder.addPropertyValue("scriptId", scriptId.getValue()); } AbstractBeanDefinition bean = builder.getBeanDefinition(); String name = nameGenerator.generateBeanName(bean, context.getRegistry()); context.getRegistry().registerBeanDefinition(name, bean); destination.addPropertyReference("commandExecutionEncoder", name); }
private static void addBeanFactoryPostProcessor(Class<? extends BeanFactoryPostProcessor> processorClass, BeanDefinitionRegistry registry) { BeanDefinitionBuilder beanBuilder = BeanDefinitionBuilder.genericBeanDefinition(processorClass); beanBuilder.setScope("singleton"); BeanDefinition definition = beanBuilder.getBeanDefinition(); DefaultBeanNameGenerator beanNameGenerator = new DefaultBeanNameGenerator(); String name = beanNameGenerator.generateBeanName(definition, registry); registry.registerBeanDefinition(name, definition); }
/** * Configure components needed to realize a Hazelcast queue event source. * * @param element * @param context * @return */ protected AbstractBeanDefinition parseHazelcastQueueEventSource(Element element, ParserContext context) { BeanDefinitionBuilder source = BeanDefinitionBuilder.rootBeanDefinition(DecodedInboundEventSource.class); // Verify that a sourceId was provided and set it on the bean. parseEventSourceId(element, source); // Create event receiver bean and register it. AbstractBeanDefinition receiver = createHazelcastQueueEventReceiver(element, context); String receiverName = nameGenerator.generateBeanName(receiver, context.getRegistry()); context.getRegistry().registerBeanDefinition(receiverName, receiver); // Create list with bean reference and add it as property. ManagedList<Object> list = new ManagedList<Object>(); RuntimeBeanReference ref = new RuntimeBeanReference(receiverName); list.add(ref); source.addPropertyValue("inboundEventReceivers", list); return source.getBeanDefinition(); }
private String createDefaultStateConfigBean(BeanDefinitionRegistry beanRegistry, Class<? extends ConfigurableState> stateType, GlobalOutputConfig outputConfig) { BeanDefinitionBuilder beanBuilder = BeanDefinitionBuilder.genericBeanDefinition(DefaultStateConfig.class); beanBuilder.setScope("singleton"); beanBuilder.addPropertyValue("state", stateType); if(outputConfig != null) { @SuppressWarnings({"unchecked","rawtypes"}) Map<String, Object> contextResources = new ManagedMap(outputConfig.getContextResources().size()); contextResources.putAll(outputConfig.getContextResources()); beanBuilder.addPropertyValue("contextResources", contextResources); beanBuilder.addPropertyValue("lazyContextResources", outputConfig.getLazyContextResources()); } BeanDefinition beanDefinition = beanBuilder.getBeanDefinition(); DefaultBeanNameGenerator beanNameGenerator = new DefaultBeanNameGenerator(); String beanName = beanNameGenerator.generateBeanName(beanDefinition, beanRegistry); beanRegistry.registerBeanDefinition(beanName, beanDefinition); return beanName; }
/** * Parse the MQTT command destination configuration and create beans necessary * for implementation. * * @param element * @param context * @return */ protected AbstractBeanDefinition parseMqttCommandDestination(Element element, ParserContext context) { BeanDefinitionBuilder mqtt = BeanDefinitionBuilder.rootBeanDefinition(MqttCommandDestination.class); addCommonAttributes(mqtt, element, context); // Add encoder reference. parseBinaryCommandEncoder(element, context, mqtt); // Add MQTT command delivery provider bean. AbstractBeanDefinition delivery = createMqttDeliveryProvider(element); String deliveryName = nameGenerator.generateBeanName(delivery, context.getRegistry()); context.getRegistry().registerBeanDefinition(deliveryName, delivery); mqtt.addPropertyReference("commandDeliveryProvider", deliveryName); // Add parameter extractor reference. addParameterExtractor(mqtt, element, context, MqttParameters.class); return mqtt.getBeanDefinition(); }
private static void addPropertyConfigurer(Class<? extends PropertyResourceConfigurer> clazz, Resource location, BeanDefinitionRegistry registry) { BeanDefinitionBuilder beanBuilder = BeanDefinitionBuilder.genericBeanDefinition(clazz); beanBuilder.setScope("singleton"); beanBuilder.addPropertyValue("location", location); PustefixPropertiesPersister persister = new PustefixPropertiesPersister(); try { persister.setLocation(location.getURI()); } catch(IOException x) { //ignore } beanBuilder.addPropertyValue("propertiesPersister", persister); BeanDefinition definition = beanBuilder.getBeanDefinition(); DefaultBeanNameGenerator beanNameGenerator = new DefaultBeanNameGenerator(); String name = beanNameGenerator.generateBeanName(definition, registry); registry.registerBeanDefinition(name, definition); }
public final void handle(A annotation, BeanDefinitionRegistry registry) { BeanDefinition beanDef = doHandle(annotation, registry); // workaround related to hidden beans if(registry instanceof HierarchicalBeanFactory) if(((HierarchicalBeanFactory)registry).getParentBeanFactory() instanceof BeanDefinitionRegistry) registry = (BeanDefinitionRegistry)((HierarchicalBeanFactory)registry).getParentBeanFactory(); // generate a unique bean name for this resolver String beanName = new DefaultBeanNameGenerator().generateBeanName(beanDef, registry); registry.registerBeanDefinition(beanName, beanDef); }