Package org.hornetq.core.server

Examples of org.hornetq.core.server.HornetQServer


                                        final int pageSize,
                                        final int maxAddressSize,
                                        final Map<String, AddressSettings> settings,
                                        final MBeanServer mbeanServer)
   {
      HornetQServer server;

      if (realFiles)
      {
         server = HornetQServers.newHornetQServer(configuration, mbeanServer, true);
      }
      else
      {
         server = HornetQServers.newHornetQServer(configuration, mbeanServer, false);
      }

      for (Map.Entry<String, AddressSettings> setting : settings.entrySet())
      {
         server.getAddressSettingsRepository().addMatch(setting.getKey(), setting.getValue());
      }

      AddressSettings defaultSetting = new AddressSettings();
      defaultSetting.setPageSizeBytes(pageSize);
      defaultSetting.setMaxSizeBytes(maxAddressSize);

      server.getAddressSettingsRepository().addMatch("#", defaultSetting);

      return server;
   }
View Full Code Here


                                        final int pageSize,
                                        final int maxAddressSize,
                                        final AddressFullMessagePolicy fullPolicy,
                                        final Map<String, AddressSettings> settings)
   {
      HornetQServer server;

      if (realFiles)
      {
         server = HornetQServers.newHornetQServer(configuration);
      }
      else
      {
         server = HornetQServers.newHornetQServer(configuration, false);
      }

      if (settings != null)
      {
         for (Map.Entry<String, AddressSettings> setting : settings.entrySet())
         {
            server.getAddressSettingsRepository().addMatch(setting.getKey(), setting.getValue());
         }
      }

      AddressSettings defaultSetting = new AddressSettings();
      defaultSetting.setPageSizeBytes(pageSize);
      defaultSetting.setMaxSizeBytes(maxAddressSize);
      defaultSetting.setAddressFullMessagePolicy(fullPolicy);

      server.getAddressSettingsRepository().addMatch("#", defaultSetting);

      return server;
   }
View Full Code Here

   protected HornetQServer createServer(final boolean realFiles,
                                        final Configuration configuration,
                                        final MBeanServer mbeanServer,
                                        final Map<String, AddressSettings> settings)
   {
      HornetQServer server;

      if (realFiles)
      {
         server = HornetQServers.newHornetQServer(configuration, mbeanServer);
      }
      else
      {
         server = HornetQServers.newHornetQServer(configuration, mbeanServer, false);
      }

      for (Map.Entry<String, AddressSettings> setting : settings.entrySet())
      {
         server.getAddressSettingsRepository().addMatch(setting.getKey(), setting.getValue());
      }

      AddressSettings defaultSetting = new AddressSettings();
      server.getAddressSettingsRepository().addMatch("#", defaultSetting);

      return server;
   }
View Full Code Here

                                                    final int maxAddressSize,
                                                    final Map<String, AddressSettings> settings,
                                                    NodeManager nodeManager,
                                                    final int id)
   {
      HornetQServer server;
      HornetQSecurityManager securityManager = new HornetQSecurityManagerImpl();
      configuration.setPersistenceEnabled(realFiles);
      server = new InVMNodeManagerServer(configuration,
                                         ManagementFactory.getPlatformMBeanServer(),
                                         securityManager,
                                         nodeManager);
     
      server.setIdentity("Server " + id);

      for (Map.Entry<String, AddressSettings> setting : settings.entrySet())
      {
         server.getAddressSettingsRepository().addMatch(setting.getKey(), setting.getValue());
      }

      AddressSettings defaultSetting = new AddressSettings();
      defaultSetting.setPageSizeBytes(pageSize);
      defaultSetting.setMaxSizeBytes(maxAddressSize);

      server.getAddressSettingsRepository().addMatch("#", defaultSetting);

      return server;
   }
View Full Code Here

   protected HornetQServer createServer(final boolean realFiles,
                                        final Configuration configuration,
                                        final HornetQSecurityManager securityManager)
   {
      HornetQServer server;

      if (realFiles)
      {
         server = HornetQServers.newHornetQServer(configuration,
                                                  ManagementFactory.getPlatformMBeanServer(),
                                                  securityManager);
      }
      else
      {
         server = HornetQServers.newHornetQServer(configuration,
                                                  ManagementFactory.getPlatformMBeanServer(),
                                                  securityManager,
                                                  false);
      }

      Map<String, AddressSettings> settings = new HashMap<String, AddressSettings>();

      for (Map.Entry<String, AddressSettings> setting : settings.entrySet())
      {
         server.getAddressSettingsRepository().addMatch(setting.getKey(), setting.getValue());
      }

      AddressSettings defaultSetting = new AddressSettings();

      server.getAddressSettingsRepository().addMatch("#", defaultSetting);

      return server;
   }
View Full Code Here

   }

   public void testStartActivation() throws Exception
   {
      HornetQServer server = createServer(false);

      try
      {

         server.start();
         ServerLocator locator = createInVMNonHALocator();
         ClientSessionFactory factory = locator.createSessionFactory();
         ClientSession session = factory.createSession(false, false, false);
         HornetQDestination queue = (HornetQDestination)HornetQJMSClient.createQueue("test");
         session.createQueue(queue.getSimpleAddress(), queue.getSimpleAddress(), true);
         session.close();

         HornetQResourceAdapter ra = new HornetQResourceAdapter();

         ra.setConnectorClassName("org.hornetq.core.remoting.impl.invm.InVMConnectorFactory");
         ra.setUserName("userGlobal");
         ra.setPassword("passwordGlobal");
         ra.start(fakeCTX);

         Connection conn = ra.getDefaultHornetQConnectionFactory().createConnection();

         conn.close();

         HornetQActivationSpec spec = new HornetQActivationSpec();

         spec.setResourceAdapter(ra);

         spec.setUseJNDI(false);

         spec.setUser("user");
         spec.setPassword("password");

         spec.setDestinationType("Topic");
         spec.setDestination("test");

         spec.setMinSession(1);
         spec.setMaxSession(1);

         HornetQActivation activation = new HornetQActivation(ra, new FakeMessageEndpointFactory(), spec);

         activation.start();
         activation.stop();

         ra.stop();

         locator.close();

      }
      finally
      {
         server.stop();
      }
   }
View Full Code Here

   }

   public void testBufferMultipleLargeMessages() throws Exception
   {
      ClientSession session = null;
      HornetQServer server = null;

      final int SIZE = 10 * 1024;
      final int NUMBER_OF_MESSAGES = 30;
      try
      {

         server = createServer(true, isNetty());

         server.start();

         locator.setMinLargeMessageSize(1024);
         locator.setConsumerWindowSize(1024 * 1024);

         ClientSessionFactory sf = locator.createSessionFactory();

         session = sf.createSession(null, null, false, false, false, false, 0);

         session.createQueue(LargeMessageTest.ADDRESS, LargeMessageTest.ADDRESS, null, true);

         ClientProducer producer = session.createProducer(LargeMessageTest.ADDRESS);

         for (int i = 0; i < NUMBER_OF_MESSAGES; i++)
         {
            ClientMessage clientFile = session.createMessage(true);
            clientFile.setBodyInputStream(UnitTestCase.createFakeLargeStream(SIZE));
            producer.send(clientFile);

         }
         session.commit();
         producer.close();

         session.start();

         ClientConsumerInternal consumer = (ClientConsumerInternal)session.createConsumer(LargeMessageTest.ADDRESS);

         // Wait the consumer to be complete with 10 messages before getting others
         long timeout = System.currentTimeMillis() + 10000;
         while (consumer.getBufferSize() < NUMBER_OF_MESSAGES && timeout > System.currentTimeMillis())
         {
            Thread.sleep(10);
         }
         Assert.assertEquals(NUMBER_OF_MESSAGES, consumer.getBufferSize());

         // Reads the messages, rollback.. read them again
         for (int trans = 0; trans < 2; trans++)
         {

            for (int i = 0; i < NUMBER_OF_MESSAGES; i++)
            {
               ClientMessage msg = consumer.receive(10000);
               Assert.assertNotNull(msg);

               // it will ignore the buffer (not read it) on the first try
               if (trans == 0)
               {
                  for (int byteRead = 0; byteRead < SIZE; byteRead++)
                  {
                     Assert.assertEquals(UnitTestCase.getSamplebyte(byteRead), msg.getBodyBuffer().readByte());
                  }
               }

               msg.acknowledge();
            }
            if (trans == 0)
            {
               session.rollback();
            }
            else
            {
               session.commit();
            }
         }

         Assert.assertEquals(0,
                             ((Queue)server.getPostOffice().getBinding(LargeMessageTest.ADDRESS).getBindable()).getDeliveringCount());
         Assert.assertEquals(0,
                             ((Queue)server.getPostOffice().getBinding(LargeMessageTest.ADDRESS).getBindable()).getMessageCount());

      }
      finally
      {
         try
         {
            session.close();
         }
         catch (Throwable ignored)
         {
         }

         try
         {
            server.stop();
         }
         catch (Throwable ignored)
         {
         }
      }
View Full Code Here

   }

   public void testReceiveMultipleMessages() throws Exception
   {
      ClientSession session = null;
      HornetQServer server = null;

      final int SIZE = 10 * 1024;
      final int NUMBER_OF_MESSAGES = 1000;
      try
      {

         server = createServer(true, isNetty());

         server.start();

         locator.setMinLargeMessageSize(1024);
         locator.setConsumerWindowSize(1024 * 1024);

         ClientSessionFactory sf = locator.createSessionFactory();

         session = sf.createSession(null, null, false, false, false, false, 0);

         session.createQueue(LargeMessageTest.ADDRESS, LargeMessageTest.ADDRESS, null, true);

         ClientProducer producer = session.createProducer(LargeMessageTest.ADDRESS);

         for (int i = 0; i < NUMBER_OF_MESSAGES; i++)
         {
            ClientMessage clientFile = session.createMessage(true);
            clientFile.setBodyInputStream(UnitTestCase.createFakeLargeStream(SIZE));
            producer.send(clientFile);

         }
         session.commit();
         producer.close();

         session.start();

         // Reads the messages, rollback.. read them again
         for (int trans = 0; trans < 2; trans++)
         {

            ClientConsumerInternal consumer = (ClientConsumerInternal)session.createConsumer(LargeMessageTest.ADDRESS);

            // Wait the consumer to be complete with 10 messages before getting others
            long timeout = System.currentTimeMillis() + 10000;
            while (consumer.getBufferSize() < 10 && timeout > System.currentTimeMillis())
            {
               Thread.sleep(10);
            }

            for (int i = 0; i < NUMBER_OF_MESSAGES; i++)
            {
               ClientMessage msg = consumer.receive(10000);
               Assert.assertNotNull(msg);

               // it will ignore the buffer (not read it) on the first try
               if (trans == 0)
               {
                  for (int byteRead = 0; byteRead < SIZE; byteRead++)
                  {
                     Assert.assertEquals(UnitTestCase.getSamplebyte(byteRead), msg.getBodyBuffer().readByte());
                  }
               }

               msg.acknowledge();
            }
            if (trans == 0)
            {
               session.rollback();
            }
            else
            {
               session.commit();
            }

            consumer.close();
         }

         Assert.assertEquals(0,
                             ((Queue)server.getPostOffice().getBinding(LargeMessageTest.ADDRESS).getBindable()).getDeliveringCount());
         Assert.assertEquals(0,
                             ((Queue)server.getPostOffice().getBinding(LargeMessageTest.ADDRESS).getBindable()).getMessageCount());

      }
      finally
      {
         try
         {
            session.close();
         }
         catch (Throwable ignored)
         {
         }

         try
         {
            server.stop();
         }
         catch (Throwable ignored)
         {
         }
      }
View Full Code Here

   }

   public void testSendStreamingSingleMessage() throws Exception
   {
      ClientSession session = null;
      HornetQServer server = null;

      final int SIZE = 10 * 1024 * 1024;
      try
      {

         server = createServer(true, isNetty());

         server.start();

         locator.setMinLargeMessageSize(100 * 1024);

         ClientSessionFactory sf = locator.createSessionFactory();

         session = sf.createSession(null, null, false, true, true, false, 0);

         session.createQueue(LargeMessageTest.ADDRESS, LargeMessageTest.ADDRESS, null, true);

         ClientMessage clientFile = session.createMessage(true);
         clientFile.setBodyInputStream(UnitTestCase.createFakeLargeStream(SIZE));

         ClientProducer producer = session.createProducer(LargeMessageTest.ADDRESS);

         session.start();

         log.debug("Sending");
         producer.send(clientFile);

         producer.close();

         log.debug("Waiting");

         ClientConsumer consumer = session.createConsumer(LargeMessageTest.ADDRESS);

         ClientMessage msg2 = consumer.receive(10000);

         msg2.acknowledge();

         msg2.setOutputStream(createFakeOutputStream());
         Assert.assertTrue(msg2.waitOutputStreamCompletion(60000));

         session.commit();

         Assert.assertEquals(0,
                             ((Queue)server.getPostOffice().getBinding(LargeMessageTest.ADDRESS).getBindable()).getDeliveringCount());
         Assert.assertEquals(0,
                             ((Queue)server.getPostOffice().getBinding(LargeMessageTest.ADDRESS).getBindable()).getMessageCount());

      }
      finally
      {
         try
         {
            session.close();
         }
         catch (Throwable ignored)
         {
         }

         try
         {
            server.stop();
         }
         catch (Throwable ignored)
         {
         }
      }
View Full Code Here

   /** Receive messages but never reads them, leaving the buffer pending */
   public void testIgnoreStreaming() throws Exception
   {
      ClientSession session = null;
      HornetQServer server = null;

      final int SIZE = 10 * 1024;
      final int NUMBER_OF_MESSAGES = 1;
      try
      {

         server = createServer(true, isNetty());

         server.start();

         locator.setMinLargeMessageSize(1024);

         ClientSessionFactory sf = locator.createSessionFactory();

         session = sf.createSession(null, null, false, true, true, false, 0);

         session.createQueue(LargeMessageTest.ADDRESS, LargeMessageTest.ADDRESS, null, true);

         ClientProducer producer = session.createProducer(LargeMessageTest.ADDRESS);

         for (int i = 0; i < NUMBER_OF_MESSAGES; i++)
         {
            ClientMessage msg = session.createMessage(true);
            msg.setBodyInputStream(UnitTestCase.createFakeLargeStream(SIZE));
            msg.putIntProperty(new SimpleString("key"), i);
            producer.send(msg);

            log.debug("Sent msg " + i);
         }

         session.start();

         log.debug("Sending");

         producer.close();

         log.debug("Waiting");

         ClientConsumer consumer = session.createConsumer(LargeMessageTest.ADDRESS);

         for (int i = 0; i < NUMBER_OF_MESSAGES; i++)
         {
            ClientMessage msg = consumer.receive(50000);
            Assert.assertNotNull(msg);

            Assert.assertEquals(i, msg.getObjectProperty(new SimpleString("key")));

            msg.acknowledge();
         }

         consumer.close();

         session.commit();

         Assert.assertEquals(0,
                             ((Queue)server.getPostOffice().getBinding(LargeMessageTest.ADDRESS).getBindable()).getDeliveringCount());
         Assert.assertEquals(0,
                             ((Queue)server.getPostOffice().getBinding(LargeMessageTest.ADDRESS).getBindable()).getMessageCount());

         log.debug("Thread done");
      }
      finally
      {
         try
         {
            session.close();
         }
         catch (Throwable ignored)
         {
         }

         try
         {
            server.stop();
         }
         catch (Throwable ignored)
         {
         }
      }
View Full Code Here

TOP

Related Classes of org.hornetq.core.server.HornetQServer

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.