Java Method Call invokeFunction(Object iFunction, String funcName, String param)

Here you can find the source of invokeFunction(Object iFunction, String funcName, String param)

Description

invoke Function

License

GNU General Public License

Declaration

public static Object invokeFunction(Object iFunction, String funcName,
            String param) 

Method Source Code

//package com.java2s;
/**/*from  w  ww  .ja  v  a 2s  .co m*/
 * CROSSFIRE JAPAN INCORPORATED
 * This source code is under GPL License.
 * info@crossfire.jp
 * Official web site
 * http://alinous.org
 * 
 *  Copyright (C) 2007 Tomohiro Iizuka
 *
 *  This program is free software: you can redistribute it and/or modify
 *  it under the terms of the GNU General Public License as published by
 *  the Free Software Foundation, either version 3 of the License, or
 *  (at your option) any later version.
 *
 *  This program is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *  GNU General Public License for more details.
 *  
 *You should have received a copy of the GNU General Public License
 *  along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

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

public class Main {
    public static Object invokeFunction(Object iFunction, String funcName,
            String param) {
        Method m = null;
        try {
            m = iFunction.getClass().getMethod(funcName,
                    new Class[] { String.class });
        } catch (SecurityException e) {
            e.printStackTrace();
            return null;
        } catch (NoSuchMethodException e) {
            e.printStackTrace();
            return null;
        }

        if (m == null) {
            return null;
        }

        Object retObj = null;
        try {
            retObj = m.invoke(iFunction, new Object[] { param });
        } catch (IllegalArgumentException e) {
            e.printStackTrace();
        } catch (IllegalAccessException e) {
            e.printStackTrace();
        } catch (InvocationTargetException e) {
            e.printStackTrace();
        }

        return retObj;
    }

    public static Object invokeFunction(Object iFunction, String funcName,
            Object param, Class<?> clazz) {
        Method m = null;
        try {
            m = iFunction.getClass().getMethod(funcName,
                    new Class[] { clazz });
        } catch (SecurityException e) {
            e.printStackTrace();
            return null;
        } catch (NoSuchMethodException e) {
            e.printStackTrace();
            return null;
        }

        if (m == null) {
            return null;
        }

        Object retObj = null;
        try {
            retObj = m.invoke(iFunction, new Object[] { param });
        } catch (IllegalArgumentException e) {
            e.printStackTrace();
        } catch (IllegalAccessException e) {
            e.printStackTrace();
        } catch (InvocationTargetException e) {
            e.printStackTrace();
        }

        return retObj;
    }
}

Related

  1. invokeDeclaredMethodWithAnnotation(Class annotationClass, Object target)
  2. invokeDefaultMethod(final Method method, final Object[] args, final Object proxy)
  3. invokedMethod(java.lang.Object closure, java.lang.Class targetClass, java.lang.String targetMethod)
  4. invokeExactField(Object object, String fieldName)
  5. invokeExactMethod(Object object, String methodName, Object[] args, Class[] parameterTypes)
  6. invokeFunctions(Object iFunction, String funcName)
  7. invokeGenericMethodOneArg(final Object obj, final String methodName, final Object arg)
  8. invokeGet(Object o, String fieldName)
  9. invokeGetClasspathMethodIfItExists(ClassLoader cl)