diff --git a/core/src/main/java/com/opensymphony/xwork2/XWorkJUnit4TestCase.java b/core/src/main/java/com/opensymphony/xwork2/XWorkJUnit4TestCase.java index 8b8979a0a..ebec23fa2 100644 --- a/core/src/main/java/com/opensymphony/xwork2/XWorkJUnit4TestCase.java +++ b/core/src/main/java/com/opensymphony/xwork2/XWorkJUnit4TestCase.java @@ -74,6 +74,10 @@ public abstract class XWorkJUnit4TestCase { return impl; } + @Override + public Class type() { + return impl.getClass(); + } }, Scope.SINGLETON); } }); diff --git a/core/src/main/java/com/opensymphony/xwork2/XWorkTestCase.java b/core/src/main/java/com/opensymphony/xwork2/XWorkTestCase.java index e6dfd6953..21442dabc 100644 --- a/core/src/main/java/com/opensymphony/xwork2/XWorkTestCase.java +++ b/core/src/main/java/com/opensymphony/xwork2/XWorkTestCase.java @@ -82,7 +82,11 @@ public abstract class XWorkTestCase extends TestCase { public Object create(Context context) throws Exception { return impl; } - + + @Override + public Class type() { + return impl.getClass(); + } }, Scope.SINGLETON); } }); diff --git a/core/src/main/java/com/opensymphony/xwork2/config/impl/DefaultConfiguration.java b/core/src/main/java/com/opensymphony/xwork2/config/impl/DefaultConfiguration.java index c8f98b82e..44746771c 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/impl/DefaultConfiguration.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/impl/DefaultConfiguration.java @@ -172,6 +172,11 @@ public class DefaultConfiguration implements Configuration { public Configuration create(Context context) throws Exception { return DefaultConfiguration.this; } + + @Override + public Class type() { + return DefaultConfiguration.this.getClass(); + } }); ActionContext oldContext = ActionContext.getContext(); diff --git a/core/src/main/java/com/opensymphony/xwork2/config/impl/LocatableConstantFactory.java b/core/src/main/java/com/opensymphony/xwork2/config/impl/LocatableConstantFactory.java index 334e72676..1d36e6245 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/impl/LocatableConstantFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/impl/LocatableConstantFactory.java @@ -36,7 +36,12 @@ public class LocatableConstantFactory extends Located implements Factory { public T create(Context ignored) { return constant; } - + + @Override + public Class type() { + return constant.getClass(); + } + @Override public String toString() { StringBuilder sb = new StringBuilder(); diff --git a/core/src/main/java/com/opensymphony/xwork2/config/impl/LocatableFactory.java b/core/src/main/java/com/opensymphony/xwork2/config/impl/LocatableFactory.java index 05e447c6f..712809487 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/impl/LocatableFactory.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/impl/LocatableFactory.java @@ -51,6 +51,11 @@ public class LocatableFactory extends Located implements Factory { return (T) obj; } + @Override + public Class type() { + return implementation; + } + @Override public String toString() { String fields = new LinkedHashMap() { diff --git a/core/src/main/java/com/opensymphony/xwork2/config/providers/XWorkConfigurationProvider.java b/core/src/main/java/com/opensymphony/xwork2/config/providers/XWorkConfigurationProvider.java index 04597e1cd..94c766cac 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/providers/XWorkConfigurationProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/providers/XWorkConfigurationProvider.java @@ -113,6 +113,7 @@ import ognl.PropertyAccessor; import org.apache.struts2.StrutsConstants; import org.apache.struts2.dispatcher.HttpParameters; import org.apache.struts2.dispatcher.Parameter; +import org.apache.struts2.factory.PrefixBasedActionProxyFactory; import java.util.ArrayList; import java.util.Collection; diff --git a/core/src/main/java/com/opensymphony/xwork2/inject/Scope.java b/core/src/main/java/com/opensymphony/xwork2/inject/Scope.java index 73ca87bdb..6b8048a9f 100644 --- a/core/src/main/java/com/opensymphony/xwork2/inject/Scope.java +++ b/core/src/main/java/com/opensymphony/xwork2/inject/Scope.java @@ -55,6 +55,11 @@ public enum Scope { } } + @Override + public Class type() { + return factory.type(); + } + @Override public String toString() { return factory.toString(); @@ -89,6 +94,11 @@ public enum Scope { return t; } + @Override + public Class type() { + return factory.type(); + } + @Override public String toString() { return factory.toString(); @@ -114,6 +124,11 @@ public enum Scope { } } + @Override + public Class type() { + return factory.type(); + } + @Override public String toString() { return factory.toString(); @@ -139,6 +154,11 @@ public enum Scope { } } + @Override + public Class type() { + return factory.type(); + } + @Override public String toString() { return factory.toString(); @@ -164,6 +184,11 @@ public enum Scope { } } + @Override + public Class type() { + return factory.type(); + } + @Override public String toString() { return factory.toString(); diff --git a/core/src/main/java/org/apache/struts2/config/AbstractBeanSelectionProvider.java b/core/src/main/java/org/apache/struts2/config/AbstractBeanSelectionProvider.java index 1b5d7e42b..908a66ed9 100644 --- a/core/src/main/java/org/apache/struts2/config/AbstractBeanSelectionProvider.java +++ b/core/src/main/java/org/apache/struts2/config/AbstractBeanSelectionProvider.java @@ -113,5 +113,10 @@ public abstract class AbstractBeanSelectionProvider implements BeanSelectionProv throw new ConfigurationException("Unable to load bean "+type.getName()+" ("+name+")"); } } + + @Override + public Class type() { + return type; + } } } diff --git a/core/src/main/java/org/apache/struts2/config/StrutsXmlConfigurationProvider.java b/core/src/main/java/org/apache/struts2/config/StrutsXmlConfigurationProvider.java index c4de24938..ef27b6ce5 100644 --- a/core/src/main/java/org/apache/struts2/config/StrutsXmlConfigurationProvider.java +++ b/core/src/main/java/org/apache/struts2/config/StrutsXmlConfigurationProvider.java @@ -90,6 +90,9 @@ public class StrutsXmlConfigurationProvider extends XmlConfigurationProvider { public ServletContext create(Context context) throws Exception { return servletContext; } + public Class type() { + return servletContext.getClass(); + } }); } super.register(containerBuilder, props); diff --git a/core/src/test/java/com/opensymphony/xwork2/ognl/SetPropertiesTest.java b/core/src/test/java/com/opensymphony/xwork2/ognl/SetPropertiesTest.java index c19895ff7..363acf977 100644 --- a/core/src/test/java/com/opensymphony/xwork2/ognl/SetPropertiesTest.java +++ b/core/src/test/java/com/opensymphony/xwork2/ognl/SetPropertiesTest.java @@ -144,7 +144,11 @@ public class SetPropertiesTest extends XWorkTestCase { public Object create(Context context) throws Exception { return new MockObjectTypeDeterminer(null,Cat.class,null,allowAdditions); } - + + @Override + public Class type() { + return Cat.class; + } }); } }); @@ -290,7 +294,11 @@ public class SetPropertiesTest extends XWorkTestCase { public Object create(Context context) throws Exception { return determiner; } - + + @Override + public Class type() { + return determiner.getClass(); + } }, Scope.SINGLETON); } });