本文整理汇总了Java中org.apache.activemq.artemis.core.server.ActiveMQServer.start方法的典型用法代码示例。如果您正苦于以下问题:Java ActiveMQServer.start方法的具体用法?Java ActiveMQServer.start怎么用?Java ActiveMQServer.start使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.apache.activemq.artemis.core.server.ActiveMQServer
的用法示例。
在下文中一共展示了ActiveMQServer.start方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: start
import org.apache.activemq.artemis.core.server.ActiveMQServer; //导入方法依赖的package包/类
public void start() throws Exception {
org.apache.activemq.artemis.core.config.Configuration configuration = new ConfigurationImpl();
HashSet<TransportConfiguration> transports = new HashSet<>();
transports.add(new TransportConfiguration(InVMAcceptorFactory.class.getName()));
configuration.setAcceptorConfigurations(transports);
configuration.setSecurityEnabled(false);
File targetDir = new File(System.getProperty("user.dir") + "/target");
configuration.setBrokerInstance(targetDir);
ActiveMQServer temp = new ActiveMQServerImpl(configuration);
temp.start();
server = temp;
}
示例2: testGlobalBlockLogging
import org.apache.activemq.artemis.core.server.ActiveMQServer; //导入方法依赖的package包/类
@Test
public void testGlobalBlockLogging() throws Exception {
final int MAX_MESSAGES = 200;
final String MY_ADDRESS = "myAddress";
final String MY_QUEUE = "myQueue";
ActiveMQServer server = createServer(false);
AddressSettings defaultSetting = new AddressSettings().setAddressFullMessagePolicy(AddressFullMessagePolicy.BLOCK);
server.getAddressSettingsRepository().addMatch("#", defaultSetting);
server.getConfiguration().setGlobalMaxSize(20 * 1024);
server.start();
internalTest(MAX_MESSAGES, MY_ADDRESS, MY_QUEUE, server);
}
示例3: testSendManagementWithRole
import org.apache.activemq.artemis.core.server.ActiveMQServer; //导入方法依赖的package包/类
@Test
public void testSendManagementWithRole() throws Exception {
ActiveMQServer server = createServer();
server.start();
HierarchicalRepository<Set<Role>> securityRepository = server.getSecurityRepository();
ActiveMQJAASSecurityManager securityManager = (ActiveMQJAASSecurityManager) server.getSecurityManager();
securityManager.getConfiguration().addUser("auser", "pass");
Role role = new Role("arole", false, false, false, false, false, false, true, false, false, false);
Set<Role> roles = new HashSet<>();
roles.add(role);
securityRepository.addMatch(configuration.getManagementAddress().toString(), roles);
securityManager.getConfiguration().addRole("auser", "arole");
locator.setBlockOnNonDurableSend(true);
ClientSessionFactory cf = createSessionFactory(locator);
ClientSession session = cf.createSession("auser", "pass", false, true, true, false, -1);
ClientProducer cp = session.createProducer(configuration.getManagementAddress());
cp.send(session.createMessage(false));
session.close();
}
示例4: testSendWithRollback
import org.apache.activemq.artemis.core.server.ActiveMQServer; //导入方法依赖的package包/类
@Test
public void testSendWithRollback() throws Exception {
ActiveMQServer server = createServer(false);
server.start();
ClientSessionFactory cf = createSessionFactory(locator);
ClientSession session = cf.createSession(false, false, false);
session.createQueue(addressA, queueA, false);
ClientProducer cp = session.createProducer(addressA);
int numMessages = 100;
for (int i = 0; i < numMessages; i++) {
cp.send(session.createMessage(false));
}
Queue q = (Queue) server.getPostOffice().getBinding(queueA).getBindable();
Assert.assertEquals(getMessageCount(q), 0);
session.rollback();
Assert.assertEquals(getMessageCount(q), 0);
// now send some more
for (int i = 0; i < numMessages; i++) {
cp.send(session.createMessage(false));
}
Assert.assertEquals(0, getMessageCount(q));
session.commit();
Assert.assertEquals(numMessages, getMessageCount(q));
session.close();
}
示例5: testCreateSessionWithCorrectUserCorrectPass
import org.apache.activemq.artemis.core.server.ActiveMQServer; //导入方法依赖的package包/类
@Test
public void testCreateSessionWithCorrectUserCorrectPass() throws Exception {
ActiveMQServer server = createServer();
ActiveMQJAASSecurityManager securityManager = (ActiveMQJAASSecurityManager) server.getSecurityManager();
securityManager.getConfiguration().addUser("newuser", "apass");
server.start();
ClientSessionFactory cf = createSessionFactory(locator);
try {
ClientSession session = cf.createSession("newuser", "apass", false, true, true, false, -1);
session.close();
} catch (ActiveMQException e) {
Assert.fail("should not throw exception");
}
}
示例6: testDeleteDurableQueueWithoutRole
import org.apache.activemq.artemis.core.server.ActiveMQServer; //导入方法依赖的package包/类
@Test
public void testDeleteDurableQueueWithoutRole() throws Exception {
ActiveMQServer server = createServer();
server.start();
HierarchicalRepository<Set<Role>> securityRepository = server.getSecurityRepository();
ActiveMQJAASSecurityManager securityManager = (ActiveMQJAASSecurityManager) server.getSecurityManager();
securityManager.getConfiguration().addUser("auser", "pass");
Role role = new Role("arole", false, false, true, false, false, false, false, false, false, false);
Set<Role> roles = new HashSet<>();
roles.add(role);
securityRepository.addMatch(SecurityTest.addressA, roles);
securityManager.getConfiguration().addRole("auser", "arole");
ClientSessionFactory cf = createSessionFactory(locator);
ClientSession session = cf.createSession("auser", "pass", false, true, true, false, -1);
session.createQueue(SecurityTest.addressA, SecurityTest.queueA, true);
try {
session.deleteQueue(SecurityTest.queueA);
Assert.fail("should throw exception");
} catch (ActiveMQSecurityException se) {
//ok
} catch (ActiveMQException e) {
fail("Invalid Exception type:" + e.getType());
}
session.close();
}
示例7: start
import org.apache.activemq.artemis.core.server.ActiveMQServer; //导入方法依赖的package包/类
/**
* Starts an Artemis server.
* @param spec how to configure the server for runtime deployment.
* @return the embedded server.
* @throws Exception if an error occurs while starting the server.
* @throws NullPointerException if the argument is {@code null}.
*/
public static EmbeddedServer start(DeploymentSpec spec)
throws Exception {
requireNonNull(spec, "spec");
ActiveMQServer instance = new ActiveMQServerImpl(
spec.config(), spec.mBeanServer(), spec.securityManager());
instance.start();
return new EmbeddedServer(spec, instance);
}
示例8: testJAASSecurityManagerAuthenticationWithCerts
import org.apache.activemq.artemis.core.server.ActiveMQServer; //导入方法依赖的package包/类
@Test
public void testJAASSecurityManagerAuthenticationWithCerts() throws Exception {
ActiveMQJAASSecurityManager securityManager = new ActiveMQJAASSecurityManager("CertLogin");
ActiveMQServer server = addServer(ActiveMQServers.newActiveMQServer(createDefaultInVMConfig().setSecurityEnabled(true), ManagementFactory.getPlatformMBeanServer(), securityManager, false));
Map<String, Object> params = new HashMap<>();
params.put(TransportConstants.SSL_ENABLED_PROP_NAME, true);
params.put(TransportConstants.KEYSTORE_PATH_PROP_NAME, "server-side-keystore.jks");
params.put(TransportConstants.KEYSTORE_PASSWORD_PROP_NAME, "secureexample");
params.put(TransportConstants.TRUSTSTORE_PATH_PROP_NAME, "server-side-truststore.jks");
params.put(TransportConstants.TRUSTSTORE_PASSWORD_PROP_NAME, "secureexample");
params.put(TransportConstants.NEED_CLIENT_AUTH_PROP_NAME, true);
server.getConfiguration().addAcceptorConfiguration(new TransportConfiguration(NETTY_ACCEPTOR_FACTORY, params));
server.start();
TransportConfiguration tc = new TransportConfiguration(NETTY_CONNECTOR_FACTORY);
tc.getParams().put(TransportConstants.SSL_ENABLED_PROP_NAME, true);
tc.getParams().put(TransportConstants.TRUSTSTORE_PATH_PROP_NAME, "client-side-truststore.jks");
tc.getParams().put(TransportConstants.TRUSTSTORE_PASSWORD_PROP_NAME, "secureexample");
tc.getParams().put(TransportConstants.KEYSTORE_PATH_PROP_NAME, "client-side-keystore.jks");
tc.getParams().put(TransportConstants.KEYSTORE_PASSWORD_PROP_NAME, "secureexample");
ServerLocator locator = addServerLocator(ActiveMQClient.createServerLocatorWithoutHA(tc));
ClientSessionFactory cf = createSessionFactory(locator);
try {
ClientSession session = cf.createSession();
session.close();
} catch (ActiveMQException e) {
e.printStackTrace();
Assert.fail("should not throw exception");
}
}
示例9: setupAndStartActiveMQServer
import org.apache.activemq.artemis.core.server.ActiveMQServer; //导入方法依赖的package包/类
@Override
protected ActiveMQServer setupAndStartActiveMQServer() throws Exception {
Configuration conf = createDefaultInVMConfig().setSecurityEnabled(true).setClusterPassword(configuredClusterPassword);
ActiveMQServer server = addServer(ActiveMQServers.newActiveMQServer(conf, false));
server.start();
return server;
}
示例10: createServer
import org.apache.activemq.artemis.core.server.ActiveMQServer; //导入方法依赖的package包/类
protected ActiveMQServer createServer(int port) throws Exception {
final ActiveMQServer server = this.createServer(true, true);
server.getConfiguration().getAcceptorConfigurations().clear();
server.getConfiguration().getAcceptorConfigurations().add(addAcceptorConfiguration(server, port));
server.getConfiguration().setName(BROKER_NAME);
server.getConfiguration().setJournalDirectory(server.getConfiguration().getJournalDirectory() + port);
server.getConfiguration().setBindingsDirectory(server.getConfiguration().getBindingsDirectory() + port);
server.getConfiguration().setPagingDirectory(server.getConfiguration().getPagingDirectory() + port);
server.getConfiguration().setJMXManagementEnabled(true);
server.getConfiguration().setMessageExpiryScanPeriod(5000);
server.setMBeanServer(mBeanServer);
// Add any additional Acceptors needed for tests
addAdditionalAcceptors(server);
// Address configuration
configureAddressPolicy(server);
// Add optional security for tests that need it
configureBrokerSecurity(server);
// Add extra configuration
addConfiguration(server);
server.start();
// Prepare all addresses and queues for client tests.
createAddressAndQueues(server);
return server;
}
示例11: createClusteredServerWithParams
import org.apache.activemq.artemis.core.server.ActiveMQServer; //导入方法依赖的package包/类
@Test
@BMRule(name = "check connection ttl",
targetClass = "org.apache.activemq.artemis.tests.extras.byteman.BridgeServerLocatorConfigurationTest",
targetMethod = "getBridgeTTL(ActiveMQServer, String)", targetLocation = "EXIT",
action = "$! = $0.getConfiguredBridge($1).serverLocator.getConnectionTTL();")
/**
* Checks the connection ttl by using byteman to override the methods on this class to return the value of private variables in the Bridge.
* @throws Exception
*
* The byteman rule on this test overwrites the {@link #getBridgeTTL} method to retrieve the bridge called {@link @BRIDGE_NAME}.
* It the overrides the return value to be the value of the connection ttl. Note that the unused String parameter is required to
* ensure that byteman populates the $1 variable, otherwise it will not bind correctly.
*/ public void testConnectionTTLOnBridge() throws Exception {
Map<String, Object> server0Params = new HashMap<>();
ActiveMQServer serverWithBridge = createClusteredServerWithParams(isNetty(), 0, true, server0Params);
Map<String, Object> server1Params = new HashMap<>();
if (isNetty()) {
server1Params.put("port", org.apache.activemq.artemis.core.remoting.impl.netty.TransportConstants.DEFAULT_PORT + 1);
} else {
server1Params.put(TransportConstants.SERVER_ID_PROP_NAME, 1);
}
ActiveMQServer server1 = createClusteredServerWithParams(isNetty(), 1, true, server1Params);
try {
final String testAddress = "testAddress";
final String queueName0 = "queue0";
final String forwardAddress = "forwardAddress";
final String queueName1 = "queue1";
Map<String, TransportConfiguration> connectors = new HashMap<>();
TransportConfiguration server1tc = new TransportConfiguration(getConnector(), server1Params);
connectors.put(server1tc.getName(), server1tc);
serverWithBridge.getConfiguration().setConnectorConfigurations(connectors);
ArrayList<String> staticConnectors = new ArrayList<>();
staticConnectors.add(server1tc.getName());
BridgeConfiguration bridgeConfiguration = new BridgeConfiguration().setName(BRIDGE_NAME).setQueueName(queueName0).setForwardingAddress(forwardAddress).setConnectionTTL(BRIDGE_TTL).setRetryInterval(1000).setReconnectAttempts(0).setReconnectAttemptsOnSameNode(0).setConfirmationWindowSize(1024).setStaticConnectors(staticConnectors);
List<BridgeConfiguration> bridgeConfigs = new ArrayList<>();
bridgeConfigs.add(bridgeConfiguration);
serverWithBridge.getConfiguration().setBridgeConfigurations(bridgeConfigs);
CoreQueueConfiguration queueConfig0 = new CoreQueueConfiguration().setAddress(testAddress).setName(queueName0);
List<CoreQueueConfiguration> queueConfigs0 = new ArrayList<>();
queueConfigs0.add(queueConfig0);
serverWithBridge.getConfiguration().setQueueConfigurations(queueConfigs0);
CoreQueueConfiguration queueConfig1 = new CoreQueueConfiguration().setAddress(forwardAddress).setName(queueName1);
List<CoreQueueConfiguration> queueConfigs1 = new ArrayList<>();
queueConfigs1.add(queueConfig1);
server1.getConfiguration().setQueueConfigurations(queueConfigs1);
server1.start();
waitForServerToStart(server1);
serverWithBridge.start();
waitForServerToStart(serverWithBridge);
long bridgeTTL = getBridgeTTL(serverWithBridge, BRIDGE_NAME);
assertEquals(BRIDGE_TTL, bridgeTTL);
} finally {
serverWithBridge.stop();
server1.stop();
}
}
示例12: testOverrideHierarchyWithDLA
import org.apache.activemq.artemis.core.server.ActiveMQServer; //导入方法依赖的package包/类
@Test
public void testOverrideHierarchyWithDLA() throws Exception {
ActiveMQServer server = createServer(false);
server.start();
AddressSettings addressSettings = new AddressSettings().setMaxDeliveryAttempts(1);
AddressSettings addressSettings2 = new AddressSettings().setMaxDeliveryAttempts(1);
AddressSettings addressSettings3 = new AddressSettings().setDeadLetterAddress(dlaC).setMaxDeliveryAttempts(1);
HierarchicalRepository<AddressSettings> repos = server.getAddressSettingsRepository();
repos.addMatch(addressA2.toString(), addressSettings);
repos.addMatch("add.*", addressSettings2);
repos.addMatch("#", addressSettings3);
ServerLocator locator = createInVMNonHALocator();
ClientSessionFactory sf = createSessionFactory(locator);
ClientSession session = sf.createSession(false, true, false);
session.createQueue(addressA2, queueA, false);
session.createQueue(addressB2, queueB, false);
session.createQueue(addressC, queueC, false);
session.createQueue(dlaA, dlqA, false);
session.createQueue(dlaB, dlqB, false);
session.createQueue(dlaC, dlqC, false);
ClientSession sendSession = sf.createSession(false, true, true);
ClientMessage cm = sendSession.createMessage(true);
ClientMessage cm2 = sendSession.createMessage(true);
ClientMessage cm3 = sendSession.createMessage(true);
ClientProducer cp1 = sendSession.createProducer(addressA2);
ClientProducer cp2 = sendSession.createProducer(addressB2);
ClientProducer cp3 = sendSession.createProducer(addressC);
cp1.send(cm);
cp2.send(cm2);
cp3.send(cm3);
ClientConsumer dlqCrec = session.createConsumer(dlqC);
ClientConsumer cc1 = session.createConsumer(queueA);
ClientConsumer cc2 = session.createConsumer(queueB);
ClientConsumer cc3 = session.createConsumer(queueC);
session.start();
ClientMessage message = cc1.receive(5000);
Assert.assertNotNull(message);
message.acknowledge();
message = cc2.receive(5000);
Assert.assertNotNull(message);
message.acknowledge();
message = cc3.receive(5000);
Assert.assertNotNull(message);
message.acknowledge();
session.rollback();
cc1.close();
cc2.close();
cc3.close();
message = dlqCrec.receive(5000);
Assert.assertNotNull(message);
message = dlqCrec.receive(5000);
Assert.assertNotNull(message);
message = dlqCrec.receive(5000);
Assert.assertNotNull(message);
sendSession.close();
session.close();
}
示例13: testHugeStreamingSpacesCompressed
import org.apache.activemq.artemis.core.server.ActiveMQServer; //导入方法依赖的package包/类
@Test
public void testHugeStreamingSpacesCompressed() throws Exception {
final long messageSize = 1024L * 1024L;
System.out.println("Message size = " + messageSize);
ActiveMQServer server = createServer(true, isNetty());
server.start();
// big enough to hold the whole message compressed on a single message (about 1M on our tests)
locator.setMinLargeMessageSize(100 * 1024 * 1024);
ClientSessionFactory sf = createSessionFactory(locator);
ClientSession session = addClientSession(sf.createSession(false, false, false));
session.createQueue(ADDRESS, ADDRESS, null, true);
ClientProducer producer = session.createProducer(ADDRESS);
ClientMessage clientMessage = session.createMessage(true);
clientMessage.setBodyInputStream(new InputStream() {
private long count;
private boolean closed = false;
@Override
public void close() throws IOException {
super.close();
closed = true;
}
@Override
public int read() throws IOException {
if (closed) {
throw new IOException("Stream was closed");
}
if (count++ < messageSize) {
return ' ';
} else {
return -1;
}
}
});
producer.send(clientMessage);
session.commit();
// this is to make sure the message was sent as a regular message (not taking a file on server)
validateNoFilesOnLargeDir();
session.start();
ClientConsumer consumer = session.createConsumer(ADDRESS);
ClientMessage msg1 = consumer.receive(1000);
Assert.assertNotNull(msg1);
final AtomicLong numberOfSpaces = new AtomicLong();
msg1.saveToOutputStream(new OutputStream() {
@Override
public void write(int content) {
if (content == ' ') {
numberOfSpaces.incrementAndGet();
}
}
});
assertEquals(messageSize, numberOfSpaces.get());
msg1.acknowledge();
session.commit();
session.close();
}
示例14: testSendMessageUpdateRoleCached
import org.apache.activemq.artemis.core.server.ActiveMQServer; //导入方法依赖的package包/类
@Test
public void testSendMessageUpdateRoleCached() throws Exception {
Configuration configuration = createDefaultInVMConfig().setSecurityEnabled(true).setSecurityInvalidationInterval(10000);
ActiveMQServer server = createServer(false, configuration);
server.start();
HierarchicalRepository<Set<Role>> securityRepository = server.getSecurityRepository();
ActiveMQJAASSecurityManager securityManager = (ActiveMQJAASSecurityManager) server.getSecurityManager();
securityManager.getConfiguration().addUser("auser", "pass");
securityManager.getConfiguration().addUser("guest", "guest");
securityManager.getConfiguration().addRole("guest", "guest");
securityManager.getConfiguration().setDefaultUser("guest");
Role role = new Role("arole", false, false, false, false, false, false, false, false, false, false);
Role sendRole = new Role("guest", true, false, true, false, false, false, false, false, false, false);
Role receiveRole = new Role("receiver", false, true, false, false, false, false, false, false, false, false);
Set<Role> roles = new HashSet<>();
roles.add(sendRole);
roles.add(role);
roles.add(receiveRole);
securityRepository.addMatch(SecurityTest.addressA, roles);
securityManager.getConfiguration().addRole("auser", "arole");
ClientSessionFactory cf = createSessionFactory(locator);
ClientSession senSession = cf.createSession(false, true, true);
ClientSession session = cf.createSession("auser", "pass", false, true, true, false, -1);
senSession.createQueue(SecurityTest.addressA, SecurityTest.queueA, true);
ClientProducer cp = senSession.createProducer(SecurityTest.addressA);
cp.send(session.createMessage(false));
try {
session.createConsumer(SecurityTest.queueA);
} catch (ActiveMQSecurityException se) {
//ok
} catch (ActiveMQException e) {
fail("Invalid Exception type:" + e.getType());
}
securityManager.getConfiguration().addRole("auser", "receiver");
session.createConsumer(SecurityTest.queueA);
// Removing the Role... the check should be cached, so the next createConsumer shouldn't fail
securityManager.getConfiguration().removeRole("auser", "receiver");
session.createConsumer(SecurityTest.queueA);
session.close();
senSession.close();
}
示例15: testHandshakeTimeoutWithValueSet
import org.apache.activemq.artemis.core.server.ActiveMQServer; //导入方法依赖的package包/类
@Test
public void testHandshakeTimeoutWithValueSet() throws Exception {
final int HANDSHAKE_TIMEOUT = 5;
ActiveMQServer server = addServer(ActiveMQServers.newActiveMQServer(createDefaultConfig(false)
.clearAcceptorConfigurations()
.addAcceptorConfiguration("netty", "tcp://localhost:61616?handshake-timeout=5")));
server.start();
TransportConfiguration tc = server.getConfiguration().getAcceptorConfigurations().iterator().next();
String host = (String) tc.getParams().get(TransportConstants.HOST_PROP_NAME);
String port = (String) tc.getParams().get(TransportConstants.PORT_PROP_NAME);
Object handshakeTimeout = tc.getParams().get(TransportConstants.HANDSHAKE_TIMEOUT);
assertNotNull(handshakeTimeout);
assertEquals(HANDSHAKE_TIMEOUT, Integer.parseInt(handshakeTimeout.toString()));
NettyTransport transport = NettyTransportFactory.createTransport(new URI("tcp://" + host + ":" + port));
transport.setTransportListener(new NettyTransportListener() {
@Override
public void onData(ByteBuf incoming) {
}
@Override
public void onTransportClosed() {
}
@Override
public void onTransportError(Throwable cause) {
}
});
try {
transport.connect();
assertTrue("Connection should be closed now", Wait.waitFor(() -> !transport.isConnected(), TimeUnit.SECONDS.toMillis(HANDSHAKE_TIMEOUT + 1)));
} finally {
transport.close();
server.stop();
}
}