You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by da...@apache.org on 2007/01/20 00:48:22 UTC

svn commit: r498008 - /incubator/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/JndiEncBuilder.java

Author: dain
Date: Fri Jan 19 15:48:21 2007
New Revision: 498008

URL: http://svn.apache.org/viewvc?view=rev&rev=498008
Log:
More efficient building logic for xbean-naming contexts

Modified:
    incubator/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/JndiEncBuilder.java

Modified: incubator/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/JndiEncBuilder.java
URL: http://svn.apache.org/viewvc/incubator/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/JndiEncBuilder.java?view=diff&rev=498008&r1=498007&r2=498008
==============================================================================
--- incubator/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/JndiEncBuilder.java (original)
+++ incubator/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/JndiEncBuilder.java Fri Jan 19 15:48:21 2007
@@ -279,38 +279,37 @@
 
         Context context;
         if (System.getProperty("openejb.naming","ivm").equals("xbean")) {
-            context = createXBeanWritableContext();
+            context = createXBeanWritableContext(bindings);
         } else {
             context = createIvmContext();
-        }
-
 
-        // bind the bindings
-        for (Iterator iterator = bindings.entrySet().iterator(); iterator.hasNext();) {
-            Map.Entry entry = (Map.Entry) iterator.next();
-            String name = (String) entry.getKey();
-            Object value = entry.getValue();
-            if (value == null) continue;
-            try {
-                Name parsedName = context.getNameParser("").parse(name);
-                for (int i = 1; i < parsedName.size(); i++) {
-                    Name contextName = parsedName.getPrefix(i);
-                    if (!bindingExists(context, contextName)) {
-                        context.createSubcontext(contextName);
+            // bind the bindings
+            for (Iterator iterator = bindings.entrySet().iterator(); iterator.hasNext();) {
+                Map.Entry entry = (Map.Entry) iterator.next();
+                String name = (String) entry.getKey();
+                Object value = entry.getValue();
+                if (value == null) continue;
+                try {
+                    Name parsedName = context.getNameParser("").parse(name);
+                    for (int i = 1; i < parsedName.size(); i++) {
+                        Name contextName = parsedName.getPrefix(i);
+                        if (!bindingExists(context, contextName)) {
+                            context.createSubcontext(contextName);
+                        }
                     }
+                    context.bind(name, value);
+                } catch (NamingException e) {
+                    throw new org.apache.openejb.SystemException("Unable to bind '" + name + "' into bean's enc.", e);
                 }
-                context.bind(name, value);
-            } catch (NamingException e) {
-                throw new org.apache.openejb.SystemException("Unable to bind '" + name + "' into bean's enc.", e);
             }
         }
         return context;
     }
 
-    private WritableContext createXBeanWritableContext() {
+    private WritableContext createXBeanWritableContext(Map bindings) {
         WritableContext context = null;
         try {
-            context = new WritableContext();
+            context = new WritableContext("", bindings);
         } catch (NamingException e) {
             throw new IllegalStateException(e);
         }