You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by mb...@apache.org on 2014/03/26 21:20:03 UTC
svn commit: r1582033 [4/5] - in /commons/proper/proxy/trunk: ./ asm4/
asm4/src/main/java/org/apache/commons/proxy2/asm4/
asm4/src/test/java/org/apache/commons/proxy2/asm4/
build-tools/src/main/resources/org/apache/commons/proxy2/ cglib/
cglib/src/main/...
Modified: commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/interceptor/matcher/MethodNameMatcherTest.java
URL: http://svn.apache.org/viewvc/commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/interceptor/matcher/MethodNameMatcherTest.java?rev=1582033&r1=1582032&r2=1582033&view=diff
==============================================================================
--- commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/interceptor/matcher/MethodNameMatcherTest.java (original)
+++ commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/interceptor/matcher/MethodNameMatcherTest.java Wed Mar 26 20:20:01 2014
@@ -17,28 +17,29 @@
package org.apache.commons.proxy2.interceptor.matcher;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
+
+import java.lang.reflect.Method;
+
import org.apache.commons.proxy2.interceptor.matcher.invocation.MethodNameMatcher;
import org.apache.commons.proxy2.util.AbstractTestCase;
import org.apache.commons.proxy2.util.Echo;
import org.apache.commons.proxy2.util.MockInvocation;
import org.junit.Test;
-import java.lang.reflect.Method;
-
-import static org.junit.Assert.*;
-
public class MethodNameMatcherTest extends AbstractTestCase
{
-//----------------------------------------------------------------------------------------------------------------------
-// Other Methods
-//----------------------------------------------------------------------------------------------------------------------
+ //----------------------------------------------------------------------------------------------------------------------
+ // Other Methods
+ //----------------------------------------------------------------------------------------------------------------------
@Test
public void testWithMatchingMethod() throws Exception
{
MethodNameMatcher matcher = new MethodNameMatcher("echo");
final Method method = Echo.class.getMethod("echo");
- assertTrue(matcher.matches(new MockInvocation(method,null)));
+ assertTrue(matcher.matches(new MockInvocation(method, null)));
}
@Test
Modified: commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/interceptor/matcher/ReturnTypeMatcherTest.java
URL: http://svn.apache.org/viewvc/commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/interceptor/matcher/ReturnTypeMatcherTest.java?rev=1582033&r1=1582032&r2=1582033&view=diff
==============================================================================
--- commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/interceptor/matcher/ReturnTypeMatcherTest.java (original)
+++ commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/interceptor/matcher/ReturnTypeMatcherTest.java Wed Mar 26 20:20:01 2014
@@ -17,6 +17,12 @@
package org.apache.commons.proxy2.interceptor.matcher;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
+
+import java.io.Serializable;
+import java.lang.reflect.Method;
+
import org.apache.commons.proxy2.Invocation;
import org.apache.commons.proxy2.interceptor.matcher.invocation.ReturnTypeMatcher;
import org.apache.commons.proxy2.util.AbstractTestCase;
@@ -24,16 +30,11 @@ import org.apache.commons.proxy2.util.Ec
import org.apache.commons.proxy2.util.MockInvocation;
import org.junit.Test;
-import java.io.Serializable;
-import java.lang.reflect.Method;
-
-import static org.junit.Assert.*;
-
public class ReturnTypeMatcherTest extends AbstractTestCase
{
-//----------------------------------------------------------------------------------------------------------------------
-// Other Methods
-//----------------------------------------------------------------------------------------------------------------------
+ //----------------------------------------------------------------------------------------------------------------------
+ // Other Methods
+ //----------------------------------------------------------------------------------------------------------------------
@Test
public void testExactMatchNonMatching() throws Throwable
Modified: commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/interceptor/matcher/argument/ArgumentMatcherUtilsTest.java
URL: http://svn.apache.org/viewvc/commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/interceptor/matcher/argument/ArgumentMatcherUtilsTest.java?rev=1582033&r1=1582032&r2=1582033&view=diff
==============================================================================
--- commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/interceptor/matcher/argument/ArgumentMatcherUtilsTest.java (original)
+++ commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/interceptor/matcher/argument/ArgumentMatcherUtilsTest.java Wed Mar 26 20:20:01 2014
@@ -17,17 +17,18 @@
package org.apache.commons.proxy2.interceptor.matcher.argument;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
+
import org.apache.commons.proxy2.interceptor.matcher.ArgumentMatcher;
import org.junit.Test;
-import static org.junit.Assert.*;
-
public class ArgumentMatcherUtilsTest
{
@Test
public void testAny() throws Exception
{
- ArgumentMatcher<Object> matcher =ArgumentMatcherUtils.any();
+ ArgumentMatcher<Object> matcher = ArgumentMatcherUtils.any();
assertTrue(matcher.matches(null));
assertTrue(matcher.matches("Hello!"));
assertTrue(matcher.matches(12345));
Modified: commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/provider/BeanProviderTest.java
URL: http://svn.apache.org/viewvc/commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/provider/BeanProviderTest.java?rev=1582033&r1=1582032&r2=1582033&view=diff
==============================================================================
--- commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/provider/BeanProviderTest.java (original)
+++ commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/provider/BeanProviderTest.java Wed Mar 26 20:20:01 2014
@@ -23,9 +23,9 @@ import org.junit.Test;
public class BeanProviderTest extends AbstractTestCase
{
-//**********************************************************************************************************************
-// Other Methods
-//**********************************************************************************************************************
+ //**********************************************************************************************************************
+ // Other Methods
+ //**********************************************************************************************************************
@Test(expected = ObjectProviderException.class)
public void testAbstractBeanClass()
@@ -53,9 +53,9 @@ public class BeanProviderTest extends Ab
p.getObject();
}
-//**********************************************************************************************************************
-// Inner Classes
-//**********************************************************************************************************************
+ //**********************************************************************************************************************
+ // Inner Classes
+ //**********************************************************************************************************************
public static class MyBean
{
Modified: commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/provider/CloningProviderTest.java
URL: http://svn.apache.org/viewvc/commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/provider/CloningProviderTest.java?rev=1582033&r1=1582032&r2=1582033&view=diff
==============================================================================
--- commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/provider/CloningProviderTest.java (original)
+++ commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/provider/CloningProviderTest.java Wed Mar 26 20:20:01 2014
@@ -17,19 +17,21 @@
package org.apache.commons.proxy2.provider;
-import org.apache.commons.proxy2.exception.ObjectProviderException;
-import org.apache.commons.proxy2.util.AbstractTestCase;
-import org.junit.Test;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotSame;
+import static org.junit.Assert.fail;
import java.util.Date;
-import static org.junit.Assert.*;
+import org.apache.commons.proxy2.exception.ObjectProviderException;
+import org.apache.commons.proxy2.util.AbstractTestCase;
+import org.junit.Test;
public class CloningProviderTest extends AbstractTestCase
{
-//**********************************************************************************************************************
-// Other Methods
-//**********************************************************************************************************************
+ //**********************************************************************************************************************
+ // Other Methods
+ //**********************************************************************************************************************
@Test
public void testSerialization()
@@ -54,7 +56,8 @@ public class CloningProviderTest extends
@Test
public void testWithExceptionThrown()
{
- final CloningProvider<ExceptionCloneable> provider = new CloningProvider<ExceptionCloneable>(new ExceptionCloneable());
+ final CloningProvider<ExceptionCloneable> provider = new CloningProvider<ExceptionCloneable>(
+ new ExceptionCloneable());
try
{
provider.getObject();
@@ -74,13 +77,14 @@ public class CloningProviderTest extends
@Test(expected = IllegalArgumentException.class)
public void testWithProtectedCloneMethod()
{
- final CloningProvider<ProtectedCloneable> provider = new CloningProvider<ProtectedCloneable>(new ProtectedCloneable());
+ final CloningProvider<ProtectedCloneable> provider = new CloningProvider<ProtectedCloneable>(
+ new ProtectedCloneable());
provider.getObject();
}
-//**********************************************************************************************************************
-// Inner Classes
-//**********************************************************************************************************************
+ //**********************************************************************************************************************
+ // Inner Classes
+ //**********************************************************************************************************************
public static class ExceptionCloneable implements Cloneable
{
Modified: commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/provider/ConstantProviderTest.java
URL: http://svn.apache.org/viewvc/commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/provider/ConstantProviderTest.java?rev=1582033&r1=1582032&r2=1582033&view=diff
==============================================================================
--- commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/provider/ConstantProviderTest.java (original)
+++ commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/provider/ConstantProviderTest.java Wed Mar 26 20:20:01 2014
@@ -17,19 +17,19 @@
package org.apache.commons.proxy2.provider;
+import static org.junit.Assert.assertSame;
+
import org.apache.commons.proxy2.util.AbstractTestCase;
import org.junit.Test;
-import static org.junit.Assert.*;
-
/**
* @since 1.0
*/
public class ConstantProviderTest extends AbstractTestCase
{
-//**********************************************************************************************************************
-// Other Methods
-//**********************************************************************************************************************
+ //**********************************************************************************************************************
+ // Other Methods
+ //**********************************************************************************************************************
@Test
public void testGetObject() throws Exception
Modified: commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/provider/CountingProvider.java
URL: http://svn.apache.org/viewvc/commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/provider/CountingProvider.java?rev=1582033&r1=1582032&r2=1582033&view=diff
==============================================================================
--- commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/provider/CountingProvider.java (original)
+++ commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/provider/CountingProvider.java Wed Mar 26 20:20:01 2014
@@ -25,25 +25,24 @@ import org.apache.commons.proxy2.ObjectP
*/
public class CountingProvider<T> extends ProviderDecorator<T>
{
-//**********************************************************************************************************************
-// Fields
-//**********************************************************************************************************************
+ //**********************************************************************************************************************
+ // Fields
+ //**********************************************************************************************************************
private int count = 0;
-//**********************************************************************************************************************
-// Constructors
-//**********************************************************************************************************************
+ //**********************************************************************************************************************
+ // Constructors
+ //**********************************************************************************************************************
- public CountingProvider( ObjectProvider<? extends T> inner )
+ public CountingProvider(ObjectProvider<? extends T> inner)
{
super(inner);
}
-//**********************************************************************************************************************
-// ObjectProvider Implementation
-//**********************************************************************************************************************
-
+ //**********************************************************************************************************************
+ // ObjectProvider Implementation
+ //**********************************************************************************************************************
public synchronized T getObject()
{
@@ -51,9 +50,9 @@ public class CountingProvider<T> extends
return super.getObject();
}
-//**********************************************************************************************************************
-// Getter/Setter Methods
-//**********************************************************************************************************************
+ //**********************************************************************************************************************
+ // Getter/Setter Methods
+ //**********************************************************************************************************************
public synchronized int getCount()
{
Modified: commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/provider/NullProviderTest.java
URL: http://svn.apache.org/viewvc/commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/provider/NullProviderTest.java?rev=1582033&r1=1582032&r2=1582033&view=diff
==============================================================================
--- commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/provider/NullProviderTest.java (original)
+++ commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/provider/NullProviderTest.java Wed Mar 26 20:20:01 2014
@@ -17,20 +17,20 @@
package org.apache.commons.proxy2.provider;
+import static org.junit.Assert.assertNull;
+
import org.apache.commons.proxy2.util.AbstractTestCase;
import org.junit.Test;
-import static org.junit.Assert.*;
-
/**
* @author James Carman
* @since 1.0
*/
public class NullProviderTest extends AbstractTestCase
{
-//**********************************************************************************************************************
-// Other Methods
-//**********************************************************************************************************************
+ //**********************************************************************************************************************
+ // Other Methods
+ //**********************************************************************************************************************
@Test
public void testGetObject()
Modified: commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/provider/ObjectProviderUtilsTest.java
URL: http://svn.apache.org/viewvc/commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/provider/ObjectProviderUtilsTest.java?rev=1582033&r1=1582032&r2=1582033&view=diff
==============================================================================
--- commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/provider/ObjectProviderUtilsTest.java (original)
+++ commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/provider/ObjectProviderUtilsTest.java Wed Mar 26 20:20:01 2014
@@ -17,13 +17,13 @@
package org.apache.commons.proxy2.provider;
-import org.apache.commons.proxy2.util.AbstractTestCase;
-import org.apache.commons.proxy2.util.EchoImpl;
-import org.junit.Test;
+import static org.junit.Assert.assertTrue;
import java.util.Date;
-import static org.junit.Assert.*;
+import org.apache.commons.proxy2.util.AbstractTestCase;
+import org.apache.commons.proxy2.util.EchoImpl;
+import org.junit.Test;
public class ObjectProviderUtilsTest extends AbstractTestCase
{
Modified: commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/util/AbstractEcho.java
URL: http://svn.apache.org/viewvc/commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/util/AbstractEcho.java?rev=1582033&r1=1582032&r2=1582033&view=diff
==============================================================================
--- commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/util/AbstractEcho.java (original)
+++ commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/util/AbstractEcho.java Wed Mar 26 20:20:01 2014
@@ -26,11 +26,11 @@ import java.io.Serializable;
@SuppressWarnings("serial")
public abstract class AbstractEcho implements Echo, Serializable
{
-//**********************************************************************************************************************
-// Echo Implementation
-//**********************************************************************************************************************
+ //**********************************************************************************************************************
+ // Echo Implementation
+ //**********************************************************************************************************************
- public String echoBack( String message )
+ public String echoBack(String message)
{
return message;
}
Modified: commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/util/AbstractTestCase.java
URL: http://svn.apache.org/viewvc/commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/util/AbstractTestCase.java?rev=1582033&r1=1582032&r2=1582033&view=diff
==============================================================================
--- commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/util/AbstractTestCase.java (original)
+++ commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/util/AbstractTestCase.java Wed Mar 26 20:20:01 2014
@@ -16,31 +16,31 @@
*/
package org.apache.commons.proxy2.util;
+import static org.junit.Assert.assertTrue;
+
+import java.io.Serializable;
+import java.lang.reflect.Method;
+
import org.apache.commons.lang3.SerializationUtils;
import org.apache.commons.lang3.Validate;
import org.apache.commons.lang3.builder.Builder;
import org.apache.commons.proxy2.Invocation;
import org.apache.commons.proxy2.ProxyUtils;
-import java.io.Serializable;
-import java.lang.reflect.Method;
-
-import static org.junit.Assert.*;
-
/**
* @author James Carman
* @since 2.0
*/
public abstract class AbstractTestCase
{
-//**********************************************************************************************************************
-// Other Methods
-//**********************************************************************************************************************
+ //**********************************************************************************************************************
+ // Other Methods
+ //**********************************************************************************************************************
- protected void assertSerializable( Object o )
+ protected void assertSerializable(Object o)
{
assertTrue(o instanceof Serializable);
- SerializationUtils.clone(( Serializable ) o);
+ SerializationUtils.clone((Serializable) o);
}
protected MockInvocationBuilder mockInvocation(Class<?> type, String name, Class<?>... argumentTypes)
Modified: commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/util/DuplicateEcho.java
URL: http://svn.apache.org/viewvc/commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/util/DuplicateEcho.java?rev=1582033&r1=1582032&r2=1582033&view=diff
==============================================================================
--- commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/util/DuplicateEcho.java (original)
+++ commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/util/DuplicateEcho.java Wed Mar 26 20:20:01 2014
@@ -23,9 +23,9 @@ package org.apache.commons.proxy2.util;
*/
public interface DuplicateEcho
{
-//**********************************************************************************************************************
-// Other Methods
-//**********************************************************************************************************************
+ //**********************************************************************************************************************
+ // Other Methods
+ //**********************************************************************************************************************
- public String echoBack( String message );
+ public String echoBack(String message);
}
Modified: commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/util/Echo.java
URL: http://svn.apache.org/viewvc/commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/util/Echo.java?rev=1582033&r1=1582032&r2=1582033&view=diff
==============================================================================
--- commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/util/Echo.java (original)
+++ commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/util/Echo.java Wed Mar 26 20:20:01 2014
@@ -25,25 +25,25 @@ import java.io.IOException;
*/
public interface Echo
{
-//**********************************************************************************************************************
-// Other Methods
-//**********************************************************************************************************************
+ //**********************************************************************************************************************
+ // Other Methods
+ //**********************************************************************************************************************
public void echo();
- public String echoBack( String message );
+ public String echoBack(String message);
- public String echoBack( String[] messages );
+ public String echoBack(String[] messages);
- public String echoBack( String[][] messages );
+ public String echoBack(String[][] messages);
- public String echoBack( String[][][] messages );
+ public String echoBack(String[][][] messages);
- public int echoBack( int i );
+ public int echoBack(int i);
- public boolean echoBack( boolean b );
+ public boolean echoBack(boolean b);
- public String echoBack( String message1, String message2 );
+ public String echoBack(String message1, String message2);
public void illegalArgument();
Modified: commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/util/EchoImpl.java
URL: http://svn.apache.org/viewvc/commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/util/EchoImpl.java?rev=1582033&r1=1582032&r2=1582033&view=diff
==============================================================================
--- commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/util/EchoImpl.java (original)
+++ commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/util/EchoImpl.java Wed Mar 26 20:20:01 2014
@@ -26,30 +26,29 @@ import java.io.Serializable;
*/
public class EchoImpl extends AbstractEcho implements DuplicateEcho, Serializable
{
-//**********************************************************************************************************************
-// Fields
-//**********************************************************************************************************************
+ //**********************************************************************************************************************
+ // Fields
+ //**********************************************************************************************************************
private static final long serialVersionUID = -4844873352607521103L;
-//**********************************************************************************************************************
-// Echo Implementation
-//**********************************************************************************************************************
-
+ //**********************************************************************************************************************
+ // Echo Implementation
+ //**********************************************************************************************************************
public void echo()
{
}
- public boolean echoBack( boolean b )
+ public boolean echoBack(boolean b)
{
return b;
}
- public String echoBack( String[] messages )
+ public String echoBack(String[] messages)
{
final StringBuilder sb = new StringBuilder();
- for( int i = 0; i < messages.length; i++ )
+ for (int i = 0; i < messages.length; i++)
{
String message = messages[i];
sb.append(message);
@@ -57,32 +56,32 @@ public class EchoImpl extends AbstractEc
return sb.toString();
}
- public String echoBack( String[][] messages )
+ public String echoBack(String[][] messages)
{
final StringBuilder sb = new StringBuilder();
- for( int i = 0; i < messages.length; i++ )
+ for (int i = 0; i < messages.length; i++)
{
sb.append(echoBack(messages[i]));
}
return sb.toString();
}
- public String echoBack( String[][][] messages )
+ public String echoBack(String[][][] messages)
{
final StringBuilder sb = new StringBuilder();
- for( int i = 0; i < messages.length; i++ )
+ for (int i = 0; i < messages.length; i++)
{
sb.append(echoBack(messages[i]));
}
return sb.toString();
}
- public int echoBack( int i )
+ public int echoBack(int i)
{
return i;
}
- public String echoBack( String message1, String message2 )
+ public String echoBack(String message1, String message2)
{
return message1 + message2;
}
Modified: commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/util/MockInvocation.java
URL: http://svn.apache.org/viewvc/commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/util/MockInvocation.java?rev=1582033&r1=1582032&r2=1582033&view=diff
==============================================================================
--- commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/util/MockInvocation.java (original)
+++ commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/util/MockInvocation.java Wed Mar 26 20:20:01 2014
@@ -16,35 +16,37 @@
*/
package org.apache.commons.proxy2.util;
-import org.apache.commons.proxy2.Invocation;
-
import java.lang.reflect.Method;
+import org.apache.commons.lang3.ArrayUtils;
+import org.apache.commons.lang3.ObjectUtils;
+import org.apache.commons.proxy2.Invocation;
+import org.apache.commons.proxy2.ProxyUtils;
+
public class MockInvocation implements Invocation
{
-//----------------------------------------------------------------------------------------------------------------------
-// Fields
-//----------------------------------------------------------------------------------------------------------------------
+ //----------------------------------------------------------------------------------------------------------------------
+ // Fields
+ //----------------------------------------------------------------------------------------------------------------------
private final Method method;
private final Object[] arguments;
private final Object returnValue;
-//----------------------------------------------------------------------------------------------------------------------
-// Constructors
-//----------------------------------------------------------------------------------------------------------------------
+ //----------------------------------------------------------------------------------------------------------------------
+ // Constructors
+ //----------------------------------------------------------------------------------------------------------------------
public MockInvocation(Method method, Object returnValue, Object... arguments)
{
this.returnValue = returnValue;
- this.arguments = arguments;
+ this.arguments = ObjectUtils.defaultIfNull(ArrayUtils.clone(arguments), ProxyUtils.EMPTY_ARGUMENTS);
this.method = method;
}
-//----------------------------------------------------------------------------------------------------------------------
-// Invocation Implementation
-//----------------------------------------------------------------------------------------------------------------------
-
+ //----------------------------------------------------------------------------------------------------------------------
+ // Invocation Implementation
+ //----------------------------------------------------------------------------------------------------------------------
@Override
public Object[] getArguments()
Modified: commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/util/QuoteService.java
URL: http://svn.apache.org/viewvc/commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/util/QuoteService.java?rev=1582033&r1=1582032&r2=1582033&view=diff
==============================================================================
--- commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/util/QuoteService.java (original)
+++ commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/util/QuoteService.java Wed Mar 26 20:20:01 2014
@@ -26,9 +26,9 @@ import java.rmi.RemoteException;
*/
public interface QuoteService extends Remote
{
-//**********************************************************************************************************************
-// Other Methods
-//**********************************************************************************************************************
+ //**********************************************************************************************************************
+ // Other Methods
+ //**********************************************************************************************************************
- public float getQuote( String symbol ) throws RemoteException;
+ public float getQuote(String symbol) throws RemoteException;
}
Modified: commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/util/SuffixInterceptor.java
URL: http://svn.apache.org/viewvc/commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/util/SuffixInterceptor.java?rev=1582033&r1=1582032&r2=1582033&view=diff
==============================================================================
--- commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/util/SuffixInterceptor.java (original)
+++ commons/proper/proxy/trunk/core/src/test/java/org/apache/commons/proxy2/util/SuffixInterceptor.java Wed Mar 26 20:20:01 2014
@@ -27,33 +27,32 @@ import org.apache.commons.proxy2.Invocat
@SuppressWarnings("serial")
public class SuffixInterceptor implements Interceptor
{
-//**********************************************************************************************************************
-// Fields
-//**********************************************************************************************************************
+ //**********************************************************************************************************************
+ // Fields
+ //**********************************************************************************************************************
private final String suffix;
-//**********************************************************************************************************************
-// Constructors
-//**********************************************************************************************************************
+ //**********************************************************************************************************************
+ // Constructors
+ //**********************************************************************************************************************
- public SuffixInterceptor( String suffix )
+ public SuffixInterceptor(String suffix)
{
this.suffix = suffix;
}
-//**********************************************************************************************************************
-// Interceptor Implementation
-//**********************************************************************************************************************
+ //**********************************************************************************************************************
+ // Interceptor Implementation
+ //**********************************************************************************************************************
-
- public Object intercept( Invocation methodInvocation ) throws Throwable
+ public Object intercept(Invocation methodInvocation) throws Throwable
{
- Object result = methodInvocation.proceed();
- if (result instanceof String)
- {
- result = ((String) result) + suffix;
- }
- return result;
+ Object result = methodInvocation.proceed();
+ if (result instanceof String)
+ {
+ result = ((String) result) + suffix;
+ }
+ return result;
}
}
Modified: commons/proper/proxy/trunk/core/src/test/resources/log4j.properties
URL: http://svn.apache.org/viewvc/commons/proper/proxy/trunk/core/src/test/resources/log4j.properties?rev=1582033&r1=1582032&r2=1582033&view=diff
==============================================================================
--- commons/proper/proxy/trunk/core/src/test/resources/log4j.properties (original)
+++ commons/proper/proxy/trunk/core/src/test/resources/log4j.properties Wed Mar 26 20:20:01 2014
@@ -1,4 +1,3 @@
-#
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
Modified: commons/proper/proxy/trunk/javassist/pom.xml
URL: http://svn.apache.org/viewvc/commons/proper/proxy/trunk/javassist/pom.xml?rev=1582033&r1=1582032&r2=1582033&view=diff
==============================================================================
--- commons/proper/proxy/trunk/javassist/pom.xml (original)
+++ commons/proper/proxy/trunk/javassist/pom.xml Wed Mar 26 20:20:01 2014
@@ -53,4 +53,34 @@
<scope>test</scope>
</dependency>
</dependencies>
+
+ <reporting>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-pmd-plugin</artifactId>
+ <configuration>
+ <!--rulesets>
+ <ruleset>/org/apache/commons/proxy2/pmd.xml</ruleset>
+ </rulesets-->
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-checkstyle-plugin</artifactId>
+ <version>${checkstyle.version}</version>
+ <configuration>
+ <configLocation>org/apache/commons/proxy2/checkstyle.xml</configLocation>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>findbugs-maven-plugin</artifactId>
+ <configuration>
+ <xmlOutput>true</xmlOutput>
+ <excludeFilterFile>/org/apache/commons/proxy2/findbugs-exclude-filter.xml</excludeFilterFile>
+ </configuration>
+ </plugin>
+ </plugins>
+ </reporting>
</project>
Modified: commons/proper/proxy/trunk/javassist/src/main/java/org/apache/commons/proxy2/javassist/JavassistInvocation.java
URL: http://svn.apache.org/viewvc/commons/proper/proxy/trunk/javassist/src/main/java/org/apache/commons/proxy2/javassist/JavassistInvocation.java?rev=1582033&r1=1582032&r2=1582033&view=diff
==============================================================================
--- commons/proper/proxy/trunk/javassist/src/main/java/org/apache/commons/proxy2/javassist/JavassistInvocation.java (original)
+++ commons/proper/proxy/trunk/javassist/src/main/java/org/apache/commons/proxy2/javassist/JavassistInvocation.java Wed Mar 26 20:20:01 2014
@@ -17,35 +17,38 @@
package org.apache.commons.proxy2.javassist;
+import java.lang.ref.WeakReference;
+import java.lang.reflect.Method;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.WeakHashMap;
+
import javassist.CannotCompileException;
import javassist.CtClass;
import javassist.CtConstructor;
import javassist.CtMethod;
+
import org.apache.commons.lang3.ArrayUtils;
+import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.proxy2.Invocation;
import org.apache.commons.proxy2.ProxyUtils;
-import java.lang.ref.WeakReference;
-import java.lang.reflect.Method;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.WeakHashMap;
-
/**
- * A <a href="http://www.jboss.org/products/javassist">Javassist</a>-based {@link Invocation} implementation. This
- * class actually serves as the superclass for all <a href="http://www.jboss.org/products/javassist">Javassist</a>-based
- * method invocations. Subclasses are dynamically created to deal with specific interface methods (they're hard-wired).
- *
+ * A <a href="http://www.jboss.org/products/javassist">Javassist</a>-based {@link Invocation} implementation. This class
+ * actually serves as the superclass for all <a href="http://www.jboss.org/products/javassist">Javassist</a>-based
+ * method invocations. Subclasses are dynamically created to deal with specific interface methods (they're hard-wired).
+ *
* @author James Carman
* @since 1.0
*/
public abstract class JavassistInvocation implements Invocation
{
-//**********************************************************************************************************************
-// Fields
-//**********************************************************************************************************************
+ //******************************************************************************************************************
+ // Fields
+ //******************************************************************************************************************
- private static WeakHashMap<ClassLoader, Map<String, WeakReference<Class<?>>>> loaderToClassCache = new WeakHashMap<ClassLoader, Map<String,WeakReference<Class<?>>>>();
+ private static WeakHashMap<ClassLoader, Map<String, WeakReference<Class<?>>>> loaderToClassCache
+ = new WeakHashMap<ClassLoader, Map<String, WeakReference<Class<?>>>>();
/** The proxy object */
private final Object proxy;
@@ -59,44 +62,40 @@ public abstract class JavassistInvocatio
/** The method arguments */
private final Object[] arguments;
-//**********************************************************************************************************************
-// Static Methods
-//**********************************************************************************************************************
+ //******************************************************************************************************************
+ // Static Methods
+ //******************************************************************************************************************
- private static String createCastExpression( Class<?> type, String objectToCast )
+ private static String createCastExpression(Class<?> type, String objectToCast)
{
- if( !type.isPrimitive() )
+ if (!type.isPrimitive())
{
return "( " + ProxyUtils.getJavaClassName(type) + " )" + objectToCast;
}
else
{
- return "( ( " + ProxyUtils.getWrapperClass(type).getName() + " )" + objectToCast + " )." +
- type.getName() + "Value()";
+ return "( ( " + ProxyUtils.getWrapperClass(type).getName() + " )" + objectToCast + " )." + type.getName()
+ + "Value()";
}
}
- private static Class<?> createInvocationClass( ClassLoader classLoader, Method interfaceMethod )
+ private static Class<?> createInvocationClass(ClassLoader classLoader, Method interfaceMethod)
throws CannotCompileException
{
- Class<?> invocationClass;
- final CtClass ctClass = JavassistUtils.createClass(
- getSimpleName(interfaceMethod.getDeclaringClass()) + "_" + interfaceMethod.getName() +
- "_invocation",
- JavassistInvocation.class);
- final CtConstructor constructor = new CtConstructor(
- JavassistUtils.resolve(new Class[] { Object.class, Object.class, Method.class, Object[].class }),
- ctClass);
+ final CtClass ctClass = JavassistUtils.createClass(getSimpleName(interfaceMethod.getDeclaringClass()) + "_"
+ + interfaceMethod.getName() + "_invocation", JavassistInvocation.class);
+ final CtConstructor constructor = new CtConstructor(JavassistUtils.resolve(new Class[] { Object.class,
+ Object.class, Method.class, Object[].class }), ctClass);
constructor.setBody("{\n\tsuper($$);\n}");
ctClass.addConstructor(constructor);
final CtMethod proceedMethod = new CtMethod(JavassistUtils.resolve(Object.class), "proceed",
JavassistUtils.resolve(new Class[0]), ctClass);
final Class<?>[] argumentTypes = interfaceMethod.getParameterTypes();
final StringBuilder proceedBody = new StringBuilder("{\n");
- if( !Void.TYPE.equals(interfaceMethod.getReturnType()) )
+ if (!Void.TYPE.equals(interfaceMethod.getReturnType()))
{
proceedBody.append("\treturn ");
- if( interfaceMethod.getReturnType().isPrimitive() )
+ if (interfaceMethod.getReturnType().isPrimitive())
{
proceedBody.append("new ");
proceedBody.append(ProxyUtils.getWrapperClass(interfaceMethod.getReturnType()).getName());
@@ -112,16 +111,16 @@ public abstract class JavassistInvocatio
proceedBody.append(" )getTarget() ).");
proceedBody.append(interfaceMethod.getName());
proceedBody.append("(");
- for( int i = 0; i < argumentTypes.length; ++i )
+ for (int i = 0; i < argumentTypes.length; ++i)
{
final Class<?> argumentType = argumentTypes[i];
proceedBody.append(createCastExpression(argumentType, "getArguments()[" + i + "]"));
- if( i != argumentTypes.length - 1 )
+ if (i != argumentTypes.length - 1)
{
proceedBody.append(", ");
}
}
- if( !Void.TYPE.equals(interfaceMethod.getReturnType()) && interfaceMethod.getReturnType().isPrimitive() )
+ if (!Void.TYPE.equals(interfaceMethod.getReturnType()) && interfaceMethod.getReturnType().isPrimitive())
{
proceedBody.append(") );\n");
}
@@ -129,7 +128,7 @@ public abstract class JavassistInvocatio
{
proceedBody.append(");\n");
}
- if( Void.TYPE.equals(interfaceMethod.getReturnType()) )
+ if (Void.TYPE.equals(interfaceMethod.getReturnType()))
{
proceedBody.append("\treturn null;\n");
}
@@ -137,14 +136,16 @@ public abstract class JavassistInvocatio
final String body = proceedBody.toString();
proceedMethod.setBody(body);
ctClass.addMethod(proceedMethod);
- invocationClass = ctClass.toClass(classLoader);
+
+ @SuppressWarnings("deprecation")
+ final Class<?> invocationClass = ctClass.toClass(classLoader);
return invocationClass;
}
- private static Map<String, WeakReference<Class<?>>> getClassCache( ClassLoader classLoader )
+ private static Map<String, WeakReference<Class<?>>> getClassCache(ClassLoader classLoader)
{
Map<String, WeakReference<Class<?>>> cache = loaderToClassCache.get(classLoader);
- if( cache == null )
+ if (cache == null)
{
cache = new HashMap<String, WeakReference<Class<?>>>();
loaderToClassCache.put(classLoader, cache);
@@ -154,31 +155,33 @@ public abstract class JavassistInvocatio
/**
* Returns a method invocation class specifically coded to invoke the supplied interface method.
- *
- * @param classLoader the classloader to use
- * @param interfaceMethod the interface method
+ *
+ * @param classLoader
+ * the classloader to use
+ * @param interfaceMethod
+ * the interface method
* @return a method invocation class specifically coded to invoke the supplied interface method
- * @throws CannotCompileException if a compilation error occurs
+ * @throws CannotCompileException
+ * if a compilation error occurs
*/
- static synchronized Class<?> getMethodInvocationClass( ClassLoader classLoader,
- Method interfaceMethod )
+ static synchronized Class<?> getMethodInvocationClass(ClassLoader classLoader, Method interfaceMethod)
throws CannotCompileException
{
final Map<String, WeakReference<Class<?>>> classCache = getClassCache(classLoader);
final String key = toClassCacheKey(interfaceMethod);
final WeakReference<Class<?>> invocationClassRef = classCache.get(key);
Class<?> invocationClass;
- if( invocationClassRef == null )
+ if (invocationClassRef == null)
{
invocationClass = createInvocationClass(classLoader, interfaceMethod);
classCache.put(key, new WeakReference<Class<?>>(invocationClass));
}
else
{
- synchronized( invocationClassRef )
+ synchronized (invocationClassRef)
{
invocationClass = invocationClassRef.get();
- if( invocationClass == null )
+ if (invocationClass == null)
{
invocationClass = createInvocationClass(classLoader, interfaceMethod);
classCache.put(key, new WeakReference<Class<?>>(invocationClass));
@@ -188,33 +191,33 @@ public abstract class JavassistInvocatio
return invocationClass;
}
- private static String getSimpleName( Class<?> c )
+ private static String getSimpleName(Class<?> c)
{
final String name = c.getName();
final int ndx = name.lastIndexOf('.');
return ndx == -1 ? name : name.substring(ndx + 1);
}
- private static String toClassCacheKey( Method method )
+ private static String toClassCacheKey(Method method)
{
return String.valueOf(method);
}
-//**********************************************************************************************************************
-// Constructors
-//**********************************************************************************************************************
+ //******************************************************************************************************************
+ // Constructors
+ //******************************************************************************************************************
- protected JavassistInvocation( Object proxy, Object target, Method method, Object[] arguments )
+ protected JavassistInvocation(Object proxy, Object target, Method method, Object[] arguments)
{
this.proxy = proxy;
this.target = target;
this.method = method;
- this.arguments = ArrayUtils.clone(arguments);
+ this.arguments = ObjectUtils.defaultIfNull(ArrayUtils.clone(arguments), ProxyUtils.EMPTY_ARGUMENTS);
}
-//**********************************************************************************************************************
-// Invocation Implementation
-//**********************************************************************************************************************
+ //******************************************************************************************************************
+ // Invocation Implementation
+ //******************************************************************************************************************
protected final Object getTarget()
{
return target;
Modified: commons/proper/proxy/trunk/javassist/src/main/java/org/apache/commons/proxy2/javassist/JavassistProxyFactory.java
URL: http://svn.apache.org/viewvc/commons/proper/proxy/trunk/javassist/src/main/java/org/apache/commons/proxy2/javassist/JavassistProxyFactory.java?rev=1582033&r1=1582032&r2=1582033&view=diff
==============================================================================
--- commons/proper/proxy/trunk/javassist/src/main/java/org/apache/commons/proxy2/javassist/JavassistProxyFactory.java (original)
+++ commons/proper/proxy/trunk/javassist/src/main/java/org/apache/commons/proxy2/javassist/JavassistProxyFactory.java Wed Mar 26 20:20:01 2014
@@ -17,10 +17,13 @@
package org.apache.commons.proxy2.javassist;
+import java.lang.reflect.Method;
+
import javassist.CannotCompileException;
import javassist.CtClass;
import javassist.CtConstructor;
import javassist.CtMethod;
+
import org.apache.commons.proxy2.Interceptor;
import org.apache.commons.proxy2.Invoker;
import org.apache.commons.proxy2.ObjectProvider;
@@ -30,13 +33,11 @@ import org.apache.commons.proxy2.impl.Ab
import org.apache.commons.proxy2.impl.AbstractSubclassingProxyFactory;
import org.apache.commons.proxy2.impl.ProxyClassCache;
-import java.lang.reflect.Method;
-
public class JavassistProxyFactory extends AbstractSubclassingProxyFactory
{
- //**********************************************************************************************************************
-// Fields
-//**********************************************************************************************************************
+ //******************************************************************************************************************
+ // Fields
+ //******************************************************************************************************************
private static final String GET_METHOD_METHOD_NAME = "_javassistGetMethod";
@@ -44,39 +45,38 @@ public class JavassistProxyFactory exten
new DelegatingProxyClassGenerator());
private static final ProxyClassCache INTERCEPTOR_PROXY_CACHE = new ProxyClassCache(
new InterceptorProxyClassGenerator());
- private static final ProxyClassCache INVOKER_PROXY_CACHE = new ProxyClassCache(
- new InvokerProxyClassGenerator());
+ private static final ProxyClassCache INVOKER_PROXY_CACHE = new ProxyClassCache(new InvokerProxyClassGenerator());
-//**********************************************************************************************************************
-// Static Methods
-//**********************************************************************************************************************
+ //******************************************************************************************************************
+ // Static Methods
+ //******************************************************************************************************************
private static void addGetMethodMethod(CtClass proxyClass) throws CannotCompileException
{
final CtMethod method = new CtMethod(JavassistUtils.resolve(Method.class), GET_METHOD_METHOD_NAME,
- JavassistUtils.resolve(new Class[]{String.class, String.class, Class[].class}), proxyClass);
- final String body = "try { return Class.forName($1).getMethod($2, $3); } catch( Exception e ) " +
- "{ throw new RuntimeException(\"Unable to look up method.\", e); }";
+ JavassistUtils.resolve(new Class[] { String.class, String.class, Class[].class }), proxyClass);
+ final String body = "try { return Class.forName($1).getMethod($2, $3); } catch( Exception e ) "
+ + "{ throw new RuntimeException(\"Unable to look up method.\", e); }";
method.setBody(body);
proxyClass.addMethod(method);
}
- //**********************************************************************************************************************
+ //******************************************************************************************************************
// ProxyFactory Implementation
- //**********************************************************************************************************************
+ //******************************************************************************************************************
/**
* {@inheritDoc}
*/
@SuppressWarnings("unchecked")
public <T> T createDelegatorProxy(ClassLoader classLoader, ObjectProvider<?> targetProvider,
- Class<?>... proxyClasses)
+ Class<?>... proxyClasses)
{
try
{
- final Class<? extends T> clazz = (Class<? extends T>) DELEGATING_PROXY_CACHE.getProxyClass(classLoader, proxyClasses);
- return clazz.getConstructor(ObjectProvider.class)
- .newInstance(targetProvider);
+ final Class<? extends T> clazz = (Class<? extends T>) DELEGATING_PROXY_CACHE.getProxyClass(classLoader,
+ proxyClasses);
+ return clazz.getConstructor(ObjectProvider.class).newInstance(targetProvider);
}
catch (Exception e)
{
@@ -89,13 +89,13 @@ public class JavassistProxyFactory exten
*/
@SuppressWarnings("unchecked")
public <T> T createInterceptorProxy(ClassLoader classLoader, Object target, Interceptor interceptor,
- Class<?>... proxyClasses)
+ Class<?>... proxyClasses)
{
try
{
- final Class<? extends T> clazz = (Class<? extends T>) INTERCEPTOR_PROXY_CACHE.getProxyClass(classLoader, proxyClasses);
- return clazz.getConstructor(Object.class, Interceptor.class)
- .newInstance(target, interceptor);
+ final Class<? extends T> clazz = (Class<? extends T>) INTERCEPTOR_PROXY_CACHE.getProxyClass(classLoader,
+ proxyClasses);
+ return clazz.getConstructor(Object.class, Interceptor.class).newInstance(target, interceptor);
}
catch (Exception e)
{
@@ -107,14 +107,13 @@ public class JavassistProxyFactory exten
* {@inheritDoc}
*/
@SuppressWarnings("unchecked")
- public <T> T createInvokerProxy(ClassLoader classLoader, Invoker invoker,
- Class<?>... proxyClasses)
+ public <T> T createInvokerProxy(ClassLoader classLoader, Invoker invoker, Class<?>... proxyClasses)
{
try
{
- final Class<? extends T> clazz = (Class<? extends T>) INVOKER_PROXY_CACHE.getProxyClass(classLoader, proxyClasses);
- return clazz.getConstructor(Invoker.class)
- .newInstance(invoker);
+ final Class<? extends T> clazz = (Class<? extends T>) INVOKER_PROXY_CACHE.getProxyClass(classLoader,
+ proxyClasses);
+ return clazz.getConstructor(Invoker.class).newInstance(invoker);
}
catch (Exception e)
{
@@ -122,9 +121,9 @@ public class JavassistProxyFactory exten
}
}
-//**********************************************************************************************************************
-// Inner Classes
-//**********************************************************************************************************************
+ //******************************************************************************************************************
+ // Inner Classes
+ //******************************************************************************************************************
private static class DelegatingProxyClassGenerator extends AbstractProxyClassGenerator
{
@@ -135,8 +134,7 @@ public class JavassistProxyFactory exten
final CtClass proxyClass = JavassistUtils.createClass(getSuperclass(proxyClasses));
JavassistUtils.addField(ObjectProvider.class, "provider", proxyClass);
final CtConstructor proxyConstructor = new CtConstructor(
- JavassistUtils.resolve(new Class[]{ObjectProvider.class}),
- proxyClass);
+ JavassistUtils.resolve(new Class[] { ObjectProvider.class }), proxyClass);
proxyConstructor.setBody("{ this.provider = $1; }");
proxyClass.addConstructor(proxyConstructor);
JavassistUtils.addInterfaces(proxyClass, toInterfaces(proxyClasses));
@@ -149,17 +147,14 @@ public class JavassistProxyFactory exten
{
final Method method = methods[i];
final CtMethod ctMethod = new CtMethod(JavassistUtils.resolve(method.getReturnType()),
- method.getName(),
- JavassistUtils.resolve(method.getParameterTypes()),
- proxyClass);
- final String body = "{ return ( $r ) ( ( " + method.getDeclaringClass().getName() +
- " )provider.getObject() )." +
- method.getName() + "($$); }";
+ method.getName(), JavassistUtils.resolve(method.getParameterTypes()), proxyClass);
+ final String body = "{ return ( $r ) ( ( " + method.getDeclaringClass().getName()
+ + " )provider.getObject() )." + method.getName() + "($$); }";
ctMethod.setBody(body);
proxyClass.addMethod(ctMethod);
}
}
- return proxyClass.toClass(classLoader);
+ return proxyClass.toClass(classLoader, null);
}
catch (CannotCompileException e)
{
@@ -182,34 +177,30 @@ public class JavassistProxyFactory exten
addGetMethodMethod(proxyClass);
addHashCodeMethod(proxyClass);
addEqualsMethod(proxyClass);
- final CtConstructor proxyConstructor = new CtConstructor(
- JavassistUtils.resolve(
- new Class[]{Object.class, Interceptor.class}),
- proxyClass);
- proxyConstructor
- .setBody(
- "{\n\tthis.target = $1;\n\tthis.interceptor = $2; }");
+ final CtConstructor proxyConstructor = new CtConstructor(JavassistUtils.resolve(new Class[] {
+ Object.class, Interceptor.class }), proxyClass);
+ proxyConstructor.setBody("{\n\tthis.target = $1;\n\tthis.interceptor = $2; }");
proxyClass.addConstructor(proxyConstructor);
for (int i = 0; i < methods.length; ++i)
{
if (!ProxyUtils.isEqualsMethod(methods[i]) && !ProxyUtils.isHashCode(methods[i]))
{
final CtMethod method = new CtMethod(JavassistUtils.resolve(methods[i].getReturnType()),
- methods[i].getName(),
- JavassistUtils.resolve(methods[i].getParameterTypes()),
+ methods[i].getName(), JavassistUtils.resolve(methods[i].getParameterTypes()),
proxyClass);
- final Class<?> invocationClass = JavassistInvocation
- .getMethodInvocationClass(classLoader, methods[i]);
+ final Class<?> invocationClass = JavassistInvocation.getMethodInvocationClass(classLoader,
+ methods[i]);
- final String body = "{\n\t return ( $r ) interceptor.intercept( new " + invocationClass.getName() +
- "( this, target, " + GET_METHOD_METHOD_NAME + "(\"" + methods[i].getDeclaringClass().getName() +
- "\", \"" + methods[i].getName() + "\", $sig), $args ) );\n }";
+ final String body = "{\n\t return ( $r ) interceptor.intercept( new "
+ + invocationClass.getName() + "( this, target, " + GET_METHOD_METHOD_NAME + "(\""
+ + methods[i].getDeclaringClass().getName() + "\", \"" + methods[i].getName()
+ + "\", $sig), $args ) );\n }";
method.setBody(body);
proxyClass.addMethod(method);
}
}
- return proxyClass.toClass(classLoader);
+ return proxyClass.toClass(classLoader, null);
}
catch (CannotCompileException e)
{
@@ -217,24 +208,21 @@ public class JavassistProxyFactory exten
}
}
-
}
- private static void addEqualsMethod(CtClass proxyClass)
- throws CannotCompileException
+ private static void addEqualsMethod(CtClass proxyClass) throws CannotCompileException
{
final CtMethod equalsMethod = new CtMethod(JavassistUtils.resolve(Boolean.TYPE), "equals",
- JavassistUtils.resolve(new Class[]{Object.class}), proxyClass);
+ JavassistUtils.resolve(new Class[] { Object.class }), proxyClass);
final String body = "{\n\treturn this == $1;\n}";
equalsMethod.setBody(body);
proxyClass.addMethod(equalsMethod);
}
- private static void addHashCodeMethod(CtClass proxyClass)
- throws CannotCompileException
+ private static void addHashCodeMethod(CtClass proxyClass) throws CannotCompileException
{
- final CtMethod hashCodeMethod = new CtMethod(JavassistUtils.resolve(Integer.TYPE), "hashCode",
- new CtClass[0], proxyClass);
+ final CtMethod hashCodeMethod = new CtMethod(JavassistUtils.resolve(Integer.TYPE), "hashCode", new CtClass[0],
+ proxyClass);
hashCodeMethod.setBody("{\n\treturn System.identityHashCode(this);\n}");
proxyClass.addMethod(hashCodeMethod);
}
@@ -250,11 +238,8 @@ public class JavassistProxyFactory exten
JavassistUtils.addInterfaces(proxyClass, toInterfaces(proxyClasses));
JavassistUtils.addField(Invoker.class, "invoker", proxyClass);
final CtConstructor proxyConstructor = new CtConstructor(
- JavassistUtils.resolve(
- new Class[]{Invoker.class}),
- proxyClass);
- proxyConstructor
- .setBody("{\n\tthis.invoker = $1; }");
+ JavassistUtils.resolve(new Class[] { Invoker.class }), proxyClass);
+ proxyConstructor.setBody("{\n\tthis.invoker = $1; }");
proxyClass.addConstructor(proxyConstructor);
addGetMethodMethod(proxyClass);
addHashCodeMethod(proxyClass);
@@ -264,17 +249,16 @@ public class JavassistProxyFactory exten
if (!ProxyUtils.isEqualsMethod(methods[i]) && !ProxyUtils.isHashCode(methods[i]))
{
final CtMethod method = new CtMethod(JavassistUtils.resolve(methods[i].getReturnType()),
- methods[i].getName(),
- JavassistUtils.resolve(methods[i].getParameterTypes()),
+ methods[i].getName(), JavassistUtils.resolve(methods[i].getParameterTypes()),
proxyClass);
- final String body = "{\n\t return ( $r ) invoker.invoke( this, " + GET_METHOD_METHOD_NAME + "(\"" +
- methods[i].getDeclaringClass().getName() +
- "\", \"" + methods[i].getName() + "\", $sig), $args );\n }";
+ final String body = "{\n\t return ( $r ) invoker.invoke( this, " + GET_METHOD_METHOD_NAME
+ + "(\"" + methods[i].getDeclaringClass().getName() + "\", \"" + methods[i].getName()
+ + "\", $sig), $args );\n }";
method.setBody(body);
proxyClass.addMethod(method);
}
}
- return proxyClass.toClass(classLoader);
+ return proxyClass.toClass(classLoader, null);
}
catch (CannotCompileException e)
{
Modified: commons/proper/proxy/trunk/javassist/src/main/java/org/apache/commons/proxy2/javassist/JavassistUtils.java
URL: http://svn.apache.org/viewvc/commons/proper/proxy/trunk/javassist/src/main/java/org/apache/commons/proxy2/javassist/JavassistUtils.java?rev=1582033&r1=1582032&r2=1582033&view=diff
==============================================================================
--- commons/proper/proxy/trunk/javassist/src/main/java/org/apache/commons/proxy2/javassist/JavassistUtils.java (original)
+++ commons/proper/proxy/trunk/javassist/src/main/java/org/apache/commons/proxy2/javassist/JavassistUtils.java Wed Mar 26 20:20:01 2014
@@ -17,34 +17,40 @@
package org.apache.commons.proxy2.javassist;
-import javassist.*;
-import org.apache.commons.proxy2.ProxyUtils;
-import org.apache.commons.proxy2.exception.ObjectProviderException;
-
import java.util.HashSet;
import java.util.Set;
import java.util.concurrent.atomic.AtomicInteger;
+import javassist.CannotCompileException;
+import javassist.ClassPool;
+import javassist.CtClass;
+import javassist.CtField;
+import javassist.LoaderClassPath;
+import javassist.NotFoundException;
+
+import org.apache.commons.proxy2.ProxyUtils;
+import org.apache.commons.proxy2.exception.ObjectProviderException;
+
/**
- * Some utility methods for dealing with Javassist. This class is not part of the public API!
- *
+ * Some utility methods for dealing with Javassist. This class is not part of the public API!
+ *
* @author James Carman
* @since 1.0
*/
final class JavassistUtils
{
-//**********************************************************************************************************************
-// Fields
-//**********************************************************************************************************************
+ //******************************************************************************************************************
+ // Fields
+ //******************************************************************************************************************
public static final String DEFAULT_BASE_NAME = "JavassistUtilsGenerated";
private static final AtomicInteger CLASS_NUMBER = new AtomicInteger(0);
private static final ClassPool CLASS_POOL = new ClassPool();
private static final Set<ClassLoader> CLASS_LOADERS = new HashSet<ClassLoader>();
-//**********************************************************************************************************************
-// Static Methods
-//**********************************************************************************************************************
+ //******************************************************************************************************************
+ // Static Methods
+ //******************************************************************************************************************
static
{
@@ -53,13 +59,17 @@ final class JavassistUtils
/**
* Adds a field to a class.
- *
- * @param fieldType the field's type
- * @param fieldName the field name
- * @param enclosingClass the class receiving the new field
- * @throws CannotCompileException if a compilation problem occurs
+ *
+ * @param fieldType
+ * the field's type
+ * @param fieldName
+ * the field name
+ * @param enclosingClass
+ * the class receiving the new field
+ * @throws CannotCompileException
+ * if a compilation problem occurs
*/
- public static void addField( Class<?> fieldType, String fieldName, CtClass enclosingClass )
+ public static void addField(Class<?> fieldType, String fieldName, CtClass enclosingClass)
throws CannotCompileException
{
enclosingClass.addField(new CtField(resolve(fieldType), fieldName, enclosingClass));
@@ -67,13 +77,15 @@ final class JavassistUtils
/**
* Adds interfaces to a {@link CtClass}
- *
- * @param ctClass the {@link CtClass}
- * @param proxyClasses the interfaces
+ *
+ * @param ctClass
+ * the {@link CtClass}
+ * @param proxyClasses
+ * the interfaces
*/
- public static void addInterfaces( CtClass ctClass, Class<?>[] proxyClasses )
+ public static void addInterfaces(CtClass ctClass, Class<?>[] proxyClasses)
{
- for( int i = 0; i < proxyClasses.length; i++ )
+ for (int i = 0; i < proxyClasses.length; i++)
{
Class<?> proxyInterface = proxyClasses[i];
ctClass.addInterface(resolve(proxyInterface));
@@ -82,72 +94,78 @@ final class JavassistUtils
/**
* Creates a new {@link CtClass} derived from the Java {@link Class} using the default base name.
- *
- * @param superclass the superclass
+ *
+ * @param superclass
+ * the superclass
* @return the new derived {@link CtClass}
*/
- public static CtClass createClass( Class<?> superclass )
+ public static CtClass createClass(Class<?> superclass)
{
return createClass(DEFAULT_BASE_NAME, superclass);
}
/**
* Creates a new {@link CtClass} derived from the Java {@link Class} using the supplied base name.
- *
- * @param baseName the base name
- * @param superclass the superclass
+ *
+ * @param baseName
+ * the base name
+ * @param superclass
+ * the superclass
* @return the new derived {@link CtClass}
*/
- public static synchronized CtClass createClass( String baseName, Class<?> superclass )
+ public static synchronized CtClass createClass(String baseName, Class<?> superclass)
{
return CLASS_POOL.makeClass(baseName + "_" + CLASS_NUMBER.incrementAndGet(), resolve(superclass));
}
/**
* Finds the {@link CtClass} corresponding to the Java {@link Class} passed in.
- *
- * @param clazz the Java {@link Class}
+ *
+ * @param clazz
+ * the Java {@link Class}
* @return the {@link CtClass}
*/
- public static CtClass resolve( Class<?> clazz )
+ public static CtClass resolve(Class<?> clazz)
{
- synchronized(CLASS_LOADERS)
+ synchronized (CLASS_LOADERS)
{
try
{
final ClassLoader loader = clazz.getClassLoader();
- if( loader != null && !CLASS_LOADERS.contains(loader) )
+ if (loader != null && !CLASS_LOADERS.contains(loader))
{
CLASS_LOADERS.add(loader);
CLASS_POOL.appendClassPath(new LoaderClassPath(loader));
}
return CLASS_POOL.get(ProxyUtils.getJavaClassName(clazz));
}
- catch( NotFoundException e )
+ catch (NotFoundException e)
{
- throw new ObjectProviderException(
- "Unable to find class " + clazz.getName() + " in default Javassist class pool.", e);
+ throw new ObjectProviderException("Unable to find class " + clazz.getName()
+ + " in default Javassist class pool.", e);
}
}
}
/**
* Resolves an array of Java {@link Class}es to an array of their corresponding {@link CtClass}es.
- *
- * @param classes the Java {@link Class}es
+ *
+ * @param classes
+ * the Java {@link Class}es
* @return the corresponding {@link CtClass}es
*/
- public static CtClass[] resolve( Class<?>[] classes )
+ public static CtClass[] resolve(Class<?>[] classes)
{
final CtClass[] ctClasses = new CtClass[classes.length];
- for( int i = 0; i < ctClasses.length; ++i )
+ for (int i = 0; i < ctClasses.length; ++i)
{
ctClasses[i] = resolve(classes[i]);
}
return ctClasses;
}
- private JavassistUtils() {
+ private JavassistUtils()
+ {
// Hiding constructor in utility class!
}
}
Modified: commons/proper/proxy/trunk/javassist/src/test/java/org/apache/commons/proxy2/javassist/JavassistProxyFactoryTest.java
URL: http://svn.apache.org/viewvc/commons/proper/proxy/trunk/javassist/src/test/java/org/apache/commons/proxy2/javassist/JavassistProxyFactoryTest.java?rev=1582033&r1=1582032&r2=1582033&view=diff
==============================================================================
--- commons/proper/proxy/trunk/javassist/src/test/java/org/apache/commons/proxy2/javassist/JavassistProxyFactoryTest.java (original)
+++ commons/proper/proxy/trunk/javassist/src/test/java/org/apache/commons/proxy2/javassist/JavassistProxyFactoryTest.java Wed Mar 26 20:20:01 2014
@@ -20,7 +20,7 @@ import org.apache.commons.proxy2.Abstrac
public class JavassistProxyFactoryTest extends AbstractSubclassingProxyFactoryTestCase
{
-//**********************************************************************************************************************
-// Constructors
-//**********************************************************************************************************************
+ //**********************************************************************************************************************
+ // Constructors
+ //**********************************************************************************************************************
}
Modified: commons/proper/proxy/trunk/jdk/pom.xml
URL: http://svn.apache.org/viewvc/commons/proper/proxy/trunk/jdk/pom.xml?rev=1582033&r1=1582032&r2=1582033&view=diff
==============================================================================
--- commons/proper/proxy/trunk/jdk/pom.xml (original)
+++ commons/proper/proxy/trunk/jdk/pom.xml Wed Mar 26 20:20:01 2014
@@ -49,4 +49,34 @@
<scope>test</scope>
</dependency>
</dependencies>
+
+ <reporting>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-pmd-plugin</artifactId>
+ <configuration>
+ <!--rulesets>
+ <ruleset>/org/apache/commons/proxy2/pmd.xml</ruleset>
+ </rulesets-->
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-checkstyle-plugin</artifactId>
+ <version>${checkstyle.version}</version>
+ <configuration>
+ <configLocation>org/apache/commons/proxy2/checkstyle.xml</configLocation>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>findbugs-maven-plugin</artifactId>
+ <configuration>
+ <xmlOutput>true</xmlOutput>
+ <excludeFilterFile>/org/apache/commons/proxy2/findbugs-exclude-filter.xml</excludeFilterFile>
+ </configuration>
+ </plugin>
+ </plugins>
+ </reporting>
</project>