HHH-8159 - Apply fixups indicated by analysis tools
This commit is contained in:
parent
6a388b754c
commit
3343e6d6c3
|
@ -1,7 +1,7 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* Copyright (c) 2008-2011, Red Hat Inc. or third-party contributors as
|
||||
* Copyright (c) 2008-2013, Red Hat Inc. or third-party contributors as
|
||||
* indicated by the @author tags or express copyright attribution
|
||||
* statements applied by the authors. All third-party contributions are
|
||||
* distributed under license by Red Hat Inc.
|
||||
|
|
|
@ -29,6 +29,10 @@ import java.io.Serializable;
|
|||
* A JavaBean bulk accessor, which provides methods capable of getting/setting multiple properties
|
||||
* of a JavaBean at once.
|
||||
*
|
||||
* IMPORTANT NOTE!!! Apparently the order of the methods here is important as I think BulkAccessorFactory
|
||||
* makes use of that information in terms of accessing the constructor. Anyway, when I tried to re-arrange them
|
||||
* the BulkAccessor creation failed and tests started to fail.
|
||||
*
|
||||
* @author Muga Nishizawa
|
||||
* @author Shigeru Chiba
|
||||
*/
|
||||
|
@ -38,24 +42,9 @@ public abstract class BulkAccessor implements Serializable {
|
|||
protected Class[] types;
|
||||
|
||||
/**
|
||||
* Creates a new instance of BulkAccessor. The created instance provides methods for setting/getting
|
||||
* specified properties at once.
|
||||
*
|
||||
* @param beanClass the class of the JavaBeans accessed
|
||||
* through the created object.
|
||||
* @param getters the names of setter methods for specified properties.
|
||||
* @param setters the names of getter methods for specified properties.
|
||||
* @param types the types of specified properties.
|
||||
*
|
||||
* @return The created bulk accessor
|
||||
* Protected access constructor so the generated class has access to it.
|
||||
*/
|
||||
public static BulkAccessor create(
|
||||
Class beanClass,
|
||||
String[] getters,
|
||||
String[] setters,
|
||||
Class[] types) {
|
||||
final BulkAccessorFactory factory = new BulkAccessorFactory( beanClass, getters, setters, types );
|
||||
return factory.create();
|
||||
protected BulkAccessor() {
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -114,6 +103,24 @@ public abstract class BulkAccessor implements Serializable {
|
|||
return setters.clone();
|
||||
}
|
||||
|
||||
private BulkAccessor() {
|
||||
/**
|
||||
* Creates a new instance of <code>BulkAccessor</code>.
|
||||
* The created instance provides methods for setting/getting
|
||||
* specified properties at once.
|
||||
*
|
||||
* @param beanClass the class of the JavaBeans accessed
|
||||
* through the created object.
|
||||
* @param getters the names of setter methods for specified properties.
|
||||
* @param setters the names of getter methods for specified properties.
|
||||
* @param types the types of specified properties.
|
||||
*
|
||||
* @return The created BulkAccessor
|
||||
*/
|
||||
public static BulkAccessor create(
|
||||
Class beanClass,
|
||||
String[] getters,
|
||||
String[] setters,
|
||||
Class[] types) {
|
||||
return new BulkAccessorFactory( beanClass, getters, setters, types ).create();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* Copyright (c) 2008-2011, Red Hat Inc. or third-party contributors as
|
||||
* Copyright (c) 2008-2013, Red Hat Inc. or third-party contributors as
|
||||
* indicated by the @author tags or express copyright attribution
|
||||
* statements applied by the authors. All third-party contributions are
|
||||
* distributed under license by Red Hat Inc.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* Copyright (c) 2008-2011, Red Hat Inc. or third-party contributors as
|
||||
* Copyright (c) 2008-2013, Red Hat Inc. or third-party contributors as
|
||||
* indicated by the @author tags or express copyright attribution
|
||||
* statements applied by the authors. All third-party contributions are
|
||||
* distributed under license by Red Hat Inc.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* Copyright (c) 2008-2011, Red Hat Inc. or third-party contributors as
|
||||
* Copyright (c) 2008-2013, Red Hat Inc. or third-party contributors as
|
||||
* indicated by the @author tags or express copyright attribution
|
||||
* statements applied by the authors. All third-party contributions are
|
||||
* distributed under license by Red Hat Inc.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* Copyright (c) 2008-2011, Red Hat Inc. or third-party contributors as
|
||||
* Copyright (c) 2008-2013, Red Hat Inc. or third-party contributors as
|
||||
* indicated by the @author tags or express copyright attribution
|
||||
* statements applied by the authors. All third-party contributions are
|
||||
* distributed under license by Red Hat Inc.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* Copyright (c) 2008-2011, Red Hat Inc. or third-party contributors as
|
||||
* Copyright (c) 2008-2013, Red Hat Inc. or third-party contributors as
|
||||
* indicated by the @author tags or express copyright attribution
|
||||
* statements applied by the authors. All third-party contributions are
|
||||
* distributed under license by Red Hat Inc.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* Copyright (c) 2008-2011, Red Hat Inc. or third-party contributors as
|
||||
* Copyright (c) 2008-2013, Red Hat Inc. or third-party contributors as
|
||||
* indicated by the @author tags or express copyright attribution
|
||||
* statements applied by the authors. All third-party contributions are
|
||||
* distributed under license by Red Hat Inc.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* Copyright (c) 2008-2011, Red Hat Inc. or third-party contributors as
|
||||
* Copyright (c) 2008-2013, Red Hat Inc. or third-party contributors as
|
||||
* indicated by the @author tags or express copyright attribution
|
||||
* statements applied by the authors. All third-party contributions are
|
||||
* distributed under license by Red Hat Inc.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* Copyright (c) 2008-2011, Red Hat Inc. or third-party contributors as
|
||||
* Copyright (c) 2008-2013, Red Hat Inc. or third-party contributors as
|
||||
* indicated by the @author tags or express copyright attribution
|
||||
* statements applied by the authors. All third-party contributions are
|
||||
* distributed under license by Red Hat Inc.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* Copyright (c) 2008-2011, Red Hat Inc. or third-party contributors as
|
||||
* Copyright (c) 2008-2013, Red Hat Inc. or third-party contributors as
|
||||
* indicated by the @author tags or express copyright attribution
|
||||
* statements applied by the authors. All third-party contributions are
|
||||
* distributed under license by Red Hat Inc.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* Copyright (c) 2008-2011, Red Hat Inc. or third-party contributors as
|
||||
* Copyright (c) 2008-2013, Red Hat Inc. or third-party contributors as
|
||||
* indicated by the @author tags or express copyright attribution
|
||||
* statements applied by the authors. All third-party contributions are
|
||||
* distributed under license by Red Hat Inc.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* Copyright (c) 2008-2011, Red Hat Inc. or third-party contributors as
|
||||
* Copyright (c) 2008-2013, Red Hat Inc. or third-party contributors as
|
||||
* indicated by the @author tags or express copyright attribution
|
||||
* statements applied by the authors. All third-party contributions are
|
||||
* distributed under license by Red Hat Inc.
|
||||
|
|
|
@ -25,6 +25,7 @@ package org.hibernate.test.bytecode.javassist;
|
|||
|
||||
import org.junit.Test;
|
||||
|
||||
import org.hibernate.bytecode.internal.javassist.BulkAccessor;
|
||||
import org.hibernate.bytecode.internal.javassist.BytecodeProviderImpl;
|
||||
import org.hibernate.bytecode.spi.ReflectionOptimizer;
|
||||
import org.hibernate.test.bytecode.Bean;
|
||||
|
@ -38,6 +39,16 @@ import static org.junit.Assert.assertNotNull;
|
|||
* @author Steve Ebersole
|
||||
*/
|
||||
public class ReflectionOptimizerTest extends BaseUnitTestCase {
|
||||
@Test
|
||||
public void testBulkAccessorDirectly() {
|
||||
BulkAccessor bulkAccessor = BulkAccessor.create(
|
||||
Bean.class,
|
||||
BeanReflectionHelper.getGetterNames(),
|
||||
BeanReflectionHelper.getSetterNames(),
|
||||
BeanReflectionHelper.getTypes()
|
||||
);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testReflectionOptimization() {
|
||||
BytecodeProviderImpl provider = new BytecodeProviderImpl();
|
||||
|
|
Loading…
Reference in New Issue