private static boolean deleteDirectory(final File directory) { if (directory.isDirectory()) { String[] files = directory.list(); for (int j = 0; j < files.length; j++) { if (!LocalTestServer.deleteDirectory(new File(directory, files[j]))) { return false; } } } return directory.delete(); }
@Override public synchronized void start(final HashMap<String, Object> configuration, final boolean clearJournal) throws Exception { if (isStarted()) { return; } if (clearJournal) { // Delete the Journal environment File dir = new File("target/data"); boolean deleted = LocalTestServer.deleteDirectory(dir); JmsTestLogger.LOGGER.info("Deleted dir: " + dir.getAbsolutePath() + " deleted: " + deleted); } javax.management.MBeanServer beanServer = java.lang.management.ManagementFactory.getPlatformMBeanServer(); FileConfiguration fileConfiguration = new FileConfiguration(); ActiveMQJAASSecurityManager securityManager = new ActiveMQJAASSecurityManager(InVMLoginModule.class.getName(), new SecurityConfiguration()); securityManager.getConfiguration().addUser("guest", "guest"); securityManager.getConfiguration().setDefaultUser("guest"); securityManager.getConfiguration().addRole("guest", "guest"); ActiveMQServerImpl activeMQServer = new ActiveMQServerImpl(fileConfiguration, beanServer, securityManager); jmsServerManager = new JMSServerManagerImpl(activeMQServer); System.setProperty(Constants.SERVER_INDEX_PROPERTY_NAME, "" + getServerID()); jmsServerManager.setRegistry(new JndiBindingRegistry(getInitialContext())); FileDeploymentManager deploymentManager = new FileDeploymentManager(); deploymentManager.addDeployable(fileConfiguration).readConfiguration(); jmsServerManager.start(); started = true; }