use of org.apache.ibatis.reflection.factory.DefaultObjectFactory in project mybatis-3 by mybatis.
the class SerializableProxyTest method shouldKeepGenericTypes.
@Test
public void shouldKeepGenericTypes() throws Exception {
for (int i = 0; i < 10000; i++) {
Author pc = new Author();
Author proxy = (Author) proxyFactory.createProxy(pc, new ResultLoaderMap(), new Configuration(), new DefaultObjectFactory(), new ArrayList<Class<?>>(), new ArrayList<Object>());
proxy.getBio();
}
}
use of org.apache.ibatis.reflection.factory.DefaultObjectFactory in project mybatis-3 by mybatis.
the class SerializableProxyTest method shouldGenerateWriteReplace.
@Test
public void shouldGenerateWriteReplace() throws Exception {
try {
author.getClass().getDeclaredMethod("writeReplace");
fail("Author should not have a writeReplace method");
} catch (NoSuchMethodException e) {
// ok
}
Object proxy = proxyFactory.createProxy(author, new ResultLoaderMap(), new Configuration(), new DefaultObjectFactory(), new ArrayList<Class<?>>(), new ArrayList<Object>());
Method m = proxy.getClass().getDeclaredMethod("writeReplace");
}
use of org.apache.ibatis.reflection.factory.DefaultObjectFactory in project mybatis-3 by mybatis.
the class SerializableProxyTest method shouldNotCreateAProxyForAFullyLoadedBean.
@Test
public void shouldNotCreateAProxyForAFullyLoadedBean() throws Exception {
Object proxy = proxyFactory.createProxy(author, new ResultLoaderMap(), new Configuration(), new DefaultObjectFactory(), new ArrayList<Class<?>>(), new ArrayList<Object>());
Author author2 = (Author) deserialize(serialize((Serializable) proxy));
assertEquals(author.getClass(), author2.getClass());
}
use of org.apache.ibatis.reflection.factory.DefaultObjectFactory in project mybatis-3 by mybatis.
the class SerializableProxyTest method shouldNotLetReadUnloadedPropertyAfterSerialization.
@Test(expected = ExecutorException.class)
public void shouldNotLetReadUnloadedPropertyAfterSerialization() throws Exception {
ResultLoaderMap loader = new ResultLoaderMap();
loader.addLoader("id", null, null);
Object proxy = proxyFactory.createProxy(author, loader, new Configuration(), new DefaultObjectFactory(), new ArrayList<Class<?>>(), new ArrayList<Object>());
Author author2 = (Author) deserialize(serialize((Serializable) proxy));
author2.getId();
}
use of org.apache.ibatis.reflection.factory.DefaultObjectFactory in project mybatis-3 by mybatis.
the class CglibProxyTest method shouldSerizalizeADeserlizaliedProxy.
@Test
public void shouldSerizalizeADeserlizaliedProxy() throws Exception {
Object proxy = ((CglibProxyFactory) proxyFactory).createDeserializationProxy(author, new HashMap<String, ResultLoaderMap.LoadPair>(), new DefaultObjectFactory(), new ArrayList<Class<?>>(), new ArrayList<Object>());
Author author2 = (Author) deserialize(serialize((Serializable) proxy));
assertEquals(author, author2);
assertFalse(author.getClass().equals(author2.getClass()));
}
Aggregations