Author: lukaszlenart
Date: Tue May 15 11:42:38 2012
New Revision: 1338660

URL: http://svn.apache.org/viewvc?rev=1338660&view=rev
Log:
WW-3820 changes implementation of getInstanceNames(Class<?> type) to return 
empty set instead of null

Modified:
    
struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/Dispatcher.java
    
struts/struts2/trunk/plugins/config-browser/src/main/java/org/apache/struts2/config_browser/ShowBeansAction.java
    
struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/DefaultUnknownHandlerManager.java
    
struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/config/impl/DefaultConfiguration.java
    
struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/inject/Container.java
    
struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/inject/ContainerImpl.java
    
struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStackFactory.java
    
struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/util/fs/DefaultFileManagerFactory.java
    
struts/struts2/trunk/xwork-core/src/test/java/com/opensymphony/xwork2/util/fs/DefaultFileManagerFactoryTest.java

Modified: 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/Dispatcher.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/Dispatcher.java?rev=1338660&r1=1338659&r2=1338660&view=diff
==============================================================================
--- 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/Dispatcher.java
 (original)
+++ 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/dispatcher/Dispatcher.java
 Tue May 15 11:42:38 2012
@@ -741,11 +741,9 @@ public class Dispatcher {
             MultiPartRequest mpr = null;
             //check for alternate implementations of MultiPartRequest
             Set<String> multiNames = 
getContainer().getInstanceNames(MultiPartRequest.class);
-            if (multiNames != null) {
-                for (String multiName : multiNames) {
-                    if (multiName.equals(multipartHandlerName)) {
-                        mpr = 
getContainer().getInstance(MultiPartRequest.class, multiName);
-                    }
+            for (String multiName : multiNames) {
+                if (multiName.equals(multipartHandlerName)) {
+                    mpr = getContainer().getInstance(MultiPartRequest.class, 
multiName);
                 }
             }
             if (mpr == null ) {

Modified: 
struts/struts2/trunk/plugins/config-browser/src/main/java/org/apache/struts2/config_browser/ShowBeansAction.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/config-browser/src/main/java/org/apache/struts2/config_browser/ShowBeansAction.java?rev=1338660&r1=1338659&r2=1338660&view=diff
==============================================================================
--- 
struts/struts2/trunk/plugins/config-browser/src/main/java/org/apache/struts2/config_browser/ShowBeansAction.java
 (original)
+++ 
struts/struts2/trunk/plugins/config-browser/src/main/java/org/apache/struts2/config_browser/ShowBeansAction.java
 Tue May 15 11:42:38 2012
@@ -35,7 +35,6 @@ import org.apache.struts2.dispatcher.mul
 import org.apache.struts2.views.freemarker.FreemarkerManager;
 import org.apache.struts2.views.velocity.VelocityManager;
 
-import java.util.Collections;
 import java.util.Map;
 import java.util.Set;
 import java.util.TreeMap;
@@ -75,9 +74,6 @@ public class ShowBeansAction extends Act
             chosenName = "struts";
         }
         Set<String> names = container.getInstanceNames(type);
-        if (names == null) {
-            names = Collections.emptySet();
-        }
         if (!names.contains(chosenName)) {
             bindings.add(new Binding(getInstanceClassName(container, type, 
"default"), chosenName, constName, true));
         }

Modified: 
struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/DefaultUnknownHandlerManager.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/DefaultUnknownHandlerManager.java?rev=1338660&r1=1338659&r2=1338660&view=diff
==============================================================================
--- 
struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/DefaultUnknownHandlerManager.java
 (original)
+++ 
struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/DefaultUnknownHandlerManager.java
 Tue May 15 11:42:38 2012
@@ -15,20 +15,16 @@
  */
 package com.opensymphony.xwork2;
 
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Set;
-
-import com.opensymphony.xwork2.ActionContext;
-import com.opensymphony.xwork2.Result;
-import com.opensymphony.xwork2.UnknownHandler;
-import com.opensymphony.xwork2.UnknownHandlerManager;
 import com.opensymphony.xwork2.config.Configuration;
 import com.opensymphony.xwork2.config.entities.ActionConfig;
 import com.opensymphony.xwork2.config.entities.UnknownHandlerConfig;
 import com.opensymphony.xwork2.inject.Container;
 import com.opensymphony.xwork2.inject.Inject;
 
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Set;
+
 /**
  * Default implementation of UnknownHandlerManager
  *
@@ -69,11 +65,9 @@ public class DefaultUnknownHandlerManage
             } else {
                 //add all available UnknownHandlers
                 Set<String> unknowHandlerNames = 
container.getInstanceNames(UnknownHandler.class);
-                if (unknowHandlerNames != null) {
-                    for (String unknowHandlerName : unknowHandlerNames) {
-                        UnknownHandler uh = 
container.getInstance(UnknownHandler.class, unknowHandlerName);
-                        unknownHandlers.add(uh);
-                    }
+                for (String unknowHandlerName : unknowHandlerNames) {
+                    UnknownHandler uh = 
container.getInstance(UnknownHandler.class, unknowHandlerName);
+                    unknownHandlers.add(uh);
                 }
             }
         }

Modified: 
struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/config/impl/DefaultConfiguration.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/config/impl/DefaultConfiguration.java?rev=1338660&r1=1338659&r2=1338660&view=diff
==============================================================================
--- 
struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/config/impl/DefaultConfiguration.java
 (original)
+++ 
struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/config/impl/DefaultConfiguration.java
 Tue May 15 11:42:38 2012
@@ -17,7 +17,6 @@ package com.opensymphony.xwork2.config.i
 
 import com.opensymphony.xwork2.ActionContext;
 import com.opensymphony.xwork2.DefaultTextProvider;
-import com.opensymphony.xwork2.FileManager;
 import com.opensymphony.xwork2.FileManagerFactory;
 import com.opensymphony.xwork2.ObjectFactory;
 import com.opensymphony.xwork2.TextProvider;
@@ -57,7 +56,6 @@ import com.opensymphony.xwork2.util.Comp
 import com.opensymphony.xwork2.util.PatternMatcher;
 import com.opensymphony.xwork2.util.ValueStack;
 import com.opensymphony.xwork2.util.ValueStackFactory;
-import com.opensymphony.xwork2.util.fs.DefaultFileManager;
 import com.opensymphony.xwork2.util.fs.DefaultFileManagerFactory;
 import com.opensymphony.xwork2.util.location.LocatableProperties;
 import com.opensymphony.xwork2.util.logging.Logger;
@@ -240,13 +238,11 @@ public class DefaultConfiguration implem
 
             // Then process any package providers from the plugins
             Set<String> packageProviderNames = 
container.getInstanceNames(PackageProvider.class);
-            if (packageProviderNames != null) {
-                for (String name : packageProviderNames) {
-                    PackageProvider provider = 
container.getInstance(PackageProvider.class, name);
-                    provider.init(this);
-                    provider.loadPackages();
-                    packageProviders.add(provider);
-                }
+            for (String name : packageProviderNames) {
+                PackageProvider provider = 
container.getInstance(PackageProvider.class, name);
+                provider.init(this);
+                provider.loadPackages();
+                packageProviders.add(provider);
             }
 
             rebuildRuntimeConfiguration();

Modified: 
struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/inject/Container.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/inject/Container.java?rev=1338660&r1=1338659&r2=1338660&view=diff
==============================================================================
--- 
struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/inject/Container.java
 (original)
+++ 
struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/inject/Container.java
 Tue May 15 11:42:38 2012
@@ -97,7 +97,7 @@ public interface Container extends Seria
   /**
    * Gets a set of all registered names for the given type
    * @param type The instance type
-   * @return A set of registered names
+   * @return A set of registered names or empty set if no instances are 
registered for that type
    */
   Set<String> getInstanceNames(Class<?> type);
 

Modified: 
struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/inject/ContainerImpl.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/inject/ContainerImpl.java?rev=1338660&r1=1338659&r2=1338660&view=diff
==============================================================================
--- 
struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/inject/ContainerImpl.java
 (original)
+++ 
struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/inject/ContainerImpl.java
 Tue May 15 11:42:38 2012
@@ -558,7 +558,11 @@ class ContainerImpl implements Container
        }
 
        public Set<String> getInstanceNames( final Class<?> type ) {
-               return factoryNamesByType.get(type);
+        Set<String> names = factoryNamesByType.get(type);
+        if (names == null) {
+            names = Collections.emptySet();
+        }
+        return names;
        }
 
        ThreadLocal<Object[]> localContext =

Modified: 
struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStackFactory.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStackFactory.java?rev=1338660&r1=1338659&r2=1338660&view=diff
==============================================================================
--- 
struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStackFactory.java
 (original)
+++ 
struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/ognl/OgnlValueStackFactory.java
 Tue May 15 11:42:38 2012
@@ -75,38 +75,32 @@ public class OgnlValueStackFactory imple
     @Inject
     public void setContainer(Container container) throws 
ClassNotFoundException {
         Set<String> names = container.getInstanceNames(PropertyAccessor.class);
-        if (names != null) {
-            for (String name : names) {
-                Class cls = Class.forName(name);
-                if (cls != null) {
-                    if (Map.class.isAssignableFrom(cls)) {
-                        PropertyAccessor acc = 
container.getInstance(PropertyAccessor.class, name);
-                    }
-                    OgnlRuntime.setPropertyAccessor(cls, 
container.getInstance(PropertyAccessor.class, name));
-                    if (compoundRootAccessor == null && 
CompoundRoot.class.isAssignableFrom(cls)) {
-                        compoundRootAccessor = (CompoundRootAccessor) 
container.getInstance(PropertyAccessor.class, name);
-                    }
+        for (String name : names) {
+            Class cls = Class.forName(name);
+            if (cls != null) {
+                if (Map.class.isAssignableFrom(cls)) {
+                    PropertyAccessor acc = 
container.getInstance(PropertyAccessor.class, name);
+                }
+                OgnlRuntime.setPropertyAccessor(cls, 
container.getInstance(PropertyAccessor.class, name));
+                if (compoundRootAccessor == null && 
CompoundRoot.class.isAssignableFrom(cls)) {
+                    compoundRootAccessor = (CompoundRootAccessor) 
container.getInstance(PropertyAccessor.class, name);
                 }
             }
         }
-        
+
         names = container.getInstanceNames(MethodAccessor.class);
-        if (names != null) {
-            for (String name : names) {
-                Class cls = Class.forName(name);
-                if (cls != null) {
-                    OgnlRuntime.setMethodAccessor(cls, 
container.getInstance(MethodAccessor.class, name));
-                }
+        for (String name : names) {
+            Class cls = Class.forName(name);
+            if (cls != null) {
+                OgnlRuntime.setMethodAccessor(cls, 
container.getInstance(MethodAccessor.class, name));
             }
         }
-        
+
         names = container.getInstanceNames(NullHandler.class);
-        if (names != null) {
-            for (String name : names) {
-                Class cls = Class.forName(name);
-                if (cls != null) {
-                    OgnlRuntime.setNullHandler(cls, new 
OgnlNullHandlerWrapper(container.getInstance(NullHandler.class, name)));
-                }
+        for (String name : names) {
+            Class cls = Class.forName(name);
+            if (cls != null) {
+                OgnlRuntime.setNullHandler(cls, new 
OgnlNullHandlerWrapper(container.getInstance(NullHandler.class, name)));
             }
         }
         if (compoundRootAccessor == null) {

Modified: 
struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/util/fs/DefaultFileManagerFactory.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/util/fs/DefaultFileManagerFactory.java?rev=1338660&r1=1338659&r2=1338660&view=diff
==============================================================================
--- 
struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/util/fs/DefaultFileManagerFactory.java
 (original)
+++ 
struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/util/fs/DefaultFileManagerFactory.java
 Tue May 15 11:42:38 2012
@@ -21,17 +21,15 @@ public class DefaultFileManagerFactory i
     @Inject
     public DefaultFileManagerFactory(Container container) {
         Set<String> names = container.getInstanceNames(FileManager.class);
-        if (names != null) {
-            for (String fmName : names) {
-                FileManager fm = container.getInstance(FileManager.class, 
fmName);
-                if (fm.support()) {
-                    if (fileManager != null) {
-                        LOG.error("More than one FileManager supports current 
file system, [#0] and [#1]! "
-                                + "Remove one of them from the config! Using 
implementation [#2]",
-                                fm.toString(), fileManager.toString(), 
fm.toString());
-                    }
-                    fileManager = fm;
+        for (String fmName : names) {
+            FileManager fm = container.getInstance(FileManager.class, fmName);
+            if (fm.support()) {
+                if (fileManager != null) {
+                    LOG.error("More than one FileManager supports current file 
system, [#0] and [#1]! "
+                            + "Remove one of them from the config! Using 
implementation [#2]",
+                            fm.toString(), fileManager.toString(), 
fm.toString());
                 }
+                fileManager = fm;
             }
         }
         if (fileManager == null) {

Modified: 
struts/struts2/trunk/xwork-core/src/test/java/com/opensymphony/xwork2/util/fs/DefaultFileManagerFactoryTest.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/xwork-core/src/test/java/com/opensymphony/xwork2/util/fs/DefaultFileManagerFactoryTest.java?rev=1338660&r1=1338659&r2=1338660&view=diff
==============================================================================
--- 
struts/struts2/trunk/xwork-core/src/test/java/com/opensymphony/xwork2/util/fs/DefaultFileManagerFactoryTest.java
 (original)
+++ 
struts/struts2/trunk/xwork-core/src/test/java/com/opensymphony/xwork2/util/fs/DefaultFileManagerFactoryTest.java
 Tue May 15 11:42:38 2012
@@ -10,6 +10,7 @@ import java.io.IOException;
 import java.io.InputStream;
 import java.net.URL;
 import java.util.Collection;
+import java.util.Collections;
 import java.util.HashSet;
 import java.util.Set;
 
@@ -80,7 +81,7 @@ class DummyContainer implements Containe
                 }
             };
         }
-        return null;
+        return Collections.emptySet();
     }
 
     public void setScopeStrategy(Scope.Strategy scopeStrategy) {


Reply via email to