[jboss-cvs] JBossAS SVN: r95959 - in projects/embedded/trunk/core/src: main/java/org/jboss/embedded/core/server and 1 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Tue Nov 3 11:04:08 EST 2009


Author: ALRubinger
Date: 2009-11-03 11:04:08 -0500 (Tue, 03 Nov 2009)
New Revision: 95959

Added:
   projects/embedded/trunk/core/src/main/java/org/jboss/embedded/core/lifecycle/SetIPv4LifecycleEventHandler.java
Modified:
   projects/embedded/trunk/core/src/main/java/org/jboss/embedded/core/server/JBossASEmbeddedServerImpl.java
   projects/embedded/trunk/core/src/test/java/org/jboss/embedded/core/server/ServerInitializationTestCase.java
Log:
[EMB-60] Set IPv4 Stack to true by default

Added: projects/embedded/trunk/core/src/main/java/org/jboss/embedded/core/lifecycle/SetIPv4LifecycleEventHandler.java
===================================================================
--- projects/embedded/trunk/core/src/main/java/org/jboss/embedded/core/lifecycle/SetIPv4LifecycleEventHandler.java	                        (rev 0)
+++ projects/embedded/trunk/core/src/main/java/org/jboss/embedded/core/lifecycle/SetIPv4LifecycleEventHandler.java	2009-11-03 16:04:08 UTC (rev 95959)
@@ -0,0 +1,80 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+  *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.embedded.core.lifecycle;
+
+/**
+ * SetRmiHostnameLifecycleEventHandler
+ * 
+ * Lifecycle event handler which, unless otherwise specified,
+ * sets the system property denoting that the IPv4 Stack should be used
+ *
+ * @author <a href="mailto:andrew.rubinger at jboss.org">ALR</a>
+ * @version $Revision: $
+ * @deprecated Always required?  JGroups broadcasting fails unless specified:
+ * 
+ * 2009-11-03 10:33:55,023 ERROR [org.jgroups.protocols.UDP] (ViewHandler,DefaultPartition,127.0.0.1:58265) 
+ * failed sending message to null (101 bytes)
+ * java.lang.Exception: dest=/228.11.11.11:45688 (104 bytes)
+ */
+ at Deprecated
+public class SetIPv4LifecycleEventHandler extends SetSysPropIfNotSpecifiedLifecycleEventHandler
+{
+
+   //-------------------------------------------------------------------------------------||
+   // Class Members ----------------------------------------------------------------------||
+   //-------------------------------------------------------------------------------------||
+
+   /**
+    * System property for the IPv4 Stack
+    */
+   private static final String SYS_PROP_RMI_SERVER_HOSTNAME = "java.net.preferIPv4Stack";
+
+   /**
+    * Value for the IPv4 Stack 
+    */
+   private static final String IPv4Value = Boolean.TRUE.toString();
+
+   //-------------------------------------------------------------------------------------||
+   // Required Implementations -----------------------------------------------------------||
+   //-------------------------------------------------------------------------------------||
+
+   /*
+    * (non-Javadoc)
+    * @see org.jboss.embedded.core.lifecycle.SetSysPropIfNotSpecifiedLifecycleEventHandler#getSysPropName()
+    */
+   @Override
+   String getSysPropName()
+   {
+      return SYS_PROP_RMI_SERVER_HOSTNAME;
+   }
+
+   /*
+    * (non-Javadoc)
+    * @see org.jboss.embedded.core.lifecycle.SetSysPropIfNotSpecifiedLifecycleEventHandler#getSysPropValue()
+    */
+   @Override
+   String getSysPropValue()
+   {
+      return IPv4Value;
+   }
+
+}

Modified: projects/embedded/trunk/core/src/main/java/org/jboss/embedded/core/server/JBossASEmbeddedServerImpl.java
===================================================================
--- projects/embedded/trunk/core/src/main/java/org/jboss/embedded/core/server/JBossASEmbeddedServerImpl.java	2009-11-03 15:50:07 UTC (rev 95958)
+++ projects/embedded/trunk/core/src/main/java/org/jboss/embedded/core/server/JBossASEmbeddedServerImpl.java	2009-11-03 16:04:08 UTC (rev 95959)
@@ -41,6 +41,7 @@
 import org.jboss.embedded.api.server.JBossASEmbeddedServer;
 import org.jboss.embedded.core.lifecycle.IgnoreXbUnorderedSequenceLifecycleEventHandler;
 import org.jboss.embedded.core.lifecycle.InitLoggingManagerLifecycleEventHandler;
+import org.jboss.embedded.core.lifecycle.SetIPv4LifecycleEventHandler;
 import org.jboss.embedded.core.lifecycle.SetRmiHostnameLifecycleEventHandler;
 import org.jboss.kernel.Kernel;
 import org.jboss.kernel.spi.dependency.KernelController;
@@ -320,6 +321,9 @@
       @SuppressWarnings("deprecation")
       final LifecycleEventHandler initLoggingManager = new InitLoggingManagerLifecycleEventHandler();
       this.registerEventHandler(LifecycleState.INITIALIZED, initLoggingManager);
+      @SuppressWarnings("deprecation")
+      final LifecycleEventHandler ipv4Handler = new SetIPv4LifecycleEventHandler();
+      this.registerEventHandler(LifecycleState.INITIALIZED, ipv4Handler);
 
       //TODO
       /*

Modified: projects/embedded/trunk/core/src/test/java/org/jboss/embedded/core/server/ServerInitializationTestCase.java
===================================================================
--- projects/embedded/trunk/core/src/test/java/org/jboss/embedded/core/server/ServerInitializationTestCase.java	2009-11-03 15:50:07 UTC (rev 95958)
+++ projects/embedded/trunk/core/src/test/java/org/jboss/embedded/core/server/ServerInitializationTestCase.java	2009-11-03 16:04:08 UTC (rev 95959)
@@ -103,6 +103,15 @@
       this.assertSysProp("java.util.logging.manager", "org.jboss.logmanager.LogManager");
    }
 
+   /**
+    * Ensures that the system property for IPv4 Stack is set
+    */
+   @Test
+   public void testIpv4() throws Exception
+   {
+      this.assertSysProp("java.net.preferIPv4Stack", "true");
+   }
+
    //-------------------------------------------------------------------------------------||
    // Helper Methods ---------------------------------------------------------------------||
    //-------------------------------------------------------------------------------------||




More information about the jboss-cvs-commits mailing list