Author: epbernard
Date: 2010-06-03 06:50:39 -0400 (Thu, 03 Jun 2010)
New Revision: 19685
Modified:
search/trunk/hibernate-search/src/main/java/org/hibernate/search/util/ReflectionHelper.java
Log:
HSEARCH-535 setAccessible to true for all field / methods even public
This bypass some security checking at runtime and goes faster.
Modified:
search/trunk/hibernate-search/src/main/java/org/hibernate/search/util/ReflectionHelper.java
===================================================================
---
search/trunk/hibernate-search/src/main/java/org/hibernate/search/util/ReflectionHelper.java 2010-06-02
21:52:15 UTC (rev 19684)
+++
search/trunk/hibernate-search/src/main/java/org/hibernate/search/util/ReflectionHelper.java 2010-06-03
10:50:39 UTC (rev 19685)
@@ -53,9 +53,16 @@
}
public static void setAccessible(XMember member) {
- if ( !Modifier.isPublic( member.getModifiers() ) ) {
+ try {
+ //always set accessible to true as it bypass the security model checks
+ // at execution time and is faster.
member.setAccessible( true );
}
+ catch ( SecurityException se ) {
+ if ( !Modifier.isPublic( member.getModifiers() ) ) {
+ throw se;
+ }
+ }
}
public static Object getMemberValue(Object bean, XMember getter) {
Show replies by date