Issue #1135 - Avoid allocations from Method.getParameterTypes() if possible

Signed-off-by: dreis2211 <christoph.dreis@freenet.de>
(cherry picked from commit 16334c1893)
This commit is contained in:
dreis2211 2016-11-28 21:14:21 +01:00 committed by Jan Bartel
parent dd76ed2449
commit 9b0f6b1fd5
8 changed files with 14 additions and 14 deletions

View File

@ -52,7 +52,7 @@ public class PostConstructAnnotationHandler extends AbstractIntrospectableAnnota
Method m = (Method)methods[i];
if (m.isAnnotationPresent(PostConstruct.class))
{
if (m.getParameterTypes().length != 0)
if (m.getParameterCount() != 0)
throw new IllegalStateException(m+" has parameters");
if (m.getReturnType() != Void.TYPE)
throw new IllegalStateException(m+" is not void");

View File

@ -51,7 +51,7 @@ public class PreDestroyAnnotationHandler extends AbstractIntrospectableAnnotatio
Method m = (Method)methods[i];
if (m.isAnnotationPresent(PreDestroy.class))
{
if (m.getParameterTypes().length != 0)
if (m.getParameterCount() != 0)
throw new IllegalStateException(m+" has parameters");
if (m.getReturnType() != Void.TYPE)
throw new IllegalStateException(m+" is not void");

View File

@ -257,7 +257,7 @@ public class ResourceAnnotationHandler extends AbstractIntrospectableAnnotationH
return;
}
if (method.getParameterTypes().length != 1)
if (method.getParameterCount() != 1)
{
LOG.warn("Skipping Resource annotation on "+clazz.getName()+"."+method.getName()+": invalid java bean, not single argument to method");
return;

View File

@ -663,7 +663,7 @@ public class ObjectMBean implements DynamicMBean
{
// look for a declared setter
if (methods[m].getName().equals(declaredSetter) && methods[m].getParameterTypes().length == 1)
if (methods[m].getName().equals(declaredSetter) && methods[m].getParameterCount() == 1)
{
if (setter != null)
{
@ -682,7 +682,7 @@ public class ObjectMBean implements DynamicMBean
}
// look for a setter
if ( methods[m].getName().equals("set" + uName) && methods[m].getParameterTypes().length == 1)
if ( methods[m].getName().equals("set" + uName) && methods[m].getParameterCount() == 1)
{
if (setter != null)
{

View File

@ -80,7 +80,7 @@ public class JSONObjectConvertor implements JSON.Convertor
{
Method m=methods[i];
if (!Modifier.isStatic(m.getModifiers()) &&
m.getParameterTypes().length==0 &&
m.getParameterCount()==0 &&
m.getReturnType()!=null &&
m.getDeclaringClass()!=Object.class)
{

View File

@ -116,7 +116,7 @@ public class JSONPojoConvertor implements JSON.Convertor
if (!Modifier.isStatic(m.getModifiers()) && m.getDeclaringClass()!=Object.class)
{
String name=m.getName();
switch(m.getParameterTypes().length)
switch(m.getParameterCount())
{
case 0:

View File

@ -44,7 +44,7 @@ public class IntrospectionUtil
if (!method.getName().startsWith("set"))
return false;
if (method.getParameterTypes().length != 1)
if (method.getParameterCount() != 1)
return false;
return true;

View File

@ -511,7 +511,7 @@ public class TypeUtil
{
if (!method.getName().equals(methodName))
continue;
if (method.getParameterTypes().length != arg.length)
if (method.getParameterCount() != arg.length)
continue;
if (Modifier.isStatic(method.getModifiers()) != (obj == null))
continue;
@ -535,7 +535,7 @@ public class TypeUtil
{
if (!method.getName().equals(methodName))
continue;
if (method.getParameterTypes().length != arg.length+1)
if (method.getParameterCount() != arg.length+1)
continue;
if (!method.getParameterTypes()[arg.length].isArray())
continue;
@ -569,10 +569,10 @@ public class TypeUtil
if (arguments == null)
{
// null arguments in .newInstance() is allowed
if (constructor.getParameterTypes().length != 0)
if (constructor.getParameterCount() != 0)
continue;
}
else if (constructor.getParameterTypes().length != arguments.length)
else if (constructor.getParameterCount() != arguments.length)
continue;
try
@ -597,10 +597,10 @@ public class TypeUtil
if (arguments == null)
{
// null arguments in .newInstance() is allowed
if (constructor.getParameterTypes().length != 0)
if (constructor.getParameterCount() != 0)
continue;
}
else if (constructor.getParameterTypes().length != arguments.length)
else if (constructor.getParameterCount() != arguments.length)
continue;
try