Top Description Inners Fields Constructors Methods
org.easymock.internal

public Class ClassProxyFactory

extends Object
implements IProxyFactory
Class Inheritance
All Implemented Interfaces
org.easymock.internal.IProxyFactory
Imports
org.easymock.bytebuddy.ByteBuddy, .TypeCache, org.easymock.bytebuddy.description.method.MethodDescription, org.easymock.bytebuddy.description.modifier.SyntheticState, .Visibility, org.easymock.bytebuddy.dynamic.DynamicType, org.easymock.bytebuddy.dynamic.loading.ClassInjector, .ClassLoadingStrategy, org.easymock.bytebuddy.implementation.MethodDelegation, org.easymock.bytebuddy.implementation.bind.annotation.AllArguments, .BindingPriority, .FieldValue, .Origin, .RuntimeType, .StubValue, .SuperCall, .This, org.easymock.bytebuddy.matcher.ElementMatcher, .ElementMatchers, org.easymock.ConstructorArgs, java.io.IOException, .Serializable, java.lang.invoke.MethodHandle, .MethodHandles, java.lang.reflect.Constructor, .InvocationHandler, .InvocationTargetException, .Method, java.util.concurrent.Callable, java.util.concurrent.atomic.AtomicInteger

Factory generating a mock for a class.
Author
Henri Tremblay

Nested and Inner Type Summary

Modifier and TypeClass and Description
public static class

Field Summary

Modifier and TypeField and Description
private static final String
private static final ThreadLocal<ClassMockingData>
private static final AtomicInteger
private final TypeCache<Class<?>>

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
private <T> ClassLoader
classLoader(Class<T> toMock)

private ClassLoadingStrategy<ClassLoader>
private String
classPackage(Class<?> toMock)

public <T> T
createProxy(final Class<T>
the class to mock by the factory
toMock
,
InvocationHandler
the handler that will be linked to the created proxy
handler
,
Method[]
the subset of toMock's methods to mock, or null to mock all methods.
mockedMethods
,
ConstructorArgs
the constructor arguments to use, or null to use heuristics to choose a constructor.
args
)

Implements org.easymock.internal.IProxyFactory.createProxy.

private static MethodHandle
private static MethodHandle
public InvocationHandler
getInvocationHandler(Object
a mock instance previously returned by createProxy.
mock
)

Implements org.easymock.internal.IProxyFactory.getInvocationHandler.

Returns the invocation handler for mock;
private static ClassMockingData
public static boolean
private static <T> boolean
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

CALLBACK_FIELDback to summary
private static final String CALLBACK_FIELD
currentDataback to summary
private static final ThreadLocal<ClassMockingData> currentData
idback to summary
private static final AtomicInteger id
typeCacheback to summary
private final TypeCache<Class<?>> typeCache

Constructor Detail

ClassProxyFactoryback to summary
public ClassProxyFactory()

Method Detail

classLoaderback to summary
private <T> ClassLoader classLoader(Class<T> toMock)
classLoadingStrategyback to summary
private ClassLoadingStrategy<ClassLoader> classLoadingStrategy()
classPackageback to summary
private String classPackage(Class<?> toMock)
createProxyback to summary
public <T> T createProxy(final Class<T> toMock, InvocationHandler handler, Method[] mockedMethods, ConstructorArgs args)

Implements org.easymock.internal.IProxyFactory.createProxy.

Parameters
<T>

Doc from org.easymock.internal.IProxyFactory.createProxy. type of the class to mock

toMock:Class<T>

Doc from org.easymock.internal.IProxyFactory.createProxy.

the class to mock by the factory

handler:InvocationHandler

Doc from org.easymock.internal.IProxyFactory.createProxy.

the handler that will be linked to the created proxy

mockedMethods:Method[]

Doc from org.easymock.internal.IProxyFactory.createProxy.

the subset of toMock's methods to mock, or null to mock all methods.

args:ConstructorArgs

Doc from org.easymock.internal.IProxyFactory.createProxy.

the constructor arguments to use, or null to use heuristics to choose a constructor.

Returns:T

Doc from org.easymock.internal.IProxyFactory.createProxy.

the newly created proxy

Annotations
@Override
@SuppressWarnings:unchecked
@IgnoreAnimalSniffer
getCallbackGetterback to summary
private static MethodHandle getCallbackGetter(Object mock)
getCallbackSetterback to summary
private static MethodHandle getCallbackSetter(Object mock)
getInvocationHandlerback to summary
public InvocationHandler getInvocationHandler(Object mock)

Implements org.easymock.internal.IProxyFactory.getInvocationHandler.

Doc from org.easymock.internal.IProxyFactory.getInvocationHandler.

Returns the invocation handler for mock;

Parameters
mock:Object

a mock instance previously returned by createProxy.

Returns:InvocationHandler

the handler handling method calls for the mock

Annotations
@Override
getMockingDataback to summary
private static ClassMockingData getMockingData(Object mock)
Annotations
@IgnoreAnimalSniffer
isCallerMockInvocationHandlerInvokeback to summary
public static boolean isCallerMockInvocationHandlerInvoke(Throwable e)
isJdkClassOrWithoutPackageback to summary
private static <T> boolean isJdkClassOrWithoutPackage(Class<T> toMock)
org.easymock.internal back to summary

public Class ClassProxyFactory.MockMethodInterceptor

extends Object
implements Serializable
Class Inheritance
  • java.lang.Object
  • org.easymock.internal.ClassProxyFactory.MockMethodInterceptor
All Implemented Interfaces
java.io.Serializable

Field Summary

Modifier and TypeField and Description
private static final long

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public static Object
interceptAbstract(Object obj, ClassMockingData mockingData, Object stubValue, Method method, Object[] args)

public static Object
interceptSuperCallable(Object obj, ClassMockingData mockingData, Method method, Object[] args, Callable<?> superCall)

private static ClassMockingData
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

serialVersionUIDback to summary
private static final long serialVersionUID

Constructor Detail

MockMethodInterceptorback to summary
public MockMethodInterceptor()

Method Detail

interceptAbstractback to summary
public static Object interceptAbstract(Object obj, ClassMockingData mockingData, Object stubValue, Method method, Object[] args) throws Throwable
Annotations
@SuppressWarnings:unused
@RuntimeType
interceptSuperCallableback to summary
public static Object interceptSuperCallable(Object obj, ClassMockingData mockingData, Method method, Object[] args, Callable<?> superCall) throws Throwable
Annotations
@SuppressWarnings:unused
@RuntimeType
@BindingPriority:2
mockingDataback to summary
private static ClassMockingData mockingData(ClassMockingData mockingData)