Author: rmannibucau
Date: Mon Oct  8 16:23:58 2012
New Revision: 1395640

URL: http://svn.apache.org/viewvc?rev=1395640&view=rev
Log:
TOMEE-450 adding default profile

Modified:
    
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/security/internal/InternalSecurityInterceptor.java
    
openejb/trunk/openejb/container/openejb-loader/src/main/java/org/apache/openejb/loader/SystemInstance.java
    
openejb/trunk/openejb/server/openejb-activemq/src/main/resources/META-INF/org.apache.openejb.server.ServerService/activemq
    
openejb/trunk/openejb/server/openejb-cxf/src/main/resources/META-INF/org.apache.openejb.server.ServerService/cxf
    
openejb/trunk/openejb/server/openejb-derbynet/src/main/resources/META-INF/org.apache.openejb.server.ServerService/derbynet
    
openejb/trunk/openejb/server/openejb-ejbd/src/main/resources/META-INF/org.apache.openejb.server.ServerService/ejbd
    
openejb/trunk/openejb/server/openejb-ejbd/src/main/resources/META-INF/org.apache.openejb.server.ServerService/ejbds
    
openejb/trunk/openejb/server/openejb-hsql/src/main/resources/META-INF/org.apache.openejb.server.ServerService/hsql
    
openejb/trunk/openejb/server/openejb-http/src/main/java/org/apache/openejb/server/httpd/ServerServlet.java
    
openejb/trunk/openejb/server/openejb-http/src/main/resources/META-INF/org.apache.openejb.server.ServerService/httpejbd
    
openejb/trunk/openejb/server/openejb-multicast/src/main/resources/META-INF/org.apache.openejb.server.ServerService/multicast
    
openejb/trunk/openejb/server/openejb-multicast/src/main/resources/META-INF/org.apache.openejb.server.ServerService/multipoint
    
openejb/trunk/openejb/server/openejb-multicast/src/main/resources/META-INF/org.apache.openejb.server.ServerService/multipulse
    
openejb/trunk/openejb/server/openejb-ssh/src/main/resources/META-INF/org.apache.openejb.server.ServerService/ssh
    
openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/ContextListener.java
    
openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/GlobalListenerSupport.java
    
openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatWebAppBuilder.java
    
openejb/trunk/openejb/tomee/tomee-common/src/main/java/org/apache/tomee/installer/Installer.java

Modified: 
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/security/internal/InternalSecurityInterceptor.java
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/security/internal/InternalSecurityInterceptor.java?rev=1395640&r1=1395639&r2=1395640&view=diff
==============================================================================
--- 
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/security/internal/InternalSecurityInterceptor.java
 (original)
+++ 
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/security/internal/InternalSecurityInterceptor.java
 Mon Oct  8 16:23:58 2012
@@ -30,7 +30,7 @@ public class InternalSecurityInterceptor
 
     @AroundInvoke
     public Object invoke(final InvocationContext ic) throws Exception {
-        if 
(!SystemInstance.get().getOptions().get(OPENEJB_INTERNAL_BEANS_SECURITY_ENABLED,
 false)) {
+        if (SystemInstance.get().isDefaultProfile() || 
!SystemInstance.get().getOptions().get(OPENEJB_INTERNAL_BEANS_SECURITY_ENABLED, 
true)) {
             return ic.proceed();
         }
 

Modified: 
openejb/trunk/openejb/container/openejb-loader/src/main/java/org/apache/openejb/loader/SystemInstance.java
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb/container/openejb-loader/src/main/java/org/apache/openejb/loader/SystemInstance.java?rev=1395640&r1=1395639&r2=1395640&view=diff
==============================================================================
--- 
openejb/trunk/openejb/container/openejb-loader/src/main/java/org/apache/openejb/loader/SystemInstance.java
 (original)
+++ 
openejb/trunk/openejb/container/openejb-loader/src/main/java/org/apache/openejb/loader/SystemInstance.java
 Mon Oct  8 16:23:58 2012
@@ -38,6 +38,8 @@ import java.util.Properties;
  * @org.apache.xbean.XBean element="system"
  */
 public class SystemInstance {
+    private static final String PROFILE_PROP = "openejb.profile";
+    private static final String DEFAULT_PROFILE = "development";
 
     private final long startTime = System.currentTimeMillis();
 
@@ -235,6 +237,7 @@ public class SystemInstance {
         readUserSystemProperties();
         readSystemProperties();
         initialized = true;
+        get().setProperty("openejb.profile.custom", 
Boolean.toString(!get().isDefaultProfile()));
     }
 
     private static void readUserSystemProperties() {
@@ -295,6 +298,14 @@ public class SystemInstance {
         return system;
     }
 
+    public String currentProfile() {
+        return getProperty(PROFILE_PROP, DEFAULT_PROFILE);
+    }
+
+    public boolean isDefaultProfile() {
+        return DEFAULT_PROFILE.equals(currentProfile());
+    }
+
     /**
      * @param propName property name
      * @return true when property is set; false otherwise

Modified: 
openejb/trunk/openejb/server/openejb-activemq/src/main/resources/META-INF/org.apache.openejb.server.ServerService/activemq
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb/server/openejb-activemq/src/main/resources/META-INF/org.apache.openejb.server.ServerService/activemq?rev=1395640&r1=1395639&r2=1395640&view=diff
==============================================================================
--- 
openejb/trunk/openejb/server/openejb-activemq/src/main/resources/META-INF/org.apache.openejb.server.ServerService/activemq
 (original)
+++ 
openejb/trunk/openejb/server/openejb-activemq/src/main/resources/META-INF/org.apache.openejb.server.ServerService/activemq
 Mon Oct  8 16:23:58 2012
@@ -1,5 +1,5 @@
 server      = org.apache.openejb.server.activemq.BrokerServer
 bind        = 127.0.0.1
 port        = 4206
-disabled    = false
+disabled    = ${openejb.profile.custom}
 threads     = -

Modified: 
openejb/trunk/openejb/server/openejb-cxf/src/main/resources/META-INF/org.apache.openejb.server.ServerService/cxf
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb/server/openejb-cxf/src/main/resources/META-INF/org.apache.openejb.server.ServerService/cxf?rev=1395640&r1=1395639&r2=1395640&view=diff
==============================================================================
--- 
openejb/trunk/openejb/server/openejb-cxf/src/main/resources/META-INF/org.apache.openejb.server.ServerService/cxf
 (original)
+++ 
openejb/trunk/openejb/server/openejb-cxf/src/main/resources/META-INF/org.apache.openejb.server.ServerService/cxf
 Mon Oct  8 16:23:58 2012
@@ -10,4 +10,4 @@ authMethod  = NONE
 
 # virtualHost =
 
-disabled    = false
+disabled    = ${openejb.profile.custom}

Modified: 
openejb/trunk/openejb/server/openejb-derbynet/src/main/resources/META-INF/org.apache.openejb.server.ServerService/derbynet
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb/server/openejb-derbynet/src/main/resources/META-INF/org.apache.openejb.server.ServerService/derbynet?rev=1395640&r1=1395639&r2=1395640&view=diff
==============================================================================
--- 
openejb/trunk/openejb/server/openejb-derbynet/src/main/resources/META-INF/org.apache.openejb.server.ServerService/derbynet
 (original)
+++ 
openejb/trunk/openejb/server/openejb-derbynet/src/main/resources/META-INF/org.apache.openejb.server.ServerService/derbynet
 Mon Oct  8 16:23:58 2012
@@ -1,5 +1,5 @@
 server      = org.apache.openejb.server.derbynet.DerbyNetworkService
 bind        = 127.0.0.1
 port        = 4205
-disabled    = false
+disabled    = ${openejb.profile.custom}
 threads     = 200

Modified: 
openejb/trunk/openejb/server/openejb-ejbd/src/main/resources/META-INF/org.apache.openejb.server.ServerService/ejbd
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb/server/openejb-ejbd/src/main/resources/META-INF/org.apache.openejb.server.ServerService/ejbd?rev=1395640&r1=1395639&r2=1395640&view=diff
==============================================================================
--- 
openejb/trunk/openejb/server/openejb-ejbd/src/main/resources/META-INF/org.apache.openejb.server.ServerService/ejbd
 (original)
+++ 
openejb/trunk/openejb/server/openejb-ejbd/src/main/resources/META-INF/org.apache.openejb.server.ServerService/ejbd
 Mon Oct  8 16:23:58 2012
@@ -1,7 +1,7 @@
 server      = org.apache.openejb.server.ejbd.EjbServer
 bind        = 127.0.0.1
 port        = 4201
-disabled    = false
+disabled    = ${openejb.profile.custom}
 threads     = 200
 backlog     = 200
 discovery   = ejb:ejbd://{bind}:{port}

Modified: 
openejb/trunk/openejb/server/openejb-ejbd/src/main/resources/META-INF/org.apache.openejb.server.ServerService/ejbds
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb/server/openejb-ejbd/src/main/resources/META-INF/org.apache.openejb.server.ServerService/ejbds?rev=1395640&r1=1395639&r2=1395640&view=diff
==============================================================================
--- 
openejb/trunk/openejb/server/openejb-ejbd/src/main/resources/META-INF/org.apache.openejb.server.ServerService/ejbds
 (original)
+++ 
openejb/trunk/openejb/server/openejb-ejbd/src/main/resources/META-INF/org.apache.openejb.server.ServerService/ejbds
 Mon Oct  8 16:23:58 2012
@@ -1,7 +1,7 @@
 server      = org.apache.openejb.server.ejbd.EjbServer
 bind        = 127.0.0.1
 port        = 4203
-disabled    = false
+disabled    = ${openejb.profile.custom}
 threads     = 200
 backlog     = 200
 secure      = true

Modified: 
openejb/trunk/openejb/server/openejb-hsql/src/main/resources/META-INF/org.apache.openejb.server.ServerService/hsql
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb/server/openejb-hsql/src/main/resources/META-INF/org.apache.openejb.server.ServerService/hsql?rev=1395640&r1=1395639&r2=1395640&view=diff
==============================================================================
--- 
openejb/trunk/openejb/server/openejb-hsql/src/main/resources/META-INF/org.apache.openejb.server.ServerService/hsql
 (original)
+++ 
openejb/trunk/openejb/server/openejb-hsql/src/main/resources/META-INF/org.apache.openejb.server.ServerService/hsql
 Mon Oct  8 16:23:58 2012
@@ -1,4 +1,4 @@
 server      = org.apache.openejb.server.hsql.HsqlService
 bind        = 127.0.0.1
 port        = 9001
-disabled    = true
+disabled    = ${openejb.profile.custom}

Modified: 
openejb/trunk/openejb/server/openejb-http/src/main/java/org/apache/openejb/server/httpd/ServerServlet.java
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb/server/openejb-http/src/main/java/org/apache/openejb/server/httpd/ServerServlet.java?rev=1395640&r1=1395639&r2=1395640&view=diff
==============================================================================
--- 
openejb/trunk/openejb/server/openejb-http/src/main/java/org/apache/openejb/server/httpd/ServerServlet.java
 (original)
+++ 
openejb/trunk/openejb/server/openejb-http/src/main/java/org/apache/openejb/server/httpd/ServerServlet.java
 Mon Oct  8 16:23:58 2012
@@ -34,7 +34,7 @@ public class ServerServlet extends HttpS
     private static final String ACTIVATED_INIT_PARAM = "activated";
 
     private EjbServer ejbServer;
-    private boolean activated = true;
+    private boolean activated = SystemInstance.isDefaultProfile();
 
     public void init(ServletConfig config) {
         ejbServer = SystemInstance.get().getComponent(EjbServer.class);

Modified: 
openejb/trunk/openejb/server/openejb-http/src/main/resources/META-INF/org.apache.openejb.server.ServerService/httpejbd
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb/server/openejb-http/src/main/resources/META-INF/org.apache.openejb.server.ServerService/httpejbd?rev=1395640&r1=1395639&r2=1395640&view=diff
==============================================================================
--- 
openejb/trunk/openejb/server/openejb-http/src/main/resources/META-INF/org.apache.openejb.server.ServerService/httpejbd
 (original)
+++ 
openejb/trunk/openejb/server/openejb-http/src/main/resources/META-INF/org.apache.openejb.server.ServerService/httpejbd
 Mon Oct  8 16:23:58 2012
@@ -1,5 +1,5 @@
 server      = org.apache.openejb.server.httpd.HttpServerFactory
 bind        = 127.0.0.1
 port        = 4204
-disabled    = false
+disabled    = ${openejb.profile.custom}
 threads     = 200

Modified: 
openejb/trunk/openejb/server/openejb-multicast/src/main/resources/META-INF/org.apache.openejb.server.ServerService/multicast
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb/server/openejb-multicast/src/main/resources/META-INF/org.apache.openejb.server.ServerService/multicast?rev=1395640&r1=1395639&r2=1395640&view=diff
==============================================================================
--- 
openejb/trunk/openejb/server/openejb-multicast/src/main/resources/META-INF/org.apache.openejb.server.ServerService/multicast
 (original)
+++ 
openejb/trunk/openejb/server/openejb-multicast/src/main/resources/META-INF/org.apache.openejb.server.ServerService/multicast
 Mon Oct  8 16:23:58 2012
@@ -1,7 +1,7 @@
 server      = org.apache.openejb.server.discovery.MulticastDiscoveryAgent
 bind        = 239.255.2.3
 port        = 6142
-disabled    = true
+disabled    = ${openejb.profile.custom}
 
 group                  = default
 heart_rate             = 500

Modified: 
openejb/trunk/openejb/server/openejb-multicast/src/main/resources/META-INF/org.apache.openejb.server.ServerService/multipoint
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb/server/openejb-multicast/src/main/resources/META-INF/org.apache.openejb.server.ServerService/multipoint?rev=1395640&r1=1395639&r2=1395640&view=diff
==============================================================================
--- 
openejb/trunk/openejb/server/openejb-multicast/src/main/resources/META-INF/org.apache.openejb.server.ServerService/multipoint
 (original)
+++ 
openejb/trunk/openejb/server/openejb-multicast/src/main/resources/META-INF/org.apache.openejb.server.ServerService/multipoint
 Mon Oct  8 16:23:58 2012
@@ -1,7 +1,7 @@
 server      = org.apache.openejb.server.discovery.MultipointDiscoveryAgent
 bind        = 127.0.0.1
 port        = 4212
-disabled    = true
+disabled    = ${openejb.profile.custom}
 
 initialServers         =
 group                  = default

Modified: 
openejb/trunk/openejb/server/openejb-multicast/src/main/resources/META-INF/org.apache.openejb.server.ServerService/multipulse
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb/server/openejb-multicast/src/main/resources/META-INF/org.apache.openejb.server.ServerService/multipulse?rev=1395640&r1=1395639&r2=1395640&view=diff
==============================================================================
--- 
openejb/trunk/openejb/server/openejb-multicast/src/main/resources/META-INF/org.apache.openejb.server.ServerService/multipulse
 (original)
+++ 
openejb/trunk/openejb/server/openejb-multicast/src/main/resources/META-INF/org.apache.openejb.server.ServerService/multipulse
 Mon Oct  8 16:23:58 2012
@@ -1,4 +1,4 @@
 server      = org.apache.openejb.server.discovery.MulticastPulseAgent
 bind        = 239.255.2.3
 port        = 6142
-disabled    = true
\ No newline at end of file
+disabled    = ${openejb.profile.custom}
\ No newline at end of file

Modified: 
openejb/trunk/openejb/server/openejb-ssh/src/main/resources/META-INF/org.apache.openejb.server.ServerService/ssh
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb/server/openejb-ssh/src/main/resources/META-INF/org.apache.openejb.server.ServerService/ssh?rev=1395640&r1=1395639&r2=1395640&view=diff
==============================================================================
--- 
openejb/trunk/openejb/server/openejb-ssh/src/main/resources/META-INF/org.apache.openejb.server.ServerService/ssh
 (original)
+++ 
openejb/trunk/openejb/server/openejb-ssh/src/main/resources/META-INF/org.apache.openejb.server.ServerService/ssh
 Mon Oct  8 16:23:58 2012
@@ -2,4 +2,4 @@ server      = org.apache.openejb.server.
 bind        = 127.0.0.1
 port        = 4222
 domain      = PropertiesLogin
-disabled    = false
+disabled    = ${openejb.profile.custom}

Modified: 
openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/ContextListener.java
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/ContextListener.java?rev=1395640&r1=1395639&r2=1395640&view=diff
==============================================================================
--- 
openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/ContextListener.java
 (original)
+++ 
openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/ContextListener.java
 Mon Oct  8 16:23:58 2012
@@ -91,6 +91,8 @@ public interface ContextListener {
      */
     void afterStop(StandardServer standardServer);
 
+    void start(StandardServer server);
+
     /**
      * Called on periodic events.
      *

Modified: 
openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/GlobalListenerSupport.java
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/GlobalListenerSupport.java?rev=1395640&r1=1395639&r2=1395640&view=diff
==============================================================================
--- 
openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/GlobalListenerSupport.java
 (original)
+++ 
openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/GlobalListenerSupport.java
 Mon Oct  8 16:23:58 2012
@@ -27,6 +27,9 @@ import org.apache.catalina.core.Standard
 import org.apache.catalina.core.StandardEngine;
 import org.apache.catalina.core.StandardHost;
 import org.apache.catalina.core.StandardServer;
+import org.apache.catalina.deploy.ContextResource;
+import org.apache.catalina.deploy.NamingResources;
+import org.apache.openejb.loader.SystemInstance;
 import org.apache.tomee.catalina.cluster.TomEEClusterListener;
 import org.apache.tomee.loader.TomcatHelper;
 
@@ -127,6 +130,10 @@ public class GlobalListenerSupport imple
             StandardServer standardServer = (StandardServer) source;
             String type = event.getType();
 
+            if (Lifecycle.START_EVENT.equals(type)) {
+                contextListener.start(standardServer);
+            }
+
             if (Lifecycle.BEFORE_STOP_EVENT.equals(type)) {
                TomcatHelper.setStopping(true);
                 TomEEClusterListener.stop();

Modified: 
openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatWebAppBuilder.java
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatWebAppBuilder.java?rev=1395640&r1=1395639&r2=1395640&view=diff
==============================================================================
--- 
openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatWebAppBuilder.java
 (original)
+++ 
openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatWebAppBuilder.java
 Mon Oct  8 16:23:58 2012
@@ -27,6 +27,7 @@ import org.apache.catalina.Manager;
 import org.apache.catalina.Pipeline;
 import org.apache.catalina.Realm;
 import org.apache.catalina.Service;
+import org.apache.catalina.UserDatabase;
 import org.apache.catalina.Valve;
 import org.apache.catalina.Wrapper;
 import org.apache.catalina.core.ContainerBase;
@@ -51,6 +52,7 @@ import org.apache.catalina.startup.Const
 import org.apache.catalina.startup.ContextConfig;
 import org.apache.catalina.startup.HostConfig;
 import org.apache.catalina.startup.RealmRuleSet;
+import org.apache.catalina.users.MemoryUserDatabase;
 import org.apache.naming.ContextAccessController;
 import org.apache.naming.ContextBindings;
 import org.apache.openejb.AppContext;
@@ -309,6 +311,31 @@ public class TomcatWebAppBuilder impleme
         globalListenerSupport.stop();
     }
 
+    public void start(final StandardServer server) {
+        if (SystemInstance.get().isDefaultProfile()) { // add user tomee is no 
user are specified
+            try {
+                final NamingResources resources = 
server.getGlobalNamingResources();
+                final ContextResource userDataBaseResource = 
resources.findResource("UserDatabase");
+                final UserDatabase db = (UserDatabase) 
server.getGlobalNamingContext().lookup(userDataBaseResource.getName());
+                if (!db.getUsers().hasNext() && db instanceof 
MemoryUserDatabase) {
+                    final MemoryUserDatabase mudb = (MemoryUserDatabase) db;
+                    final boolean oldRo = mudb.getReadonly();
+                    try {
+                        ((MemoryUserDatabase) db).setReadonly(false);
+
+                        db.createRole("tomee-admin", "tomee admin role");
+                        db.createUser("tomee", "tomee", "TomEE");
+                        
db.findUser("tomee").addRole(db.findRole("tomee-admin"));
+                    } finally {
+                        mudb.setReadonly(oldRo);
+                    }
+                }
+            } catch (Throwable t) {
+                // no-op
+            }
+        }
+    }
+
     private static synchronized Digester createDigester() {
         if (CONTEXT_DIGESTER != null) {
             return CONTEXT_DIGESTER;

Modified: 
openejb/trunk/openejb/tomee/tomee-common/src/main/java/org/apache/tomee/installer/Installer.java
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb/tomee/tomee-common/src/main/java/org/apache/tomee/installer/Installer.java?rev=1395640&r1=1395639&r2=1395640&view=diff
==============================================================================
--- 
openejb/trunk/openejb/tomee/tomee-common/src/main/java/org/apache/tomee/installer/Installer.java
 (original)
+++ 
openejb/trunk/openejb/tomee/tomee-common/src/main/java/org/apache/tomee/installer/Installer.java
 Mon Oct  8 16:23:58 2012
@@ -129,8 +129,10 @@ public class Installer {
 
         // add our listener
         final String newTomcatUsers = tomcatUsersXml.replace("</tomcat-users>",
+                "  <!-- Activate those lines to get access to TomEE GUI\n" +
                 "  <role rolename=\"tomee-admin\" />\n" +
                 "  <user username=\"tomee\" password=\"tomee\" 
roles=\"tomee-admin,manager-gui\" />" +
+                "  -->" +
                 "\n</tomcat-users>\n");
 
         // overwrite server.xml


Reply via email to