Package org.jboss.jms.server

Examples of org.jboss.jms.server.ServerPeer$FailoverListener


                                               "each Connection Factory");
         }
     
         String locatorURI = (String)JMXAccessor.getJMXAttributeOverSecurity(server, connectorObjectName, "InvokerLocator");

         ServerPeer serverPeer = (ServerPeer)JMXAccessor.getJMXAttributeOverSecurity(server, serverPeerObjectName, "Instance");

         if (!serverPeer.isSupportsFailover())
         {
            this.supportsFailover = false;
         }
        
         InvokerLocator locator = new InvokerLocator(locatorURI);
        
         String protocol = locator.getProtocol();
        
         if (!disableRemotingChecks && (protocol.equals("bisocket") || protocol.equals("sslbisocket")))
         {        
           //Sanity check - If users are using the AS Service Binding Manager to provide the remoting connector
           //configuration, it is quite easy for them to end up using an old version depending on what version on
           //the AS they are running in - e.g. if they have forgotten to update it.
           //This can lead to subtle errors - therefore we do a sanity check by checking the existence of some properties
           //which should always be there
           Map params = locator.getParameters();          
          
           //The "compulsory" parameters
           boolean cont =
             checkParam(params, "marshaller", "org.jboss.jms.wireformat.JMSWireFormat") &&              
             checkParam(params, "unmarshaller", "org.jboss.jms.wireformat.JMSWireFormat") &&
             checkParam(params, "dataType", "jms") &&
             checkParam(params, "clientSocketClass", "org.jboss.jms.client.remoting.ClientSocketWrapper") &&
             checkParam(params, "numberOfCallRetries", "1") &&
             checkParam(params, "pingFrequency", "214748364") &&
             checkParam(params, "pingWindowFactor", "10");
          
           if (!cont)
           {
             throw new IllegalArgumentException("Failed to deploy connection factory since remoting configuration seems incorrect.");                                            
           }

           String val = (String)params.get("clientLeasePeriod");   
           if (val != null)
           {
             int i = Integer.parseInt(val);
             if (i < 5000)
             {
               log.warn("Value of clientLeasePeriod at " + i + " seems low. Normal values are >= 5000");
             }
           }
          
           val = (String)params.get("JBM_clientMaxPoolSize")
           if (val != null)
           {
             int i = Integer.parseInt(val);
             if (i < 50)
             {
               log.warn("Value of JBM_clientMaxPoolSize at " + i + " seems low. Normal values are >= 50");
             }
           }
         }

         connectionFactoryManager = serverPeer.getConnectionFactoryManager();
         connectorManager = serverPeer.getConnectorManager();
         connectionManager = serverPeer.getConnectionManager();

         int refCount = connectorManager.registerConnector(connectorObjectName.getCanonicalName());

         long leasePeriod = (Long)JMXAccessor.getJMXAttributeOverSecurity(server, connectorObjectName, "LeasePeriod");
View Full Code Here


      try
      {
         TransactionManager tm = getTransactionManagerReference();

         ServerPeer serverPeer = (ServerPeer) JMXAccessor.getJMXAttributeOverSecurity(server, serverPeerObjectName, "Instance");

         MessageStore ms = serverPeer.getMessageStore();
        
         PersistenceManager pm = serverPeer.getPersistenceManagerInstance();
        
         TransactionRepository tr = serverPeer.getTxRepository();
        
         IDManager idManager = serverPeer.getChannelIDManager();
        
         int nodeId = serverPeer.getServerPeerID();
        
         ClusterNotifier clusterNotifier = serverPeer.getClusterNotifier();

         ConditionFactory cf = new JMSConditionFactory();
                 
         FilterFactory ff = new SelectorFactory();
        
         if (clustered)
         {       
            ChannelFactory jChannelFactory = null;

           if (channelFactoryName != null)
            {
               Object info = null;
               try
               {
                  info = server.getMBeanInfo(channelFactoryName);
               }
               catch (Exception e)
               {
                  // log.error("Error", e);
                  // noop... means we couldn't find the channel hence we should use regular
                  // XMLChannelFactories
               }

               if (info != null)
               {
                  log.debug(this + " uses MultiplexerJChannelFactory");

                  jChannelFactory =
                     new MultiplexerChannelFactory(server, channelFactoryName, channelPartitionName,
                                                    controlChannelName, dataChannelName);
               }
               else
               {
                  log.debug(this + " uses XMLJChannelFactory");
                  jChannelFactory = new XMLChannelFactory(controlChannelConfig, dataChannelConfig);
               }
            }
            else
            {
               log.debug(this + " uses XMLJChannelFactory");
               jChannelFactory = new XMLChannelFactory(controlChannelConfig, dataChannelConfig);
            }
          
           postOffice =  new MessagingPostOffice(ds, tm, sqlProperties,
                                                 createTablesOnStartup,
                                                 nodeId, officeName, ms,
                                                 pm,
                                                 tr, ff, cf, idManager,
                                                 clusterNotifier,
                                                 groupName,
                                                 jChannelFactory,
                                                 stateTimeout, castTimeout,
                                                  serverPeer.isSupportsFailover(),
                                                  maxConcurrentReplications,
                                                  failoverOnNodeLeave);
         }
         else
         {
View Full Code Here

      if (destination.isTopic())
      {
         PostOffice postOffice = sessionEndpoint.getConnectionEndpoint().getServerPeer().getPostOfficeInstance();
                 
         ServerPeer sp = sessionEndpoint.getConnectionEndpoint().getServerPeer();
        
         Queue queue = postOffice.getBindingForQueueName(queueName).queue;       
        
         ManagedDestination mDest = sp.getDestinationManager().getDestination(destination.getName(), false);
        
         if (!queue.isRecoverable())
         {
            postOffice.removeBinding(queueName, false);           

            if (!mDest.isTemporary())
            {
              String counterName = TopicService.SUBSCRIPTION_MESSAGECOUNTER_PREFIX + queueName;
 
              MessageCounter counter = sp.getMessageCounterManager().unregisterMessageCounter(counterName);
 
              if (counter == null)
              {
                 throw new IllegalStateException("Cannot find counter to remove " + counterName);
              }
View Full Code Here

        Session sess1 = conn1.createSession(false, Session.AUTO_ACKNOWLEDGE);
       
        conn2 = (JBossConnection)cf.createConnection();
        Session sess2 = conn2.createSession(false, Session.AUTO_ACKNOWLEDGE);
       
        ServerPeer peer = ServerManagement.getServer().getServerPeer();
       
        SimpleConnectionManager cm = (SimpleConnectionManager)peer.getConnectionManager();
       
        //Simulate failure on connection
       
        Map jmsClients = cm.getClients();
        assertEquals(1, jmsClients.size());
View Full Code Here

   }
  

   public void testCFWithMock() throws Exception
   {
      ServerPeer mockPeer = new ServerPeer();
      SimpleConnectionManager cm = new SimpleConnectionManager();
     
      // Instead of exposing setConnectionManager just for this test, we are doing this hack
      // to set the ConnectionManager
      Field  field = ServerPeer.class.getDeclaredField("connectionManager");
View Full Code Here

      if (destination.isTopic())
      {
         PostOffice postOffice = sessionEndpoint.getConnectionEndpoint().getServerPeer().getPostOfficeInstance();
                 
         ServerPeer sp = sessionEndpoint.getConnectionEndpoint().getServerPeer();
        
         Queue queue = postOffice.getBindingForQueueName(queueName).queue;       
        
         ManagedDestination mDest = sp.getDestinationManager().getDestination(destination.getName(), false);
        
         if (!queue.isRecoverable())
         {
            postOffice.removeBinding(queueName, false);           

            if (!mDest.isTemporary())
            {
              String counterName = TopicService.SUBSCRIPTION_MESSAGECOUNTER_PREFIX + queueName;
 
              MessageCounter counter = sp.getMessageCounterManager().unregisterMessageCounter(counterName);
 
              if (counter == null)
              {
                 throw new IllegalStateException("Cannot find counter to remove " + counterName);
              }
View Full Code Here

                                               "each Connection Factory");
         }
     
         String locatorURI = (String)JMXAccessor.getJMXAttributeOverSecurity(server, connectorObjectName, "InvokerLocator");

         ServerPeer serverPeer = (ServerPeer)JMXAccessor.getJMXAttributeOverSecurity(server, serverPeerObjectName, "Instance");

         if (!serverPeer.isSupportsFailover())
         {
            this.supportsFailover = false;
         }
        
         InvokerLocator locator = new InvokerLocator(locatorURI);
        
         String protocol = locator.getProtocol();
        
         if (!disableRemotingChecks && (protocol.equals("bisocket") || protocol.equals("sslbisocket")))
         {        
           //Sanity check - If users are using the AS Service Binding Manager to provide the remoting connector
           //configuration, it is quite easy for them to end up using an old version depending on what version on
           //the AS they are running in - e.g. if they have forgotten to update it.
           //This can lead to subtle errors - therefore we do a sanity check by checking the existence of some properties
           //which should always be there
           Map params = locator.getParameters();          
          
           //The "compulsory" parameters
           boolean cont =
             checkParam(params, "marshaller", "org.jboss.jms.wireformat.JMSWireFormat") &&              
             checkParam(params, "unmarshaller", "org.jboss.jms.wireformat.JMSWireFormat") &&
             checkParam(params, "dataType", "jms") &&
             checkParam(params, "clientSocketClass", "org.jboss.jms.client.remoting.ClientSocketWrapper") &&
             checkParam(params, "numberOfCallRetries", "1") &&
             checkParam(params, "pingFrequency", "214748364") &&
             checkParam(params, "pingWindowFactor", "10");
          
           if (!cont)
           {
             throw new IllegalArgumentException("Failed to deploy connection factory since remoting configuration seems incorrect.");                                            
           }

           String val = (String)params.get("clientLeasePeriod");   
           if (val != null)
           {
             int i = Integer.parseInt(val);
             if (i < 5000)
             {
               log.warn("Value of clientLeasePeriod at " + i + " seems low. Normal values are >= 5000");
             }
           }
          
           val = (String)params.get("JBM_clientMaxPoolSize")
           if (val != null)
           {
             int i = Integer.parseInt(val);
             if (i < 50)
             {
               log.warn("Value of JBM_clientMaxPoolSize at " + i + " seems low. Normal values are >= 50");
             }
           }
         }

         connectionFactoryManager = serverPeer.getConnectionFactoryManager();
         connectorManager = serverPeer.getConnectorManager();
         connectionManager = serverPeer.getConnectionManager();

         int refCount = connectorManager.registerConnector(connectorObjectName.getCanonicalName());

         long leasePeriod = (Long)JMXAccessor.getJMXAttributeOverSecurity(server, connectorObjectName, "LeasePeriod");
View Full Code Here

      try
      {
         TransactionManager tm = getTransactionManagerReference();

         ServerPeer serverPeer = (ServerPeer) JMXAccessor.getJMXAttributeOverSecurity(server, serverPeerObjectName, "Instance");

         MessageStore ms = serverPeer.getMessageStore();
        
         PersistenceManager pm = serverPeer.getPersistenceManagerInstance();
        
         TransactionRepository tr = serverPeer.getTxRepository();
        
         IDManager idManager = serverPeer.getChannelIDManager();
        
         int nodeId = serverPeer.getServerPeerID();
        
         ClusterNotifier clusterNotifier = serverPeer.getClusterNotifier();

         ConditionFactory cf = new JMSConditionFactory();
                 
         FilterFactory ff = new SelectorFactory();
        
         if (clustered)
         {       
            ChannelFactory jChannelFactory = null;

           if (channelFactoryName != null)
            {
               Object info = null;
               try
               {
                  info = server.getMBeanInfo(channelFactoryName);
               }
               catch (Exception e)
               {
                  // log.error("Error", e);
                  // noop... means we couldn't find the channel hence we should use regular
                  // XMLChannelFactories
               }

               if (info != null)
               {
                  log.debug(this + " uses MultiplexerJChannelFactory");

                  jChannelFactory =
                     new MultiplexerChannelFactory(server, channelFactoryName, channelPartitionName,
                                                    controlChannelName, dataChannelName);
               }
               else
               {
                  log.debug(this + " uses XMLJChannelFactory");
                  jChannelFactory = new XMLChannelFactory(controlChannelConfig, dataChannelConfig);
               }
            }
            else
            {
               log.debug(this + " uses XMLJChannelFactory");
               jChannelFactory = new XMLChannelFactory(controlChannelConfig, dataChannelConfig);
            }
          
           // http://jira.jboss.org/jira/browse/JBMESSAGING-1244
           // if the channelPartitionName is set, we use it to identify the control and
           // data channels. Otherwise, we fall back to use groupName
           String channelName = (channelPartitionName == null)? channelPartitionName : groupName;
          
           postOffice =  new MessagingPostOffice(ds, tm, sqlProperties,
                                                 createTablesOnStartup,
                                                 nodeId, officeName, ms,
                                                 pm,
                                                 tr, ff, cf, idManager,
                                                 clusterNotifier,
                                                 channelName,
                                                 jChannelFactory,
                                                 stateTimeout, castTimeout,
                                                  serverPeer.isSupportsFailover(),
                                                  maxConcurrentReplications,
                                                  failoverOnNodeLeave);
         }
         else
         {
View Full Code Here

      try
      {
         TransactionManager tm = getTransactionManagerReference();

         ServerPeer serverPeer = (ServerPeer) JMXAccessor.getJMXAttributeOverSecurity(server, serverPeerObjectName, "Instance");

         MessageStore ms = serverPeer.getMessageStore();
        
         PersistenceManager pm = serverPeer.getPersistenceManagerInstance();
        
         TransactionRepository tr = serverPeer.getTxRepository();
        
         IDManager idManager = serverPeer.getChannelIDManager();
        
         int nodeId = serverPeer.getServerPeerID();
        
         ClusterNotifier clusterNotifier = serverPeer.getClusterNotifier();

         ConditionFactory cf = new JMSConditionFactory();
                 
         FilterFactory ff = new SelectorFactory();
        
         if (clustered)
         {       
            ChannelFactory jChannelFactory = null;

           if (channelFactoryName != null)
            {
               Object info = null;
               try
               {
                  info = server.getMBeanInfo(channelFactoryName);
               }
               catch (Exception e)
               {
                  // log.error("Error", e);
                  // noop... means we couldn't find the channel hence we should use regular
                  // XMLChannelFactories
               }

               if (info != null)
               {
                  log.debug(this + " uses MultiplexerJChannelFactory");

                  jChannelFactory =
                     new MultiplexerChannelFactory(server, channelFactoryName, channelPartitionName,
                                                    controlChannelName, dataChannelName);
               }
               else
               {
                  log.debug(this + " uses XMLJChannelFactory");
                  jChannelFactory = new XMLChannelFactory(controlChannelConfig, dataChannelConfig);
               }
            }
            else
            {
               log.debug(this + " uses XMLJChannelFactory");
               jChannelFactory = new XMLChannelFactory(controlChannelConfig, dataChannelConfig);
            }
          
           // http://jira.jboss.org/jira/browse/JBMESSAGING-1244
           // if the channelPartitionName is set, we use it to identify the control and
           // data channels. Otherwise, we fall back to use groupName
           String channelName = (channelPartitionName == null)? channelPartitionName : groupName;
          
           postOffice =  new MessagingPostOffice(ds, tm, sqlProperties,
                                                 createTablesOnStartup,
                                                 nodeId, officeName, ms,
                                                 pm,
                                                 tr, ff, cf, idManager,
                                                 clusterNotifier,
                                                 channelName,
                                                 jChannelFactory,
                                                 stateTimeout, castTimeout,
                                                  serverPeer.isSupportsFailover(),
                                                  maxConcurrentReplications,
                                                  failoverOnNodeLeave);
         }
         else
         {
View Full Code Here

      Session sess1 = conn1.createSession(false, Session.AUTO_ACKNOWLEDGE);
     
      JBossConnection conn2 = (JBossConnection)cf.createConnection();
      Session sess2 = conn2.createSession(false, Session.AUTO_ACKNOWLEDGE);
     
      ServerPeer peer = ServerManagement.getServer().getServerPeer();
     
      SimpleConnectionManager cm = (SimpleConnectionManager)peer.getConnectionManager();
     
      //Simulate failure on connection
     
      Map jmsClients = cm.getClients();
      assertEquals(1, jmsClients.size());
View Full Code Here

TOP

Related Classes of org.jboss.jms.server.ServerPeer$FailoverListener

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.