public static ActiveMQServer newActiveMQServer(final String configURL, final MBeanServer mbeanServer, final ActiveMQSecurityManager securityManager) throws Exception { FileConfiguration config = new FileConfiguration(); LegacyJMSConfiguration legacyJMSConfiguration = new LegacyJMSConfiguration(config); new FileDeploymentManager(configURL).addDeployable(config).addDeployable(legacyJMSConfiguration).readConfiguration(); ActiveMQServer server = ActiveMQServers.newActiveMQServer(config, mbeanServer, securityManager); return server; }
@Override public synchronized void start() throws Exception { if (started) { return; } //todo if we start to pullout more configs from the main config then we should pull out the configuration objects from factories if available FileConfiguration configuration = new FileConfiguration(); LegacyJMSConfiguration legacyJMSConfiguration = new LegacyJMSConfiguration(configuration); FileDeploymentManager fileDeploymentManager = new FileDeploymentManager(configurationUrl); fileDeploymentManager.addDeployable(configuration).addDeployable(legacyJMSConfiguration); fileDeploymentManager.readConfiguration(); createDirectories(configuration); components = fileDeploymentManager.buildService(securityManager, ManagementFactory.getPlatformMBeanServer()); ArrayList<ActiveMQComponent> componentsByStartOrder = getComponentsByStartOrder(components); ActiveMQBootstrapLogger.LOGGER.serverStarting(); for (ActiveMQComponent component : componentsByStartOrder) { component.start(); } started = true; }
/** * Creates an EmbeddedActiveMQResource using the specified configuration file * * @param filename ActiveMQServer configuration file name */ public EmbeddedActiveMQResource(String filename) { if (filename == null) { throw new IllegalArgumentException("ActiveMQServer configuration file name cannot be null"); } FileDeploymentManager deploymentManager = new FileDeploymentManager(filename); FileConfiguration config = new FileConfiguration(); deploymentManager.addDeployable(config); try { deploymentManager.readConfiguration(); } catch (Exception ex) { throw new EmbeddedActiveMQResourceException(String.format("Failed to read configuration file %s", filename), ex); } this.configuration = config; init(); }
private void createArtemis(final Path brokerXmlFile) throws Exception { final ActiveMQSecurityManager security = createSecurityManager(); final FileConfiguration configuration = new FileConfiguration(); final FileJMSConfiguration jmsConfiguration = new FileJMSConfiguration(); final FileDeploymentManager fileDeploymentManager = new FileDeploymentManager(brokerXmlFile.toUri().toString()); fileDeploymentManager.addDeployable(configuration); fileDeploymentManager.addDeployable(jmsConfiguration); fileDeploymentManager.readConfiguration(); // load components this.components = fileDeploymentManager.buildService(security, ManagementFactory.getPlatformMBeanServer()); logger.info("Loaded components: {}", this.components.size()); for (final Map.Entry<String, ActiveMQComponent> entry : this.components.entrySet()) { logger.info("\t{} -> {}", entry.getKey(), entry.getValue()); } // register all protocols final ActiveMQServer server = (ActiveMQServer) this.components.get("core"); if (server != null) { for (final ProtocolManagerFactory<?> protocol : this.protocols) { logger.debug("Registering protocol: {}", protocol); server.addProtocolManagerFactory(protocol); } } // start components startComponents(); }
private Configuration createConfiguration(String filename) throws Exception { FileConfiguration fc = new FileConfiguration(); FileDeploymentManager deploymentManager = new FileDeploymentManager(filename); deploymentManager.addDeployable(fc); deploymentManager.readConfiguration(); return fc; }
FileDeploymentManager fileDeploymentManager = new FileDeploymentManager(configurationUrl); fileDeploymentManager.addDeployable(configuration).addDeployable(jmsConfiguration).readConfiguration(); components = fileDeploymentManager.buildService(security, ManagementFactory.getPlatformMBeanServer());
/** * Creates an EmbeddedActiveMQResource using the specified configuration file * * @param filename ActiveMQServer configuration file name */ public EmbeddedActiveMQResource(String filename) { if (filename == null) { throw new IllegalArgumentException("ActiveMQServer configuration file name cannot be null"); } FileDeploymentManager deploymentManager = new FileDeploymentManager(filename); FileConfiguration config = new FileConfiguration(); deploymentManager.addDeployable(config); try { deploymentManager.readConfiguration(); } catch (Exception ex) { throw new EmbeddedActiveMQResourceException(String.format("Failed to read configuration file %s", filename), ex); } this.configuration = config; init(); }
@Test public void testDuplicateQueue() throws Exception { String filename = "duplicateQueue.xml"; FileConfiguration fc = new FileConfiguration(); FileDeploymentManager deploymentManager = new FileDeploymentManager(filename); deploymentManager.addDeployable(fc); deploymentManager.readConfiguration(); ActiveMQServer server = addServer((ActiveMQServer) deploymentManager.buildService(null, null).get("core")); server.start(); assertEquals(0, server.locateQueue(SimpleString.toSimpleString("q")).getMaxConsumers()); }
@Override protected Configuration createConfiguration() throws Exception { FileConfiguration fc = new FileConfiguration(); FileDeploymentManager deploymentManager = new FileDeploymentManager("ConfigurationTest-defaults.xml"); deploymentManager.addDeployable(fc); deploymentManager.readConfiguration(); return fc; } }
FileDeploymentManager fileDeploymentManager = new FileDeploymentManager(configurationUrl); fileDeploymentManager.addDeployable(configuration).addDeployable(jmsConfiguration); fileDeploymentManager.readConfiguration(); components = fileDeploymentManager.buildService(securityManager, ManagementFactory.getPlatformMBeanServer());
FileDeploymentManager coreDeploymentManager = new FileDeploymentManager(serverConfigurationFileName); FileConfiguration coreConfiguration = new FileConfiguration(); coreDeploymentManager.addDeployable(coreConfiguration); try { coreDeploymentManager.readConfiguration(); } catch (Exception readCoreConfigEx) { throw new EmbeddedJMSResourceException(String.format("Failed to read ActiveMQServer configuration from file %s", serverConfigurationFileName), readCoreConfigEx); FileDeploymentManager jmsDeploymentManager = new FileDeploymentManager(jmsConfigurationFileName); jmsDeploymentManager.addDeployable(jmsConfiguration); try { jmsDeploymentManager.readConfiguration(); } catch (Exception readJmsConfigEx) { throw new EmbeddedJMSResourceException(String.format("Failed to read JMSServerManager configuration from file %s", jmsConfigurationFileName), readJmsConfigEx);
@Override public void run() { FileConfiguration fileConfiguration = new FileConfiguration(); try { FileDeploymentManager deploymentManager = new FileDeploymentManager(customConfiguration.getName()); deploymentManager.addDeployable(fileConfiguration); deploymentManager.readConfiguration(); } catch (Exception e) { holder.t = e; } } });
FileDeploymentManager coreDeploymentManager = new FileDeploymentManager(serverConfigurationFileName); FileConfiguration coreConfiguration = new FileConfiguration(); coreDeploymentManager.addDeployable(coreConfiguration); try { coreDeploymentManager.readConfiguration(); } catch (Exception readCoreConfigEx) { throw new EmbeddedJMSResourceException(String.format("Failed to read ActiveMQServer configuration from file %s", serverConfigurationFileName), readCoreConfigEx); FileDeploymentManager jmsDeploymentManager = new FileDeploymentManager(jmsConfigurationFileName); jmsDeploymentManager.addDeployable(jmsConfiguration); try { jmsDeploymentManager.readConfiguration(); } catch (Exception readJmsConfigEx) { throw new EmbeddedJMSResourceException(String.format("Failed to read JMSServerManager configuration from file %s", jmsConfigurationFileName), readJmsConfigEx);
protected void initStart() throws Exception { if (configuration == null) { if (configResourcePath == null) configResourcePath = "broker.xml"; FileDeploymentManager deploymentManager = new FileDeploymentManager(configResourcePath); FileConfiguration config = new FileConfiguration(); LegacyJMSConfiguration legacyJMSConfiguration = new LegacyJMSConfiguration(config); deploymentManager.addDeployable(config).addDeployable(legacyJMSConfiguration); deploymentManager.readConfiguration(); configuration = config; } if (securityManager == null) { securityManager = new ActiveMQJAASSecurityManager(); } if (mbeanServer == null) { activeMQServer = new ActiveMQServerImpl(configuration, securityManager); } else { activeMQServer = new ActiveMQServerImpl(configuration, mbeanServer, securityManager); } }
@Override protected Configuration createConfiguration() throws Exception { FileConfiguration fc = new FileConfiguration(); FileDeploymentManager deploymentManager = new FileDeploymentManager(getConfigurationName()); deploymentManager.addDeployable(fc); deploymentManager.readConfiguration(); return fc; }
@Test public void testDivertRoutingNameIsNotRequired() throws Exception { String filename = "divertRoutingNameNotRequired.xml"; FileConfiguration fc = new FileConfiguration(); FileDeploymentManager deploymentManager = new FileDeploymentManager(filename); deploymentManager.addDeployable(fc); deploymentManager.readConfiguration(); }
@Test public void testChangeConfiguration() throws Exception { FileConfiguration fc = new FileConfiguration(); FileDeploymentManager deploymentManager = new FileDeploymentManager("ConfigurationTest-full-config.xml"); deploymentManager.addDeployable(fc); deploymentManager.readConfiguration(); deploymentManager = new FileDeploymentManager("ConfigurationTest-full-config-wrong-address.xml"); deploymentManager.addDeployable(fc); try { deploymentManager.readConfiguration(); fail("Exception expected"); } catch (Exception ignored) { } } }
private ActiveMQServer createServerFromConfig(String configFileName) throws Exception { FileConfiguration fc = new FileConfiguration(); FileJMSConfiguration fileConfiguration = new FileJMSConfiguration(); FileDeploymentManager deploymentManager = new FileDeploymentManager(configFileName); deploymentManager.addDeployable(fc); deploymentManager.addDeployable(fileConfiguration); deploymentManager.readConfiguration(); return addServer(new ActiveMQServerImpl(fc)); }
@Override public EmbeddedJMS start() throws Exception { super.initStart(); if (jmsConfiguration != null) { serverManager = new JMSServerManagerImpl(activeMQServer, jmsConfiguration); } else { FileJMSConfiguration fileConfiguration = new FileJMSConfiguration(); FileDeploymentManager deploymentManager; if (configResourcePath != null) { deploymentManager = new FileDeploymentManager(configResourcePath); } else { deploymentManager = new FileDeploymentManager(); } deploymentManager.addDeployable(fileConfiguration); deploymentManager.readConfiguration(); serverManager = new JMSServerManagerImpl(activeMQServer, fileConfiguration); } if (registry == null) { if (context != null) registry = new JndiBindingRegistry(context); else registry = new MapBindingRegistry(); } serverManager.setRegistry(registry); serverManager.start(); return this; }
@Test public void testFullConfiguration() throws Exception { FileConfiguration fc = new FileConfiguration(); FileDeploymentManager deploymentManager = new FileDeploymentManager("ConfigurationTest-full-config.xml"); deploymentManager.addDeployable(fc); deploymentManager.readConfiguration(); Assert.assertEquals(true, fc.isPersistDeliveryCountBeforeDelivery()); }