+\r
+ /*\r
+ * JMS Configuration Defining the connection factories used in the application Setting the\r
+ * Re-delivery configuration goes here\r
+ */\r
+ @Bean\r
+ public BrokerService broker() throws Exception {\r
+ final BrokerService broker = new BrokerService();\r
+ broker.addConnector("tcp://localhost:61616");\r
+ broker.addConnector("vm://localhost");\r
+ broker.setPersistent(false);\r
+ return broker;\r
+ }\r
+\r
+ @Bean\r
+ public ConnectionFactory jmsConnectionFactory() {\r
+ ActiveMQConnectionFactory connectionFactory = new ActiveMQConnectionFactory();\r
+ connectionFactory\r
+ .setTrustedPackages(Arrays.asList("org.commscope", "org.commscope.tr069adapter"));\r
+ connectionFactory.setMaxThreadPoolSize(7);\r
+\r
+ ActiveMQQueue notificationQueue = new ActiveMQQueue(NetConfServerConstants.NETCONF_NOTIFICATION_Q);\r
+ RedeliveryPolicy notificationQueuePolicy = new RedeliveryPolicy();\r
+ notificationQueuePolicy.setInitialRedeliveryDelay(2* 60 * 1000L);\r
+ notificationQueuePolicy.setUseCollisionAvoidance(true);\r
+ notificationQueuePolicy.setRedeliveryDelay(2* 60 * 1000L);\r
+ notificationQueuePolicy.setUseExponentialBackOff(false);\r
+ notificationQueuePolicy.setMaximumRedeliveries(3);\r
+ notificationQueuePolicy.setDestination(notificationQueue);\r
+\r
+ RedeliveryPolicyMap rdMap = connectionFactory.getRedeliveryPolicyMap();\r
+ rdMap.put(notificationQueue, notificationQueuePolicy);\r
+ return connectionFactory;\r
+ }\r
+\r
+ @Bean\r
+ public JmsListenerContainerFactory<MessageListenerContainer> netConfNotificationCF(\r
+ ConnectionFactory connectionFactory,\r
+ DefaultJmsListenerContainerFactoryConfigurer configurer) {\r
+ return handleJMSCommonConfiguration(connectionFactory, configurer);\r
+ }\r
+\r
+ public JmsListenerContainerFactory handleJMSCommonConfiguration(\r
+ ConnectionFactory connectionFactory,\r
+ DefaultJmsListenerContainerFactoryConfigurer configurer) {\r
+ DefaultJmsListenerContainerFactory factory = new DefaultJmsListenerContainerFactory();\r
+ configurer.configure(factory, connectionFactory);\r
+ return factory;\r
+ }\r
+\r
+ @Bean\r
+ public MessageConverter jacksonJmsMessageConverter() {\r
+ MappingJackson2MessageConverter converter = new MappingJackson2MessageConverter();\r
+ converter.setTargetType(MessageType.TEXT);\r
+ converter.setTypeIdPropertyName("_type");\r
+ return converter;\r
+ }\r