Java Reflection Method Getter Invoke invokeGetter(Object bean, Method getter)

Here you can find the source of invokeGetter(Object bean, Method getter)

Description

Invokes a getter method on a given bean

License

Open Source License

Parameter

Parameter Description
T the result type
bean the object to invoke the getter on
getter the getter method

Exception

Parameter Description
IllegalArgumentException if the argument's type is invalid
IllegalAccessException if the getter is not accessible
InvocationTargetException if the getter throws an exception

Return

the property's value

Declaration

@SuppressWarnings("unchecked")
private static <T> T invokeGetter(Object bean, Method getter)
        throws IllegalArgumentException, IllegalAccessException, InvocationTargetException 

Method Source Code

//package com.java2s;
/*/*from   w  ww.ja v  a 2s  .co m*/
 * Copyright (c) 2012 Data Harmonisation Panel
 * 
 * All rights reserved. This program and the accompanying materials are made
 * available under the terms of the GNU Lesser General Public License as
 * published by the Free Software Foundation, either version 3 of the License,
 * or (at your option) any later version.
 * 
 * You should have received a copy of the GNU Lesser General Public License
 * along with this distribution. If not, see <http://www.gnu.org/licenses/>.
 * 
 * Contributors:
 *     HUMBOLDT EU Integrated Project #030962
 *     Data Harmonisation Panel <http://www.dhpanel.eu>
 */

import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;

public class Main {
    /**
     * Invokes a getter method on a given bean
     * 
     * @param <T> the result type
     * @param bean the object to invoke the getter on
     * @param getter the getter method
     * @return the property's value
     * @throws IllegalArgumentException if the argument's type is invalid
     * @throws IllegalAccessException if the getter is not accessible
     * @throws InvocationTargetException if the getter throws an exception
     */
    @SuppressWarnings("unchecked")
    private static <T> T invokeGetter(Object bean, Method getter)
            throws IllegalArgumentException, IllegalAccessException, InvocationTargetException {
        boolean accessible = getter.isAccessible();
        getter.setAccessible(true);
        T result = null;
        try {
            result = (T) getter.invoke(bean);
        } finally {
            getter.setAccessible(accessible);
        }

        return result;
    }
}

Related

  1. invokeGetMethod(Object obj, String getterName)
  2. invokeGetter(Method getter, Object object)
  3. invokeGetter(Object entity, String propertyName)
  4. invokeGetter(Object getterOwner, Method method)
  5. invokeGetter(Object o, String name, boolean forceAccess)
  6. invokeGetter(Object obj, String methodName)